Merge branch 'upstream'
This commit is contained in:
commit
ce1e7a2ac7
278 changed files with 3236 additions and 2296 deletions
|
@ -696,6 +696,8 @@ COMPATIBLE_IOCTL(MEMLOCK)
|
|||
COMPATIBLE_IOCTL(MEMUNLOCK)
|
||||
COMPATIBLE_IOCTL(MEMGETREGIONCOUNT)
|
||||
COMPATIBLE_IOCTL(MEMGETREGIONINFO)
|
||||
COMPATIBLE_IOCTL(MEMGETBADBLOCK)
|
||||
COMPATIBLE_IOCTL(MEMSETBADBLOCK)
|
||||
/* NBD */
|
||||
ULONG_IOCTL(NBD_SET_SOCK)
|
||||
ULONG_IOCTL(NBD_SET_BLKSIZE)
|
||||
|
|
|
@ -60,8 +60,6 @@ extern void put_filp(struct file *);
|
|||
extern int get_unused_fd(void);
|
||||
extern void FASTCALL(put_unused_fd(unsigned int fd));
|
||||
struct kmem_cache;
|
||||
extern void filp_ctor(void * objp, struct kmem_cache *cachep, unsigned long cflags);
|
||||
extern void filp_dtor(void * objp, struct kmem_cache *cachep, unsigned long dflags);
|
||||
|
||||
extern struct file ** alloc_fd_array(int);
|
||||
extern void free_fd_array(struct file **, int);
|
||||
|
|
|
@ -35,6 +35,7 @@ struct files_stat_struct {
|
|||
int max_files; /* tunable */
|
||||
};
|
||||
extern struct files_stat_struct files_stat;
|
||||
extern int get_max_files(void);
|
||||
|
||||
struct inodes_stat_t {
|
||||
int nr_inodes;
|
||||
|
@ -1418,9 +1419,6 @@ extern int is_bad_inode(struct inode *);
|
|||
extern struct file_operations read_fifo_fops;
|
||||
extern struct file_operations write_fifo_fops;
|
||||
extern struct file_operations rdwr_fifo_fops;
|
||||
extern struct file_operations read_pipe_fops;
|
||||
extern struct file_operations write_pipe_fops;
|
||||
extern struct file_operations rdwr_pipe_fops;
|
||||
|
||||
extern int fs_may_remount_ro(struct super_block *);
|
||||
|
||||
|
@ -1666,6 +1664,8 @@ extern int vfs_follow_link(struct nameidata *, const char *);
|
|||
extern int page_readlink(struct dentry *, char __user *, int);
|
||||
extern void *page_follow_link_light(struct dentry *, struct nameidata *);
|
||||
extern void page_put_link(struct dentry *, struct nameidata *, void *);
|
||||
extern int __page_symlink(struct inode *inode, const char *symname, int len,
|
||||
gfp_t gfp_mask);
|
||||
extern int page_symlink(struct inode *inode, const char *symname, int len);
|
||||
extern struct inode_operations page_symlink_inode_operations;
|
||||
extern int generic_readlink(struct dentry *, char __user *, int);
|
||||
|
|
|
@ -157,9 +157,9 @@ extern void FASTCALL(free_cold_page(struct page *page));
|
|||
|
||||
void page_alloc_init(void);
|
||||
#ifdef CONFIG_NUMA
|
||||
void drain_remote_pages(void);
|
||||
void drain_node_pages(int node);
|
||||
#else
|
||||
static inline void drain_remote_pages(void) { };
|
||||
static inline void drain_node_pages(int node) { };
|
||||
#endif
|
||||
|
||||
#endif /* __LINUX_GFP_H */
|
||||
|
|
|
@ -116,6 +116,10 @@ extern int hrtimer_try_to_cancel(struct hrtimer *timer);
|
|||
extern ktime_t hrtimer_get_remaining(const struct hrtimer *timer);
|
||||
extern int hrtimer_get_res(const clockid_t which_clock, struct timespec *tp);
|
||||
|
||||
#ifdef CONFIG_NO_IDLE_HZ
|
||||
extern ktime_t hrtimer_get_next_event(void);
|
||||
#endif
|
||||
|
||||
static inline int hrtimer_active(const struct hrtimer *timer)
|
||||
{
|
||||
return timer->state == HRTIMER_PENDING;
|
||||
|
|
|
@ -19,8 +19,10 @@
|
|||
CACHE(32768)
|
||||
CACHE(65536)
|
||||
CACHE(131072)
|
||||
#ifndef CONFIG_MMU
|
||||
#if (NR_CPUS > 512) || (MAX_NUMNODES > 256) || !defined(CONFIG_MMU)
|
||||
CACHE(262144)
|
||||
#endif
|
||||
#ifndef CONFIG_MMU
|
||||
CACHE(524288)
|
||||
CACHE(1048576)
|
||||
#ifdef CONFIG_LARGE_ALLOCS
|
||||
|
|
|
@ -152,7 +152,7 @@ enum {
|
|||
ATA_FLAG_PIO_LBA48 = (1 << 13), /* Host DMA engine is LBA28 only */
|
||||
ATA_FLAG_IRQ_MASK = (1 << 14), /* Mask IRQ in PIO xfers */
|
||||
|
||||
ATA_FLAG_FLUSH_PIO_TASK = (1 << 15), /* Flush PIO task */
|
||||
ATA_FLAG_FLUSH_PORT_TASK = (1 << 15), /* Flush port task */
|
||||
ATA_FLAG_IN_EH = (1 << 16), /* EH in progress */
|
||||
|
||||
ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */
|
||||
|
@ -191,11 +191,19 @@ enum {
|
|||
PORT_DISABLED = 2,
|
||||
|
||||
/* encoding various smaller bitmaps into a single
|
||||
* unsigned long bitmap
|
||||
* unsigned int bitmap
|
||||
*/
|
||||
ATA_SHIFT_UDMA = 0,
|
||||
ATA_SHIFT_MWDMA = 8,
|
||||
ATA_SHIFT_PIO = 11,
|
||||
ATA_BITS_PIO = 5,
|
||||
ATA_BITS_MWDMA = 3,
|
||||
ATA_BITS_UDMA = 8,
|
||||
|
||||
ATA_SHIFT_PIO = 0,
|
||||
ATA_SHIFT_MWDMA = ATA_SHIFT_PIO + ATA_BITS_PIO,
|
||||
ATA_SHIFT_UDMA = ATA_SHIFT_MWDMA + ATA_BITS_MWDMA,
|
||||
|
||||
ATA_MASK_PIO = ((1 << ATA_BITS_PIO) - 1) << ATA_SHIFT_PIO,
|
||||
ATA_MASK_MWDMA = ((1 << ATA_BITS_MWDMA) - 1) << ATA_SHIFT_MWDMA,
|
||||
ATA_MASK_UDMA = ((1 << ATA_BITS_UDMA) - 1) << ATA_SHIFT_UDMA,
|
||||
|
||||
/* size of buffer to pad xfers ending on unaligned boundaries */
|
||||
ATA_DMA_PAD_SZ = 4,
|
||||
|
@ -344,7 +352,7 @@ struct ata_device {
|
|||
unsigned long flags; /* ATA_DFLAG_xxx */
|
||||
unsigned int class; /* ATA_DEV_xxx */
|
||||
unsigned int devno; /* 0 or 1 */
|
||||
u16 id[ATA_ID_WORDS]; /* IDENTIFY xxx DEVICE data */
|
||||
u16 *id; /* IDENTIFY xxx DEVICE data */
|
||||
u8 pio_mode;
|
||||
u8 dma_mode;
|
||||
u8 xfer_mode;
|
||||
|
@ -393,7 +401,8 @@ struct ata_port {
|
|||
struct ata_host_stats stats;
|
||||
struct ata_host_set *host_set;
|
||||
|
||||
struct work_struct pio_task;
|
||||
struct work_struct port_task;
|
||||
|
||||
unsigned int hsm_task_state;
|
||||
unsigned long pio_task_timeout;
|
||||
|
||||
|
@ -488,6 +497,8 @@ extern int ata_std_softreset(struct ata_port *ap, int verbose,
|
|||
extern int sata_std_hardreset(struct ata_port *ap, int verbose,
|
||||
unsigned int *class);
|
||||
extern void ata_std_postreset(struct ata_port *ap, unsigned int *classes);
|
||||
extern int ata_dev_revalidate(struct ata_port *ap, struct ata_device *dev,
|
||||
int post_reset);
|
||||
extern void ata_port_disable(struct ata_port *);
|
||||
extern void ata_std_ports(struct ata_ioports *ioaddr);
|
||||
#ifdef CONFIG_PCI
|
||||
|
@ -516,6 +527,8 @@ extern int ata_ratelimit(void);
|
|||
extern unsigned int ata_busy_sleep(struct ata_port *ap,
|
||||
unsigned long timeout_pat,
|
||||
unsigned long timeout);
|
||||
extern void ata_port_queue_task(struct ata_port *ap, void (*fn)(void *),
|
||||
void *data, unsigned long delay);
|
||||
|
||||
/*
|
||||
* Default driver ops implementations
|
||||
|
@ -545,7 +558,6 @@ extern void ata_id_string(const u16 *id, unsigned char *s,
|
|||
unsigned int ofs, unsigned int len);
|
||||
extern void ata_id_c_string(const u16 *id, unsigned char *s,
|
||||
unsigned int ofs, unsigned int len);
|
||||
extern void ata_dev_config(struct ata_port *ap, unsigned int i);
|
||||
extern void ata_bmdma_setup (struct ata_queued_cmd *qc);
|
||||
extern void ata_bmdma_start (struct ata_queued_cmd *qc);
|
||||
extern void ata_bmdma_stop(struct ata_queued_cmd *qc);
|
||||
|
@ -648,10 +660,14 @@ static inline unsigned int ata_tag_valid(unsigned int tag)
|
|||
return (tag < ATA_MAX_QUEUE) ? 1 : 0;
|
||||
}
|
||||
|
||||
static inline unsigned int ata_class_present(unsigned int class)
|
||||
{
|
||||
return class == ATA_DEV_ATA || class == ATA_DEV_ATAPI;
|
||||
}
|
||||
|
||||
static inline unsigned int ata_dev_present(const struct ata_device *dev)
|
||||
{
|
||||
return ((dev->class == ATA_DEV_ATA) ||
|
||||
(dev->class == ATA_DEV_ATAPI));
|
||||
return ata_class_present(dev->class);
|
||||
}
|
||||
|
||||
static inline u8 ata_chk_status(struct ata_port *ap)
|
||||
|
|
|
@ -6,6 +6,10 @@
|
|||
#include <linux/mmzone.h>
|
||||
#include <linux/notifier.h>
|
||||
|
||||
struct page;
|
||||
struct zone;
|
||||
struct pglist_data;
|
||||
|
||||
#ifdef CONFIG_MEMORY_HOTPLUG
|
||||
/*
|
||||
* pgdat resizing functions
|
||||
|
|
|
@ -1752,6 +1752,8 @@
|
|||
#define PCI_DEVICE_ID_CCD_B00B 0xb00b
|
||||
#define PCI_DEVICE_ID_CCD_B00C 0xb00c
|
||||
#define PCI_DEVICE_ID_CCD_B100 0xb100
|
||||
#define PCI_DEVICE_ID_CCD_B700 0xb700
|
||||
#define PCI_DEVICE_ID_CCD_B701 0xb701
|
||||
|
||||
#define PCI_VENDOR_ID_EXAR 0x13a8
|
||||
#define PCI_DEVICE_ID_EXAR_XR17C152 0x0152
|
||||
|
|
|
@ -39,6 +39,7 @@ static inline void percpu_counter_destroy(struct percpu_counter *fbc)
|
|||
}
|
||||
|
||||
void percpu_counter_mod(struct percpu_counter *fbc, long amount);
|
||||
long percpu_counter_sum(struct percpu_counter *fbc);
|
||||
|
||||
static inline long percpu_counter_read(struct percpu_counter *fbc)
|
||||
{
|
||||
|
@ -92,6 +93,11 @@ static inline long percpu_counter_read_positive(struct percpu_counter *fbc)
|
|||
return fbc->count;
|
||||
}
|
||||
|
||||
static inline long percpu_counter_sum(struct percpu_counter *fbc)
|
||||
{
|
||||
return percpu_counter_read_positive(fbc);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_SMP */
|
||||
|
||||
static inline void percpu_counter_inc(struct percpu_counter *fbc)
|
||||
|
|
|
@ -98,13 +98,17 @@ struct rcu_data {
|
|||
long batch; /* Batch # for current RCU batch */
|
||||
struct rcu_head *nxtlist;
|
||||
struct rcu_head **nxttail;
|
||||
long count; /* # of queued items */
|
||||
long qlen; /* # of queued callbacks */
|
||||
struct rcu_head *curlist;
|
||||
struct rcu_head **curtail;
|
||||
struct rcu_head *donelist;
|
||||
struct rcu_head **donetail;
|
||||
long blimit; /* Upper limit on a processed batch */
|
||||
int cpu;
|
||||
struct rcu_head barrier;
|
||||
#ifdef CONFIG_SMP
|
||||
long last_rs_qlen; /* qlen during the last resched */
|
||||
#endif
|
||||
};
|
||||
|
||||
DECLARE_PER_CPU(struct rcu_data, rcu_data);
|
||||
|
|
|
@ -1052,7 +1052,7 @@ struct reiserfs_dir_entry {
|
|||
int de_entrylen;
|
||||
int de_namelen;
|
||||
char *de_name;
|
||||
char *de_gen_number_bit_string;
|
||||
unsigned long *de_gen_number_bit_string;
|
||||
|
||||
__u32 de_dir_id;
|
||||
__u32 de_objectid;
|
||||
|
|
|
@ -892,7 +892,6 @@ static inline int pid_alive(struct task_struct *p)
|
|||
}
|
||||
|
||||
extern void free_task(struct task_struct *tsk);
|
||||
extern void __put_task_struct(struct task_struct *tsk);
|
||||
#define get_task_struct(tsk) do { atomic_inc(&(tsk)->usage); } while(0)
|
||||
|
||||
extern void __put_task_struct_cb(struct rcu_head *rhp);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue