diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2006-02-09 00:58:59 -0500 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2006-02-09 00:58:59 -0500 |
| commit | cac0e8e8bb2e7a086643bdd00c41d900a79bb4fa (patch) | |
| tree | 73cd85e5529a01fa2338ab6d58b99c36dd666cbe /include/linux | |
| parent | ddef9bb367b19383df627e388cb4c01c86ddba6c (diff) | |
| parent | 0bdd340c092b0936f78a54bdbd3927463ed4fca3 (diff) | |
Merge branch 'master'
Diffstat (limited to 'include/linux')
39 files changed, 146 insertions, 79 deletions
diff --git a/include/linux/bitops.h b/include/linux/bitops.h index 6a2a19f14bb2..208650b1ad3a 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h | |||
| @@ -81,7 +81,7 @@ static inline int generic_fls64(__u64 x) | |||
| 81 | { | 81 | { |
| 82 | __u32 h = x >> 32; | 82 | __u32 h = x >> 32; |
| 83 | if (h) | 83 | if (h) |
| 84 | return fls(x) + 32; | 84 | return fls(h) + 32; |
| 85 | return fls(x); | 85 | return fls(x); |
| 86 | } | 86 | } |
| 87 | 87 | ||
diff --git a/include/linux/configfs.h b/include/linux/configfs.h index acffb8c9073a..a7f015027535 100644 --- a/include/linux/configfs.h +++ b/include/linux/configfs.h | |||
| @@ -126,7 +126,7 @@ extern struct config_item *config_group_find_obj(struct config_group *, const ch | |||
| 126 | 126 | ||
| 127 | 127 | ||
| 128 | struct configfs_attribute { | 128 | struct configfs_attribute { |
| 129 | char *ca_name; | 129 | const char *ca_name; |
| 130 | struct module *ca_owner; | 130 | struct module *ca_owner; |
| 131 | mode_t ca_mode; | 131 | mode_t ca_mode; |
| 132 | }; | 132 | }; |
diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h index 13e9f4a3ab26..20b446f26ecd 100644 --- a/include/linux/cpumask.h +++ b/include/linux/cpumask.h | |||
| @@ -84,7 +84,6 @@ | |||
| 84 | #include <linux/kernel.h> | 84 | #include <linux/kernel.h> |
| 85 | #include <linux/threads.h> | 85 | #include <linux/threads.h> |
| 86 | #include <linux/bitmap.h> | 86 | #include <linux/bitmap.h> |
| 87 | #include <asm/bug.h> | ||
| 88 | 87 | ||
| 89 | typedef struct { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; | 88 | typedef struct { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; |
| 90 | extern cpumask_t _unused_cpumask_arg_; | 89 | extern cpumask_t _unused_cpumask_arg_; |
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index a3ed5e059d47..4361f3789975 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
| @@ -8,7 +8,6 @@ | |||
| 8 | #include <linux/spinlock.h> | 8 | #include <linux/spinlock.h> |
| 9 | #include <linux/cache.h> | 9 | #include <linux/cache.h> |
| 10 | #include <linux/rcupdate.h> | 10 | #include <linux/rcupdate.h> |
| 11 | #include <asm/bug.h> | ||
| 12 | 11 | ||
| 13 | struct nameidata; | 12 | struct nameidata; |
| 14 | struct vfsmount; | 13 | struct vfsmount; |
| @@ -108,7 +107,9 @@ struct dentry { | |||
| 108 | struct dentry_operations *d_op; | 107 | struct dentry_operations *d_op; |
| 109 | struct super_block *d_sb; /* The root of the dentry tree */ | 108 | struct super_block *d_sb; /* The root of the dentry tree */ |
| 110 | void *d_fsdata; /* fs-specific data */ | 109 | void *d_fsdata; /* fs-specific data */ |
| 110 | #ifdef CONFIG_PROFILING | ||
| 111 | struct dcookie_struct *d_cookie; /* cookie, if any */ | 111 | struct dcookie_struct *d_cookie; /* cookie, if any */ |
| 112 | #endif | ||
| 112 | int d_mounted; | 113 | int d_mounted; |
| 113 | unsigned char d_iname[DNAME_INLINE_LEN_MIN]; /* small names */ | 114 | unsigned char d_iname[DNAME_INLINE_LEN_MIN]; /* small names */ |
| 114 | }; | 115 | }; |
diff --git a/include/linux/dvb/video.h b/include/linux/dvb/video.h index b1999bfeaa56..b81e58b2ebf8 100644 --- a/include/linux/dvb/video.h +++ b/include/linux/dvb/video.h | |||
| @@ -135,7 +135,7 @@ typedef struct video_spu { | |||
| 135 | 135 | ||
| 136 | typedef struct video_spu_palette { /* SPU Palette information */ | 136 | typedef struct video_spu_palette { /* SPU Palette information */ |
| 137 | int length; | 137 | int length; |
| 138 | uint8_t *palette; | 138 | uint8_t __user *palette; |
| 139 | } video_spu_palette_t; | 139 | } video_spu_palette_t; |
| 140 | 140 | ||
| 141 | 141 | ||
diff --git a/include/linux/elevator.h b/include/linux/elevator.h index 23fe746a1d51..18cf1f3e1184 100644 --- a/include/linux/elevator.h +++ b/include/linux/elevator.h | |||
| @@ -82,6 +82,7 @@ struct elevator_queue | |||
| 82 | extern void elv_dispatch_sort(request_queue_t *, struct request *); | 82 | extern void elv_dispatch_sort(request_queue_t *, struct request *); |
| 83 | extern void elv_add_request(request_queue_t *, struct request *, int, int); | 83 | extern void elv_add_request(request_queue_t *, struct request *, int, int); |
| 84 | extern void __elv_add_request(request_queue_t *, struct request *, int, int); | 84 | extern void __elv_add_request(request_queue_t *, struct request *, int, int); |
| 85 | extern void elv_insert(request_queue_t *, struct request *, int); | ||
| 85 | extern int elv_merge(request_queue_t *, struct request **, struct bio *); | 86 | extern int elv_merge(request_queue_t *, struct request **, struct bio *); |
| 86 | extern void elv_merge_requests(request_queue_t *, struct request *, | 87 | extern void elv_merge_requests(request_queue_t *, struct request *, |
| 87 | struct request *); | 88 | struct request *); |
diff --git a/include/linux/elfcore.h b/include/linux/elfcore.h index dbd7bb4a33b7..0cf0bea010fe 100644 --- a/include/linux/elfcore.h +++ b/include/linux/elfcore.h | |||
| @@ -5,6 +5,7 @@ | |||
| 5 | #include <linux/signal.h> | 5 | #include <linux/signal.h> |
| 6 | #include <linux/time.h> | 6 | #include <linux/time.h> |
| 7 | #include <linux/user.h> | 7 | #include <linux/user.h> |
| 8 | #include <linux/ptrace.h> | ||
| 8 | 9 | ||
| 9 | struct elf_siginfo | 10 | struct elf_siginfo |
| 10 | { | 11 | { |
diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 7863a59bd598..63f1d63cc1d8 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h | |||
| @@ -100,6 +100,9 @@ extern s32 i2c_smbus_write_block_data(struct i2c_client * client, | |||
| 100 | /* Returns the number of read bytes */ | 100 | /* Returns the number of read bytes */ |
| 101 | extern s32 i2c_smbus_read_i2c_block_data(struct i2c_client * client, | 101 | extern s32 i2c_smbus_read_i2c_block_data(struct i2c_client * client, |
| 102 | u8 command, u8 *values); | 102 | u8 command, u8 *values); |
| 103 | extern s32 i2c_smbus_write_i2c_block_data(struct i2c_client * client, | ||
| 104 | u8 command, u8 length, | ||
| 105 | u8 *values); | ||
| 103 | 106 | ||
| 104 | /* | 107 | /* |
| 105 | * A driver is capable of handling one or more physical devices present on | 108 | * A driver is capable of handling one or more physical devices present on |
diff --git a/include/linux/i2o.h b/include/linux/i2o.h index 9ba806796667..5a9d8c599171 100644 --- a/include/linux/i2o.h +++ b/include/linux/i2o.h | |||
| @@ -1115,9 +1115,11 @@ static inline struct i2o_message *i2o_msg_get(struct i2o_controller *c) | |||
| 1115 | return ERR_PTR(-ENOMEM); | 1115 | return ERR_PTR(-ENOMEM); |
| 1116 | 1116 | ||
| 1117 | mmsg->mfa = readl(c->in_port); | 1117 | mmsg->mfa = readl(c->in_port); |
| 1118 | if (mmsg->mfa == I2O_QUEUE_EMPTY) { | 1118 | if (unlikely(mmsg->mfa >= c->in_queue.len)) { |
| 1119 | mempool_free(mmsg, c->in_msg.mempool); | 1119 | mempool_free(mmsg, c->in_msg.mempool); |
| 1120 | return ERR_PTR(-EBUSY); | 1120 | if(mmsg->mfa == I2O_QUEUE_EMPTY) |
| 1121 | return ERR_PTR(-EBUSY); | ||
| 1122 | return ERR_PTR(-EFAULT); | ||
| 1121 | } | 1123 | } |
| 1122 | 1124 | ||
| 1123 | return &mmsg->msg; | 1125 | return &mmsg->msg; |
diff --git a/include/linux/ide.h b/include/linux/ide.h index 110b3cfac021..a7fc4cc79b23 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
| @@ -582,7 +582,6 @@ typedef struct ide_drive_s { | |||
| 582 | unsigned noprobe : 1; /* from: hdx=noprobe */ | 582 | unsigned noprobe : 1; /* from: hdx=noprobe */ |
| 583 | unsigned removable : 1; /* 1 if need to do check_media_change */ | 583 | unsigned removable : 1; /* 1 if need to do check_media_change */ |
| 584 | unsigned attach : 1; /* needed for removable devices */ | 584 | unsigned attach : 1; /* needed for removable devices */ |
| 585 | unsigned is_flash : 1; /* 1 if probed as flash */ | ||
| 586 | unsigned forced_geom : 1; /* 1 if hdx=c,h,s was given at boot */ | 585 | unsigned forced_geom : 1; /* 1 if hdx=c,h,s was given at boot */ |
| 587 | unsigned no_unmask : 1; /* disallow setting unmask bit */ | 586 | unsigned no_unmask : 1; /* disallow setting unmask bit */ |
| 588 | unsigned no_io_32bit : 1; /* disallow enabling 32bit I/O */ | 587 | unsigned no_io_32bit : 1; /* disallow enabling 32bit I/O */ |
| @@ -1006,7 +1005,6 @@ extern ide_hwif_t ide_hwifs[]; /* master data repository */ | |||
| 1006 | extern int noautodma; | 1005 | extern int noautodma; |
| 1007 | 1006 | ||
| 1008 | extern int ide_end_request (ide_drive_t *drive, int uptodate, int nrsecs); | 1007 | extern int ide_end_request (ide_drive_t *drive, int uptodate, int nrsecs); |
| 1009 | extern int __ide_end_request (ide_drive_t *drive, struct request *rq, int uptodate, int nrsecs); | ||
| 1010 | 1008 | ||
| 1011 | /* | 1009 | /* |
| 1012 | * This is used on exit from the driver to designate the next irq handler | 1010 | * This is used on exit from the driver to designate the next irq handler |
diff --git a/include/linux/ioc3.h b/include/linux/ioc3.h index e7906a72a4f1..da7c09e4ede6 100644 --- a/include/linux/ioc3.h +++ b/include/linux/ioc3.h | |||
| @@ -27,7 +27,7 @@ struct ioc3_driver_data { | |||
| 27 | int id; /* IOC3 sequence number */ | 27 | int id; /* IOC3 sequence number */ |
| 28 | /* PCI mapping */ | 28 | /* PCI mapping */ |
| 29 | unsigned long pma; /* physical address */ | 29 | unsigned long pma; /* physical address */ |
| 30 | struct __iomem ioc3 *vma; /* pointer to registers */ | 30 | struct ioc3 __iomem *vma; /* pointer to registers */ |
| 31 | struct pci_dev *pdev; /* PCI device */ | 31 | struct pci_dev *pdev; /* PCI device */ |
| 32 | /* IRQ stuff */ | 32 | /* IRQ stuff */ |
| 33 | int dual_irq; /* set if separate IRQs are used */ | 33 | int dual_irq; /* set if separate IRQs are used */ |
diff --git a/include/linux/jbd.h b/include/linux/jbd.h index 558cb4c26ec9..0fe4aa891ddc 100644 --- a/include/linux/jbd.h +++ b/include/linux/jbd.h | |||
| @@ -23,6 +23,7 @@ | |||
| 23 | #define jfs_debug jbd_debug | 23 | #define jfs_debug jbd_debug |
| 24 | #else | 24 | #else |
| 25 | 25 | ||
| 26 | #include <linux/types.h> | ||
| 26 | #include <linux/buffer_head.h> | 27 | #include <linux/buffer_head.h> |
| 27 | #include <linux/journal-head.h> | 28 | #include <linux/journal-head.h> |
| 28 | #include <linux/stddef.h> | 29 | #include <linux/stddef.h> |
| @@ -238,7 +239,6 @@ typedef struct journal_superblock_s | |||
| 238 | 239 | ||
| 239 | #include <linux/fs.h> | 240 | #include <linux/fs.h> |
| 240 | #include <linux/sched.h> | 241 | #include <linux/sched.h> |
| 241 | #include <asm/bug.h> | ||
| 242 | 242 | ||
| 243 | #define JBD_ASSERTIONS | 243 | #define JBD_ASSERTIONS |
| 244 | #ifdef JBD_ASSERTIONS | 244 | #ifdef JBD_ASSERTIONS |
| @@ -618,6 +618,7 @@ struct transaction_s | |||
| 618 | * @j_wbuf: array of buffer_heads for journal_commit_transaction | 618 | * @j_wbuf: array of buffer_heads for journal_commit_transaction |
| 619 | * @j_wbufsize: maximum number of buffer_heads allowed in j_wbuf, the | 619 | * @j_wbufsize: maximum number of buffer_heads allowed in j_wbuf, the |
| 620 | * number that will fit in j_blocksize | 620 | * number that will fit in j_blocksize |
| 621 | * @j_last_sync_writer: most recent pid which did a synchronous write | ||
| 621 | * @j_private: An opaque pointer to fs-private information. | 622 | * @j_private: An opaque pointer to fs-private information. |
| 622 | */ | 623 | */ |
| 623 | 624 | ||
| @@ -807,6 +808,8 @@ struct journal_s | |||
| 807 | struct buffer_head **j_wbuf; | 808 | struct buffer_head **j_wbuf; |
| 808 | int j_wbufsize; | 809 | int j_wbufsize; |
| 809 | 810 | ||
| 811 | pid_t j_last_sync_writer; | ||
| 812 | |||
| 810 | /* | 813 | /* |
| 811 | * An opaque pointer to fs-private information. ext3 puts its | 814 | * An opaque pointer to fs-private information. ext3 puts its |
| 812 | * superblock pointer here | 815 | * superblock pointer here |
diff --git a/include/linux/kbd_kern.h b/include/linux/kbd_kern.h index 45f625d7d0b2..3aed37314ab8 100644 --- a/include/linux/kbd_kern.h +++ b/include/linux/kbd_kern.h | |||
| @@ -151,6 +151,11 @@ extern unsigned int keymap_count; | |||
| 151 | 151 | ||
| 152 | static inline void con_schedule_flip(struct tty_struct *t) | 152 | static inline void con_schedule_flip(struct tty_struct *t) |
| 153 | { | 153 | { |
| 154 | unsigned long flags; | ||
| 155 | spin_lock_irqsave(&t->buf.lock, flags); | ||
| 156 | if (t->buf.tail != NULL) | ||
| 157 | t->buf.tail->active = 0; | ||
| 158 | spin_unlock_irqrestore(&t->buf.lock, flags); | ||
| 154 | schedule_work(&t->buf.work); | 159 | schedule_work(&t->buf.work); |
| 155 | } | 160 | } |
| 156 | 161 | ||
diff --git a/include/linux/list.h b/include/linux/list.h index 945daa1f13dd..47208bd99f9e 100644 --- a/include/linux/list.h +++ b/include/linux/list.h | |||
| @@ -34,9 +34,11 @@ struct list_head { | |||
| 34 | #define LIST_HEAD(name) \ | 34 | #define LIST_HEAD(name) \ |
| 35 | struct list_head name = LIST_HEAD_INIT(name) | 35 | struct list_head name = LIST_HEAD_INIT(name) |
| 36 | 36 | ||
| 37 | #define INIT_LIST_HEAD(ptr) do { \ | 37 | static inline void INIT_LIST_HEAD(struct list_head *list) |
| 38 | (ptr)->next = (ptr); (ptr)->prev = (ptr); \ | 38 | { |
| 39 | } while (0) | 39 | list->next = list; |
| 40 | list->prev = list; | ||
| 41 | } | ||
| 40 | 42 | ||
| 41 | /* | 43 | /* |
| 42 | * Insert a new entry between two known consecutive entries. | 44 | * Insert a new entry between two known consecutive entries. |
| @@ -534,7 +536,11 @@ struct hlist_node { | |||
| 534 | #define HLIST_HEAD_INIT { .first = NULL } | 536 | #define HLIST_HEAD_INIT { .first = NULL } |
| 535 | #define HLIST_HEAD(name) struct hlist_head name = { .first = NULL } | 537 | #define HLIST_HEAD(name) struct hlist_head name = { .first = NULL } |
| 536 | #define INIT_HLIST_HEAD(ptr) ((ptr)->first = NULL) | 538 | #define INIT_HLIST_HEAD(ptr) ((ptr)->first = NULL) |
| 537 | #define INIT_HLIST_NODE(ptr) ((ptr)->next = NULL, (ptr)->pprev = NULL) | 539 | static inline void INIT_HLIST_NODE(struct hlist_node *h) |
| 540 | { | ||
| 541 | h->next = NULL; | ||
| 542 | h->pprev = NULL; | ||
| 543 | } | ||
| 538 | 544 | ||
| 539 | static inline int hlist_unhashed(const struct hlist_node *h) | 545 | static inline int hlist_unhashed(const struct hlist_node *h) |
| 540 | { | 546 | { |
diff --git a/include/linux/lockd/lockd.h b/include/linux/lockd/lockd.h index 95c8fea293ba..920766cea79c 100644 --- a/include/linux/lockd/lockd.h +++ b/include/linux/lockd/lockd.h | |||
| @@ -84,6 +84,7 @@ struct nlm_rqst { | |||
| 84 | struct nlm_args a_args; /* arguments */ | 84 | struct nlm_args a_args; /* arguments */ |
| 85 | struct nlm_res a_res; /* result */ | 85 | struct nlm_res a_res; /* result */ |
| 86 | struct nlm_wait * a_block; | 86 | struct nlm_wait * a_block; |
| 87 | unsigned int a_retries; /* Retry count */ | ||
| 87 | char a_owner[NLMCLNT_OHSIZE]; | 88 | char a_owner[NLMCLNT_OHSIZE]; |
| 88 | }; | 89 | }; |
| 89 | 90 | ||
| @@ -148,7 +149,6 @@ struct nlm_rqst * nlmclnt_alloc_call(void); | |||
| 148 | int nlmclnt_prepare_block(struct nlm_rqst *req, struct nlm_host *host, struct file_lock *fl); | 149 | int nlmclnt_prepare_block(struct nlm_rqst *req, struct nlm_host *host, struct file_lock *fl); |
| 149 | void nlmclnt_finish_block(struct nlm_rqst *req); | 150 | void nlmclnt_finish_block(struct nlm_rqst *req); |
| 150 | long nlmclnt_block(struct nlm_rqst *req, long timeout); | 151 | long nlmclnt_block(struct nlm_rqst *req, long timeout); |
| 151 | int nlmclnt_cancel(struct nlm_host *, struct file_lock *); | ||
| 152 | u32 nlmclnt_grant(struct nlm_lock *); | 152 | u32 nlmclnt_grant(struct nlm_lock *); |
| 153 | void nlmclnt_recovery(struct nlm_host *, u32); | 153 | void nlmclnt_recovery(struct nlm_host *, u32); |
| 154 | int nlmclnt_reclaim(struct nlm_host *, struct file_lock *); | 154 | int nlmclnt_reclaim(struct nlm_host *, struct file_lock *); |
diff --git a/include/linux/mm.h b/include/linux/mm.h index 85854b867463..75e9f0724997 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
| @@ -303,7 +303,7 @@ struct page { | |||
| 303 | */ | 303 | */ |
| 304 | #define put_page_testzero(p) \ | 304 | #define put_page_testzero(p) \ |
| 305 | ({ \ | 305 | ({ \ |
| 306 | BUG_ON(page_count(p) == 0); \ | 306 | BUG_ON(atomic_read(&(p)->_count) == -1);\ |
| 307 | atomic_add_negative(-1, &(p)->_count); \ | 307 | atomic_add_negative(-1, &(p)->_count); \ |
| 308 | }) | 308 | }) |
| 309 | 309 | ||
diff --git a/include/linux/mmc/mmc.h b/include/linux/mmc/mmc.h index ccd3e13de1e8..f38872abc126 100644 --- a/include/linux/mmc/mmc.h +++ b/include/linux/mmc/mmc.h | |||
| @@ -21,24 +21,35 @@ struct mmc_command { | |||
| 21 | u32 arg; | 21 | u32 arg; |
| 22 | u32 resp[4]; | 22 | u32 resp[4]; |
| 23 | unsigned int flags; /* expected response type */ | 23 | unsigned int flags; /* expected response type */ |
| 24 | #define MMC_RSP_NONE (0 << 0) | 24 | #define MMC_RSP_PRESENT (1 << 0) |
| 25 | #define MMC_RSP_SHORT (1 << 0) | 25 | #define MMC_RSP_136 (1 << 1) /* 136 bit response */ |
| 26 | #define MMC_RSP_LONG (2 << 0) | 26 | #define MMC_RSP_CRC (1 << 2) /* expect valid crc */ |
| 27 | #define MMC_RSP_MASK (3 << 0) | 27 | #define MMC_RSP_BUSY (1 << 3) /* card may send busy */ |
| 28 | #define MMC_RSP_CRC (1 << 3) /* expect valid crc */ | 28 | #define MMC_RSP_OPCODE (1 << 4) /* response contains opcode */ |
| 29 | #define MMC_RSP_BUSY (1 << 4) /* card may send busy */ | 29 | #define MMC_CMD_MASK (3 << 5) /* command type */ |
| 30 | #define MMC_RSP_OPCODE (1 << 5) /* response contains opcode */ | 30 | #define MMC_CMD_AC (0 << 5) |
| 31 | #define MMC_CMD_ADTC (1 << 5) | ||
| 32 | #define MMC_CMD_BC (2 << 5) | ||
| 33 | #define MMC_CMD_BCR (3 << 5) | ||
| 31 | 34 | ||
| 32 | /* | 35 | /* |
| 33 | * These are the response types, and correspond to valid bit | 36 | * These are the response types, and correspond to valid bit |
| 34 | * patterns of the above flags. One additional valid pattern | 37 | * patterns of the above flags. One additional valid pattern |
| 35 | * is all zeros, which means we don't expect a response. | 38 | * is all zeros, which means we don't expect a response. |
| 36 | */ | 39 | */ |
| 37 | #define MMC_RSP_R1 (MMC_RSP_SHORT|MMC_RSP_CRC|MMC_RSP_OPCODE) | 40 | #define MMC_RSP_NONE (0) |
| 38 | #define MMC_RSP_R1B (MMC_RSP_SHORT|MMC_RSP_CRC|MMC_RSP_OPCODE|MMC_RSP_BUSY) | 41 | #define MMC_RSP_R1 (MMC_RSP_PRESENT|MMC_RSP_CRC|MMC_RSP_OPCODE) |
| 39 | #define MMC_RSP_R2 (MMC_RSP_LONG|MMC_RSP_CRC) | 42 | #define MMC_RSP_R1B (MMC_RSP_PRESENT|MMC_RSP_CRC|MMC_RSP_OPCODE|MMC_RSP_BUSY) |
| 40 | #define MMC_RSP_R3 (MMC_RSP_SHORT) | 43 | #define MMC_RSP_R2 (MMC_RSP_PRESENT|MMC_RSP_136|MMC_RSP_CRC) |
| 41 | #define MMC_RSP_R6 (MMC_RSP_SHORT|MMC_RSP_CRC) | 44 | #define MMC_RSP_R3 (MMC_RSP_PRESENT) |
| 45 | #define MMC_RSP_R6 (MMC_RSP_PRESENT|MMC_RSP_CRC) | ||
| 46 | |||
| 47 | #define mmc_resp_type(cmd) ((cmd)->flags & (MMC_RSP_PRESENT|MMC_RSP_136|MMC_RSP_CRC|MMC_RSP_BUSY|MMC_RSP_OPCODE)) | ||
| 48 | |||
| 49 | /* | ||
| 50 | * These are the command types. | ||
| 51 | */ | ||
| 52 | #define mmc_cmd_type(cmd) ((cmd)->flags & MMC_CMD_TYPE) | ||
| 42 | 53 | ||
| 43 | unsigned int retries; /* max number of retries */ | 54 | unsigned int retries; /* max number of retries */ |
| 44 | unsigned int error; /* command error */ | 55 | unsigned int error; /* command error */ |
diff --git a/include/linux/mmc/protocol.h b/include/linux/mmc/protocol.h index a14dc306545b..81c3f77f652c 100644 --- a/include/linux/mmc/protocol.h +++ b/include/linux/mmc/protocol.h | |||
| @@ -79,7 +79,7 @@ | |||
| 79 | /* SD commands type argument response */ | 79 | /* SD commands type argument response */ |
| 80 | /* class 8 */ | 80 | /* class 8 */ |
| 81 | /* This is basically the same command as for MMC with some quirks. */ | 81 | /* This is basically the same command as for MMC with some quirks. */ |
| 82 | #define SD_SEND_RELATIVE_ADDR 3 /* ac R6 */ | 82 | #define SD_SEND_RELATIVE_ADDR 3 /* bcr R6 */ |
| 83 | 83 | ||
| 84 | /* Application commands */ | 84 | /* Application commands */ |
| 85 | #define SD_APP_SET_BUS_WIDTH 6 /* ac [1:0] bus width R1 */ | 85 | #define SD_APP_SET_BUS_WIDTH 6 /* ac [1:0] bus width R1 */ |
diff --git a/include/linux/mtd/map.h b/include/linux/mtd/map.h index fedfbc8a287f..7dfd6e1fcde7 100644 --- a/include/linux/mtd/map.h +++ b/include/linux/mtd/map.h | |||
| @@ -15,7 +15,6 @@ | |||
| 15 | #include <asm/unaligned.h> | 15 | #include <asm/unaligned.h> |
| 16 | #include <asm/system.h> | 16 | #include <asm/system.h> |
| 17 | #include <asm/io.h> | 17 | #include <asm/io.h> |
| 18 | #include <asm/bug.h> | ||
| 19 | 18 | ||
| 20 | #ifdef CONFIG_MTD_MAP_BANK_WIDTH_1 | 19 | #ifdef CONFIG_MTD_MAP_BANK_WIDTH_1 |
| 21 | #define map_bankwidth(map) 1 | 20 | #define map_bankwidth(map) 1 |
diff --git a/include/linux/namespace.h b/include/linux/namespace.h index 6731977c4c13..3abc8e3b4879 100644 --- a/include/linux/namespace.h +++ b/include/linux/namespace.h | |||
| @@ -15,6 +15,7 @@ struct namespace { | |||
| 15 | 15 | ||
| 16 | extern int copy_namespace(int, struct task_struct *); | 16 | extern int copy_namespace(int, struct task_struct *); |
| 17 | extern void __put_namespace(struct namespace *namespace); | 17 | extern void __put_namespace(struct namespace *namespace); |
| 18 | extern struct namespace *dup_namespace(struct task_struct *, struct fs_struct *); | ||
| 18 | 19 | ||
| 19 | static inline void put_namespace(struct namespace *namespace) | 20 | static inline void put_namespace(struct namespace *namespace) |
| 20 | { | 21 | { |
diff --git a/include/linux/netfilter_ipv4/ipt_connbytes.h b/include/linux/netfilter_ipv4/ipt_connbytes.h index b04dfa3083c9..f63e6ee91113 100644 --- a/include/linux/netfilter_ipv4/ipt_connbytes.h +++ b/include/linux/netfilter_ipv4/ipt_connbytes.h | |||
| @@ -1,10 +1,10 @@ | |||
| 1 | #ifndef _IPT_CONNBYTES_H | 1 | #ifndef _IPT_CONNBYTES_H |
| 2 | #define _IPT_CONNBYTES_H | 2 | #define _IPT_CONNBYTES_H |
| 3 | 3 | ||
| 4 | #include <net/netfilter/xt_connbytes.h> | 4 | #include <linux/netfilter/xt_connbytes.h> |
| 5 | #define ipt_connbytes_what xt_connbytes_what | 5 | #define ipt_connbytes_what xt_connbytes_what |
| 6 | 6 | ||
| 7 | #define IPT_CONNBYTES_PKTS XT_CONNBYTES_PACKETS | 7 | #define IPT_CONNBYTES_PKTS XT_CONNBYTES_PKTS |
| 8 | #define IPT_CONNBYTES_BYTES XT_CONNBYTES_BYTES | 8 | #define IPT_CONNBYTES_BYTES XT_CONNBYTES_BYTES |
| 9 | #define IPT_CONNBYTES_AVGPKT XT_CONNBYTES_AVGPKT | 9 | #define IPT_CONNBYTES_AVGPKT XT_CONNBYTES_AVGPKT |
| 10 | 10 | ||
diff --git a/include/linux/netfilter_ipv4/ipt_policy.h b/include/linux/netfilter_ipv4/ipt_policy.h index 7fd1bec453f1..a3f6eff39d33 100644 --- a/include/linux/netfilter_ipv4/ipt_policy.h +++ b/include/linux/netfilter_ipv4/ipt_policy.h | |||
| @@ -27,16 +27,22 @@ struct ipt_policy_spec | |||
| 27 | reqid:1; | 27 | reqid:1; |
| 28 | }; | 28 | }; |
| 29 | 29 | ||
| 30 | union ipt_policy_addr | ||
| 31 | { | ||
| 32 | struct in_addr a4; | ||
| 33 | struct in6_addr a6; | ||
| 34 | }; | ||
| 35 | |||
| 30 | struct ipt_policy_elem | 36 | struct ipt_policy_elem |
| 31 | { | 37 | { |
| 32 | u_int32_t saddr; | 38 | union ipt_policy_addr saddr; |
| 33 | u_int32_t smask; | 39 | union ipt_policy_addr smask; |
| 34 | u_int32_t daddr; | 40 | union ipt_policy_addr daddr; |
| 35 | u_int32_t dmask; | 41 | union ipt_policy_addr dmask; |
| 36 | u_int32_t spi; | 42 | u_int32_t spi; |
| 37 | u_int32_t reqid; | 43 | u_int32_t reqid; |
| 38 | u_int8_t proto; | 44 | u_int8_t proto; |
| 39 | u_int8_t mode; | 45 | u_int8_t mode; |
| 40 | 46 | ||
| 41 | struct ipt_policy_spec match; | 47 | struct ipt_policy_spec match; |
| 42 | struct ipt_policy_spec invert; | 48 | struct ipt_policy_spec invert; |
diff --git a/include/linux/netfilter_ipv6/ip6t_policy.h b/include/linux/netfilter_ipv6/ip6t_policy.h index 5a93afcd2ff1..671bd818300f 100644 --- a/include/linux/netfilter_ipv6/ip6t_policy.h +++ b/include/linux/netfilter_ipv6/ip6t_policy.h | |||
| @@ -27,16 +27,22 @@ struct ip6t_policy_spec | |||
| 27 | reqid:1; | 27 | reqid:1; |
| 28 | }; | 28 | }; |
| 29 | 29 | ||
| 30 | union ip6t_policy_addr | ||
| 31 | { | ||
| 32 | struct in_addr a4; | ||
| 33 | struct in6_addr a6; | ||
| 34 | }; | ||
| 35 | |||
| 30 | struct ip6t_policy_elem | 36 | struct ip6t_policy_elem |
| 31 | { | 37 | { |
| 32 | struct in6_addr saddr; | 38 | union ip6t_policy_addr saddr; |
| 33 | struct in6_addr smask; | 39 | union ip6t_policy_addr smask; |
| 34 | struct in6_addr daddr; | 40 | union ip6t_policy_addr daddr; |
| 35 | struct in6_addr dmask; | 41 | union ip6t_policy_addr dmask; |
| 36 | u_int32_t spi; | 42 | u_int32_t spi; |
| 37 | u_int32_t reqid; | 43 | u_int32_t reqid; |
| 38 | u_int8_t proto; | 44 | u_int8_t proto; |
| 39 | u_int8_t mode; | 45 | u_int8_t mode; |
| 40 | 46 | ||
| 41 | struct ip6t_policy_spec match; | 47 | struct ip6t_policy_spec match; |
| 42 | struct ip6t_policy_spec invert; | 48 | struct ip6t_policy_spec invert; |
diff --git a/include/linux/nodemask.h b/include/linux/nodemask.h index 4726ef7ba8e8..b959a4525cbd 100644 --- a/include/linux/nodemask.h +++ b/include/linux/nodemask.h | |||
| @@ -84,7 +84,6 @@ | |||
| 84 | #include <linux/threads.h> | 84 | #include <linux/threads.h> |
| 85 | #include <linux/bitmap.h> | 85 | #include <linux/bitmap.h> |
| 86 | #include <linux/numa.h> | 86 | #include <linux/numa.h> |
| 87 | #include <asm/bug.h> | ||
| 88 | 87 | ||
| 89 | typedef struct { DECLARE_BITMAP(bits, MAX_NUMNODES); } nodemask_t; | 88 | typedef struct { DECLARE_BITMAP(bits, MAX_NUMNODES); } nodemask_t; |
| 90 | extern nodemask_t _unused_nodemask_arg_; | 89 | extern nodemask_t _unused_nodemask_arg_; |
diff --git a/include/linux/parport.h b/include/linux/parport.h index f67f838a3a1f..008d736a6c9a 100644 --- a/include/linux/parport.h +++ b/include/linux/parport.h | |||
| @@ -128,6 +128,11 @@ struct amiga_parport_state { | |||
| 128 | unsigned char statusdir;/* ciab.ddrb & 7 */ | 128 | unsigned char statusdir;/* ciab.ddrb & 7 */ |
| 129 | }; | 129 | }; |
| 130 | 130 | ||
| 131 | struct ip32_parport_state { | ||
| 132 | unsigned int dcr; | ||
| 133 | unsigned int ecr; | ||
| 134 | }; | ||
| 135 | |||
| 131 | struct parport_state { | 136 | struct parport_state { |
| 132 | union { | 137 | union { |
| 133 | struct pc_parport_state pc; | 138 | struct pc_parport_state pc; |
| @@ -135,6 +140,7 @@ struct parport_state { | |||
| 135 | struct ax_parport_state ax; | 140 | struct ax_parport_state ax; |
| 136 | struct amiga_parport_state amiga; | 141 | struct amiga_parport_state amiga; |
| 137 | /* Atari has not state. */ | 142 | /* Atari has not state. */ |
| 143 | struct ip32_parport_state ip32; | ||
| 138 | void *misc; | 144 | void *misc; |
| 139 | } u; | 145 | } u; |
| 140 | }; | 146 | }; |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index b0b908f583c5..7a61ccdcbc4b 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -1670,6 +1670,9 @@ | |||
| 1670 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_550 0x2060 | 1670 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_550 0x2060 |
| 1671 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_650 0x2061 | 1671 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_650 0x2061 |
| 1672 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_850 0x2062 | 1672 | #define PCI_DEVICE_ID_SIIG_2S1P_20x_850 0x2062 |
| 1673 | #define PCI_DEVICE_ID_SIIG_8S_20x_550 0x2080 | ||
| 1674 | #define PCI_DEVICE_ID_SIIG_8S_20x_650 0x2081 | ||
| 1675 | #define PCI_DEVICE_ID_SIIG_8S_20x_850 0x2082 | ||
| 1673 | #define PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL 0x2050 | 1676 | #define PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL 0x2050 |
| 1674 | 1677 | ||
| 1675 | #define PCI_VENDOR_ID_RADISYS 0x1331 | 1678 | #define PCI_VENDOR_ID_RADISYS 0x1331 |
| @@ -1829,6 +1832,7 @@ | |||
| 1829 | #define PCI_VENDOR_ID_AFAVLAB 0x14db | 1832 | #define PCI_VENDOR_ID_AFAVLAB 0x14db |
| 1830 | #define PCI_DEVICE_ID_AFAVLAB_P028 0x2180 | 1833 | #define PCI_DEVICE_ID_AFAVLAB_P028 0x2180 |
| 1831 | #define PCI_DEVICE_ID_AFAVLAB_P030 0x2182 | 1834 | #define PCI_DEVICE_ID_AFAVLAB_P030 0x2182 |
| 1835 | #define PCI_SUBDEVICE_ID_AFAVLAB_P061 0x2150 | ||
| 1832 | 1836 | ||
| 1833 | #define PCI_VENDOR_ID_BROADCOM 0x14e4 | 1837 | #define PCI_VENDOR_ID_BROADCOM 0x14e4 |
| 1834 | #define PCI_DEVICE_ID_TIGON3_5752 0x1600 | 1838 | #define PCI_DEVICE_ID_TIGON3_5752 0x1600 |
diff --git a/include/linux/pktcdvd.h b/include/linux/pktcdvd.h index 2c177e4c8f22..8a94c717c266 100644 --- a/include/linux/pktcdvd.h +++ b/include/linux/pktcdvd.h | |||
| @@ -114,7 +114,7 @@ struct pkt_ctrl_command { | |||
| 114 | 114 | ||
| 115 | struct packet_settings | 115 | struct packet_settings |
| 116 | { | 116 | { |
| 117 | __u8 size; /* packet size in (512 byte) sectors */ | 117 | __u32 size; /* packet size in (512 byte) sectors */ |
| 118 | __u8 fp; /* fixed packets */ | 118 | __u8 fp; /* fixed packets */ |
| 119 | __u8 link_loss; /* the rest is specified | 119 | __u8 link_loss; /* the rest is specified |
| 120 | * as per Mt Fuji */ | 120 | * as per Mt Fuji */ |
| @@ -169,8 +169,8 @@ struct packet_iosched | |||
| 169 | #if (PAGE_SIZE % CD_FRAMESIZE) != 0 | 169 | #if (PAGE_SIZE % CD_FRAMESIZE) != 0 |
| 170 | #error "PAGE_SIZE must be a multiple of CD_FRAMESIZE" | 170 | #error "PAGE_SIZE must be a multiple of CD_FRAMESIZE" |
| 171 | #endif | 171 | #endif |
| 172 | #define PACKET_MAX_SIZE 32 | 172 | #define PACKET_MAX_SIZE 128 |
| 173 | #define PAGES_PER_PACKET (PACKET_MAX_SIZE * CD_FRAMESIZE / PAGE_SIZE) | 173 | #define FRAMES_PER_PAGE (PAGE_SIZE / CD_FRAMESIZE) |
| 174 | #define PACKET_MAX_SECTORS (PACKET_MAX_SIZE * CD_FRAMESIZE >> 9) | 174 | #define PACKET_MAX_SECTORS (PACKET_MAX_SIZE * CD_FRAMESIZE >> 9) |
| 175 | 175 | ||
| 176 | enum packet_data_state { | 176 | enum packet_data_state { |
| @@ -219,7 +219,7 @@ struct packet_data | |||
| 219 | atomic_t io_errors; /* Number of read/write errors during IO */ | 219 | atomic_t io_errors; /* Number of read/write errors during IO */ |
| 220 | 220 | ||
| 221 | struct bio *r_bios[PACKET_MAX_SIZE]; /* bios to use during data gathering */ | 221 | struct bio *r_bios[PACKET_MAX_SIZE]; /* bios to use during data gathering */ |
| 222 | struct page *pages[PAGES_PER_PACKET]; | 222 | struct page *pages[PACKET_MAX_SIZE / FRAMES_PER_PAGE]; |
| 223 | 223 | ||
| 224 | int cache_valid; /* If non-zero, the data for the zone defined */ | 224 | int cache_valid; /* If non-zero, the data for the zone defined */ |
| 225 | /* by the sector variable is completely cached */ | 225 | /* by the sector variable is completely cached */ |
diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h index 4f34d3d60f2e..21e5a9124856 100644 --- a/include/linux/quotaops.h +++ b/include/linux/quotaops.h | |||
| @@ -190,7 +190,6 @@ static __inline__ int DQUOT_OFF(struct super_block *sb) | |||
| 190 | */ | 190 | */ |
| 191 | #define sb_dquot_ops (NULL) | 191 | #define sb_dquot_ops (NULL) |
| 192 | #define sb_quotactl_ops (NULL) | 192 | #define sb_quotactl_ops (NULL) |
| 193 | #define sync_dquots_dev(dev,type) (NULL) | ||
| 194 | #define DQUOT_INIT(inode) do { } while(0) | 193 | #define DQUOT_INIT(inode) do { } while(0) |
| 195 | #define DQUOT_DROP(inode) do { } while(0) | 194 | #define DQUOT_DROP(inode) do { } while(0) |
| 196 | #define DQUOT_ALLOC_INODE(inode) (0) | 195 | #define DQUOT_ALLOC_INODE(inode) (0) |
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 981f9aa43353..b87aefa082e2 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h | |||
| @@ -240,11 +240,14 @@ extern int rcu_pending(int cpu); | |||
| 240 | * This means that all preempt_disable code sequences, including NMI and | 240 | * This means that all preempt_disable code sequences, including NMI and |
| 241 | * hardware-interrupt handlers, in progress on entry will have completed | 241 | * hardware-interrupt handlers, in progress on entry will have completed |
| 242 | * before this primitive returns. However, this does not guarantee that | 242 | * before this primitive returns. However, this does not guarantee that |
| 243 | * softirq handlers will have completed, since in some kernels | 243 | * softirq handlers will have completed, since in some kernels, these |
| 244 | * handlers can run in process context, and can block. | ||
| 244 | * | 245 | * |
| 245 | * This primitive provides the guarantees made by the (deprecated) | 246 | * This primitive provides the guarantees made by the (deprecated) |
| 246 | * synchronize_kernel() API. In contrast, synchronize_rcu() only | 247 | * synchronize_kernel() API. In contrast, synchronize_rcu() only |
| 247 | * guarantees that rcu_read_lock() sections will have completed. | 248 | * guarantees that rcu_read_lock() sections will have completed. |
| 249 | * In "classic RCU", these two guarantees happen to be one and | ||
| 250 | * the same, but can differ in realtime RCU implementations. | ||
| 248 | */ | 251 | */ |
| 249 | #define synchronize_sched() synchronize_rcu() | 252 | #define synchronize_sched() synchronize_rcu() |
| 250 | 253 | ||
diff --git a/include/linux/reiserfs_acl.h b/include/linux/reiserfs_acl.h index 0a3605099c44..806ec5b06707 100644 --- a/include/linux/reiserfs_acl.h +++ b/include/linux/reiserfs_acl.h | |||
| @@ -58,9 +58,13 @@ extern struct reiserfs_xattr_handler posix_acl_default_handler; | |||
| 58 | extern struct reiserfs_xattr_handler posix_acl_access_handler; | 58 | extern struct reiserfs_xattr_handler posix_acl_access_handler; |
| 59 | #else | 59 | #else |
| 60 | 60 | ||
| 61 | #define reiserfs_get_acl NULL | ||
| 62 | #define reiserfs_cache_default_acl(inode) 0 | 61 | #define reiserfs_cache_default_acl(inode) 0 |
| 63 | 62 | ||
| 63 | static inline struct posix_acl *reiserfs_get_acl(struct inode *inode, int type) | ||
| 64 | { | ||
| 65 | return NULL; | ||
| 66 | } | ||
| 67 | |||
| 64 | static inline int reiserfs_xattr_posix_acl_init(void) | 68 | static inline int reiserfs_xattr_posix_acl_init(void) |
| 65 | { | 69 | { |
| 66 | return 0; | 70 | return 0; |
diff --git a/include/linux/security.h b/include/linux/security.h index bb1da86747c7..7cbef482e13a 100644 --- a/include/linux/security.h +++ b/include/linux/security.h | |||
| @@ -1499,15 +1499,11 @@ static inline void security_sb_post_pivotroot (struct nameidata *old_nd, | |||
| 1499 | 1499 | ||
| 1500 | static inline int security_inode_alloc (struct inode *inode) | 1500 | static inline int security_inode_alloc (struct inode *inode) |
| 1501 | { | 1501 | { |
| 1502 | if (unlikely (IS_PRIVATE (inode))) | ||
| 1503 | return 0; | ||
| 1504 | return security_ops->inode_alloc_security (inode); | 1502 | return security_ops->inode_alloc_security (inode); |
| 1505 | } | 1503 | } |
| 1506 | 1504 | ||
| 1507 | static inline void security_inode_free (struct inode *inode) | 1505 | static inline void security_inode_free (struct inode *inode) |
| 1508 | { | 1506 | { |
| 1509 | if (unlikely (IS_PRIVATE (inode))) | ||
| 1510 | return; | ||
| 1511 | security_ops->inode_free_security (inode); | 1507 | security_ops->inode_free_security (inode); |
| 1512 | } | 1508 | } |
| 1513 | 1509 | ||
diff --git a/include/linux/smp.h b/include/linux/smp.h index 9dfa3ee769ae..44153fdf73fc 100644 --- a/include/linux/smp.h +++ b/include/linux/smp.h | |||
| @@ -17,7 +17,6 @@ extern void cpu_idle(void); | |||
| 17 | #include <linux/compiler.h> | 17 | #include <linux/compiler.h> |
| 18 | #include <linux/thread_info.h> | 18 | #include <linux/thread_info.h> |
| 19 | #include <asm/smp.h> | 19 | #include <asm/smp.h> |
| 20 | #include <asm/bug.h> | ||
| 21 | 20 | ||
| 22 | /* | 21 | /* |
| 23 | * main cross-CPU interfaces, handles INIT, TLB flush, STOP, etc. | 22 | * main cross-CPU interfaces, handles INIT, TLB flush, STOP, etc. |
diff --git a/include/linux/sunrpc/auth.h b/include/linux/sunrpc/auth.h index b68c11a2d6dd..be4772ed43c0 100644 --- a/include/linux/sunrpc/auth.h +++ b/include/linux/sunrpc/auth.h | |||
| @@ -48,7 +48,7 @@ struct rpc_cred { | |||
| 48 | 48 | ||
| 49 | /* per-flavor data */ | 49 | /* per-flavor data */ |
| 50 | }; | 50 | }; |
| 51 | #define RPCAUTH_CRED_LOCKED 0x0001 | 51 | #define RPCAUTH_CRED_NEW 0x0001 |
| 52 | #define RPCAUTH_CRED_UPTODATE 0x0002 | 52 | #define RPCAUTH_CRED_UPTODATE 0x0002 |
| 53 | 53 | ||
| 54 | #define RPCAUTH_CRED_MAGIC 0x0f4aa4f0 | 54 | #define RPCAUTH_CRED_MAGIC 0x0f4aa4f0 |
| @@ -83,9 +83,10 @@ struct rpc_auth { | |||
| 83 | struct rpc_cred_cache * au_credcache; | 83 | struct rpc_cred_cache * au_credcache; |
| 84 | /* per-flavor data */ | 84 | /* per-flavor data */ |
| 85 | }; | 85 | }; |
| 86 | #define RPC_AUTH_PROC_CREDS 0x0010 /* process creds (including | 86 | |
| 87 | * uid/gid, fs[ug]id, gids) | 87 | /* Flags for rpcauth_lookupcred() */ |
| 88 | */ | 88 | #define RPCAUTH_LOOKUP_NEW 0x01 /* Accept an uninitialised cred */ |
| 89 | #define RPCAUTH_LOOKUP_ROOTCREDS 0x02 /* This really ought to go! */ | ||
| 89 | 90 | ||
| 90 | /* | 91 | /* |
| 91 | * Client authentication ops | 92 | * Client authentication ops |
| @@ -105,6 +106,7 @@ struct rpc_authops { | |||
| 105 | 106 | ||
| 106 | struct rpc_credops { | 107 | struct rpc_credops { |
| 107 | const char * cr_name; /* Name of the auth flavour */ | 108 | const char * cr_name; /* Name of the auth flavour */ |
| 109 | int (*cr_init)(struct rpc_auth *, struct rpc_cred *); | ||
| 108 | void (*crdestroy)(struct rpc_cred *); | 110 | void (*crdestroy)(struct rpc_cred *); |
| 109 | 111 | ||
| 110 | int (*crmatch)(struct auth_cred *, struct rpc_cred *, int); | 112 | int (*crmatch)(struct auth_cred *, struct rpc_cred *, int); |
diff --git a/include/linux/suspend.h b/include/linux/suspend.h index 5dc94e777fab..37c1c76fd547 100644 --- a/include/linux/suspend.h +++ b/include/linux/suspend.h | |||
| @@ -43,16 +43,20 @@ extern void mark_free_pages(struct zone *zone); | |||
| 43 | /* kernel/power/swsusp.c */ | 43 | /* kernel/power/swsusp.c */ |
| 44 | extern int software_suspend(void); | 44 | extern int software_suspend(void); |
| 45 | 45 | ||
| 46 | #if defined(CONFIG_VT) && defined(CONFIG_VT_CONSOLE) | ||
| 46 | extern int pm_prepare_console(void); | 47 | extern int pm_prepare_console(void); |
| 47 | extern void pm_restore_console(void); | 48 | extern void pm_restore_console(void); |
| 48 | 49 | #else | |
| 50 | static inline int pm_prepare_console(void) { return 0; } | ||
| 51 | static inline void pm_restore_console(void) {} | ||
| 52 | #endif /* defined(CONFIG_VT) && defined(CONFIG_VT_CONSOLE) */ | ||
| 49 | #else | 53 | #else |
| 50 | static inline int software_suspend(void) | 54 | static inline int software_suspend(void) |
| 51 | { | 55 | { |
| 52 | printk("Warning: fake suspend called\n"); | 56 | printk("Warning: fake suspend called\n"); |
| 53 | return -EPERM; | 57 | return -EPERM; |
| 54 | } | 58 | } |
| 55 | #endif | 59 | #endif /* CONFIG_PM */ |
| 56 | 60 | ||
| 57 | #ifdef CONFIG_SUSPEND_SMP | 61 | #ifdef CONFIG_SUSPEND_SMP |
| 58 | extern void disable_nonboot_cpus(void); | 62 | extern void disable_nonboot_cpus(void); |
diff --git a/include/linux/tty.h b/include/linux/tty.h index 3787102e4b12..a7bd3b4558d2 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h | |||
| @@ -57,6 +57,7 @@ struct tty_buffer { | |||
| 57 | unsigned char *flag_buf_ptr; | 57 | unsigned char *flag_buf_ptr; |
| 58 | int used; | 58 | int used; |
| 59 | int size; | 59 | int size; |
| 60 | int active; | ||
| 60 | /* Data points here */ | 61 | /* Data points here */ |
| 61 | unsigned long data[0]; | 62 | unsigned long data[0]; |
| 62 | }; | 63 | }; |
| @@ -64,6 +65,7 @@ struct tty_buffer { | |||
| 64 | struct tty_bufhead { | 65 | struct tty_bufhead { |
| 65 | struct work_struct work; | 66 | struct work_struct work; |
| 66 | struct semaphore pty_sem; | 67 | struct semaphore pty_sem; |
| 68 | spinlock_t lock; | ||
| 67 | struct tty_buffer *head; /* Queue head */ | 69 | struct tty_buffer *head; /* Queue head */ |
| 68 | struct tty_buffer *tail; /* Active buffer */ | 70 | struct tty_buffer *tail; /* Active buffer */ |
| 69 | struct tty_buffer *free; /* Free queue head */ | 71 | struct tty_buffer *free; /* Free queue head */ |
diff --git a/include/linux/tty_flip.h b/include/linux/tty_flip.h index be1400e82482..82961eb19888 100644 --- a/include/linux/tty_flip.h +++ b/include/linux/tty_flip.h | |||
| @@ -17,7 +17,7 @@ _INLINE_ int tty_insert_flip_char(struct tty_struct *tty, | |||
| 17 | unsigned char ch, char flag) | 17 | unsigned char ch, char flag) |
| 18 | { | 18 | { |
| 19 | struct tty_buffer *tb = tty->buf.tail; | 19 | struct tty_buffer *tb = tty->buf.tail; |
| 20 | if (tb && tb->used < tb->size) { | 20 | if (tb && tb->active && tb->used < tb->size) { |
| 21 | tb->flag_buf_ptr[tb->used] = flag; | 21 | tb->flag_buf_ptr[tb->used] = flag; |
| 22 | tb->char_buf_ptr[tb->used++] = ch; | 22 | tb->char_buf_ptr[tb->used++] = ch; |
| 23 | return 1; | 23 | return 1; |
| @@ -27,6 +27,11 @@ _INLINE_ int tty_insert_flip_char(struct tty_struct *tty, | |||
| 27 | 27 | ||
| 28 | _INLINE_ void tty_schedule_flip(struct tty_struct *tty) | 28 | _INLINE_ void tty_schedule_flip(struct tty_struct *tty) |
| 29 | { | 29 | { |
| 30 | unsigned long flags; | ||
| 31 | spin_lock_irqsave(&tty->buf.lock, flags); | ||
| 32 | if (tty->buf.tail != NULL) | ||
| 33 | tty->buf.tail->active = 0; | ||
| 34 | spin_unlock_irqrestore(&tty->buf.lock, flags); | ||
| 30 | schedule_delayed_work(&tty->buf.work, 1); | 35 | schedule_delayed_work(&tty->buf.work, 1); |
| 31 | } | 36 | } |
| 32 | 37 | ||
diff --git a/include/linux/ufs_fs.h b/include/linux/ufs_fs.h index 7a6babeca256..b0ffe4356e5a 100644 --- a/include/linux/ufs_fs.h +++ b/include/linux/ufs_fs.h | |||
| @@ -148,11 +148,11 @@ typedef __u16 __bitwise __fs16; | |||
| 148 | #define UFS_USEEFT ((__u16)65535) | 148 | #define UFS_USEEFT ((__u16)65535) |
| 149 | 149 | ||
| 150 | #define UFS_FSOK 0x7c269d38 | 150 | #define UFS_FSOK 0x7c269d38 |
| 151 | #define UFS_FSACTIVE ((char)0x00) | 151 | #define UFS_FSACTIVE ((__s8)0x00) |
| 152 | #define UFS_FSCLEAN ((char)0x01) | 152 | #define UFS_FSCLEAN ((__s8)0x01) |
| 153 | #define UFS_FSSTABLE ((char)0x02) | 153 | #define UFS_FSSTABLE ((__s8)0x02) |
| 154 | #define UFS_FSOSF1 ((char)0x03) /* is this correct for DEC OSF/1? */ | 154 | #define UFS_FSOSF1 ((__s8)0x03) /* is this correct for DEC OSF/1? */ |
| 155 | #define UFS_FSBAD ((char)0xff) | 155 | #define UFS_FSBAD ((__s8)0xff) |
| 156 | 156 | ||
| 157 | /* From here to next blank line, s_flags for ufs_sb_info */ | 157 | /* From here to next blank line, s_flags for ufs_sb_info */ |
| 158 | /* directory entry encoding */ | 158 | /* directory entry encoding */ |
| @@ -502,8 +502,7 @@ struct ufs_super_block { | |||
| 502 | /* | 502 | /* |
| 503 | * Convert cylinder group to base address of its global summary info. | 503 | * Convert cylinder group to base address of its global summary info. |
| 504 | */ | 504 | */ |
| 505 | #define fs_cs(indx) \ | 505 | #define fs_cs(indx) s_csp[(indx)] |
| 506 | s_csp[(indx) >> uspi->s_csshift][(indx) & ~uspi->s_csmask] | ||
| 507 | 506 | ||
| 508 | /* | 507 | /* |
| 509 | * Cylinder group block for a file system. | 508 | * Cylinder group block for a file system. |
| @@ -913,6 +912,7 @@ extern int ufs_sync_inode (struct inode *); | |||
| 913 | extern void ufs_delete_inode (struct inode *); | 912 | extern void ufs_delete_inode (struct inode *); |
| 914 | extern struct buffer_head * ufs_getfrag (struct inode *, unsigned, int, int *); | 913 | extern struct buffer_head * ufs_getfrag (struct inode *, unsigned, int, int *); |
| 915 | extern struct buffer_head * ufs_bread (struct inode *, unsigned, int, int *); | 914 | extern struct buffer_head * ufs_bread (struct inode *, unsigned, int, int *); |
| 915 | extern int ufs_getfrag_block (struct inode *inode, sector_t fragment, struct buffer_head *bh_result, int create); | ||
| 916 | 916 | ||
| 917 | /* namei.c */ | 917 | /* namei.c */ |
| 918 | extern struct file_operations ufs_dir_operations; | 918 | extern struct file_operations ufs_dir_operations; |
diff --git a/include/linux/ufs_fs_sb.h b/include/linux/ufs_fs_sb.h index c1be4c226486..8ff13c160f3d 100644 --- a/include/linux/ufs_fs_sb.h +++ b/include/linux/ufs_fs_sb.h | |||
| @@ -25,7 +25,7 @@ struct ufs_csum; | |||
| 25 | 25 | ||
| 26 | struct ufs_sb_info { | 26 | struct ufs_sb_info { |
| 27 | struct ufs_sb_private_info * s_uspi; | 27 | struct ufs_sb_private_info * s_uspi; |
| 28 | struct ufs_csum * s_csp[UFS_MAXCSBUFS]; | 28 | struct ufs_csum * s_csp; |
| 29 | unsigned s_bytesex; | 29 | unsigned s_bytesex; |
| 30 | unsigned s_flags; | 30 | unsigned s_flags; |
| 31 | struct buffer_head ** s_ucg; | 31 | struct buffer_head ** s_ucg; |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index 6f6c69777648..5208b12d5550 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
| @@ -549,7 +549,7 @@ struct v4l2_framebuffer | |||
| 549 | struct v4l2_clip | 549 | struct v4l2_clip |
| 550 | { | 550 | { |
| 551 | struct v4l2_rect c; | 551 | struct v4l2_rect c; |
| 552 | struct v4l2_clip *next; | 552 | struct v4l2_clip __user *next; |
| 553 | }; | 553 | }; |
| 554 | 554 | ||
| 555 | struct v4l2_window | 555 | struct v4l2_window |
| @@ -629,6 +629,7 @@ typedef __u64 v4l2_std_id; | |||
| 629 | #define V4L2_STD_NTSC_M ((v4l2_std_id)0x00001000) | 629 | #define V4L2_STD_NTSC_M ((v4l2_std_id)0x00001000) |
| 630 | #define V4L2_STD_NTSC_M_JP ((v4l2_std_id)0x00002000) | 630 | #define V4L2_STD_NTSC_M_JP ((v4l2_std_id)0x00002000) |
| 631 | #define V4L2_STD_NTSC_443 ((v4l2_std_id)0x00004000) | 631 | #define V4L2_STD_NTSC_443 ((v4l2_std_id)0x00004000) |
| 632 | #define V4L2_STD_NTSC_M_KR ((v4l2_std_id)0x00008000) | ||
| 632 | 633 | ||
| 633 | #define V4L2_STD_SECAM_B ((v4l2_std_id)0x00010000) | 634 | #define V4L2_STD_SECAM_B ((v4l2_std_id)0x00010000) |
| 634 | #define V4L2_STD_SECAM_D ((v4l2_std_id)0x00020000) | 635 | #define V4L2_STD_SECAM_D ((v4l2_std_id)0x00020000) |
| @@ -661,7 +662,8 @@ typedef __u64 v4l2_std_id; | |||
| 661 | V4L2_STD_PAL_H |\ | 662 | V4L2_STD_PAL_H |\ |
| 662 | V4L2_STD_PAL_I) | 663 | V4L2_STD_PAL_I) |
| 663 | #define V4L2_STD_NTSC (V4L2_STD_NTSC_M |\ | 664 | #define V4L2_STD_NTSC (V4L2_STD_NTSC_M |\ |
| 664 | V4L2_STD_NTSC_M_JP) | 665 | V4L2_STD_NTSC_M_JP |\ |
| 666 | V4L2_STD_NTSC_M_KR) | ||
| 665 | #define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D |\ | 667 | #define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D |\ |
| 666 | V4L2_STD_SECAM_K |\ | 668 | V4L2_STD_SECAM_K |\ |
| 667 | V4L2_STD_SECAM_K1) | 669 | V4L2_STD_SECAM_K1) |
