diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/Kbuild | 3 | ||||
-rw-r--r-- | include/linux/bitops.h | 40 | ||||
-rw-r--r-- | include/linux/compat.h | 4 | ||||
-rw-r--r-- | include/linux/cpuidle.h | 4 | ||||
-rw-r--r-- | include/linux/dmaengine.h | 2 | ||||
-rw-r--r-- | include/linux/hardirq.h | 7 | ||||
-rw-r--r-- | include/linux/ide.h | 2 | ||||
-rw-r--r-- | include/linux/input.h | 5 | ||||
-rw-r--r-- | include/linux/iocontext.h | 3 | ||||
-rw-r--r-- | include/linux/jbd.h | 11 | ||||
-rw-r--r-- | include/linux/lguest_launcher.h | 6 | ||||
-rw-r--r-- | include/linux/libata.h | 10 | ||||
-rw-r--r-- | include/linux/memstick.h | 1 | ||||
-rw-r--r-- | include/linux/mount.h | 2 | ||||
-rw-r--r-- | include/linux/pci.h | 4 | ||||
-rw-r--r-- | include/linux/pnp.h | 2 | ||||
-rw-r--r-- | include/linux/ps2esdi.h | 98 | ||||
-rw-r--r-- | include/linux/rcupreempt.h | 4 | ||||
-rw-r--r-- | include/linux/sched.h | 10 | ||||
-rw-r--r-- | include/linux/security.h | 3 | ||||
-rw-r--r-- | include/linux/topology.h | 3 | ||||
-rw-r--r-- | include/linux/usb/quirks.h | 3 | ||||
-rw-r--r-- | include/linux/usb_usual.h | 4 |
23 files changed, 97 insertions, 134 deletions
diff --git a/include/linux/Kbuild b/include/linux/Kbuild index 0fac822c1157..4a446a19295e 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild | |||
@@ -127,7 +127,6 @@ header-y += pkt_sched.h | |||
127 | header-y += posix_types.h | 127 | header-y += posix_types.h |
128 | header-y += ppdev.h | 128 | header-y += ppdev.h |
129 | header-y += prctl.h | 129 | header-y += prctl.h |
130 | header-y += ps2esdi.h | ||
131 | header-y += qnxtypes.h | 130 | header-y += qnxtypes.h |
132 | header-y += quotaio_v1.h | 131 | header-y += quotaio_v1.h |
133 | header-y += quotaio_v2.h | 132 | header-y += quotaio_v2.h |
@@ -196,7 +195,6 @@ unifdef-y += ethtool.h | |||
196 | unifdef-y += eventpoll.h | 195 | unifdef-y += eventpoll.h |
197 | unifdef-y += signalfd.h | 196 | unifdef-y += signalfd.h |
198 | unifdef-y += ext2_fs.h | 197 | unifdef-y += ext2_fs.h |
199 | unifdef-y += ext3_fs.h | ||
200 | unifdef-y += fb.h | 198 | unifdef-y += fb.h |
201 | unifdef-y += fcntl.h | 199 | unifdef-y += fcntl.h |
202 | unifdef-y += filter.h | 200 | unifdef-y += filter.h |
@@ -249,7 +247,6 @@ unifdef-y += isdn.h | |||
249 | unifdef-y += isdnif.h | 247 | unifdef-y += isdnif.h |
250 | unifdef-y += isdn_divertif.h | 248 | unifdef-y += isdn_divertif.h |
251 | unifdef-y += isdn_ppp.h | 249 | unifdef-y += isdn_ppp.h |
252 | unifdef-y += jbd.h | ||
253 | unifdef-y += joystick.h | 250 | unifdef-y += joystick.h |
254 | unifdef-y += kdev_t.h | 251 | unifdef-y += kdev_t.h |
255 | unifdef-y += kd.h | 252 | unifdef-y += kd.h |
diff --git a/include/linux/bitops.h b/include/linux/bitops.h index 69c1edb9fe54..40d54731de7e 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h | |||
@@ -65,6 +65,46 @@ static inline __u32 ror32(__u32 word, unsigned int shift) | |||
65 | return (word >> shift) | (word << (32 - shift)); | 65 | return (word >> shift) | (word << (32 - shift)); |
66 | } | 66 | } |
67 | 67 | ||
68 | /** | ||
69 | * rol16 - rotate a 16-bit value left | ||
70 | * @word: value to rotate | ||
71 | * @shift: bits to roll | ||
72 | */ | ||
73 | static inline __u16 rol16(__u16 word, unsigned int shift) | ||
74 | { | ||
75 | return (word << shift) | (word >> (16 - shift)); | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * ror16 - rotate a 16-bit value right | ||
80 | * @word: value to rotate | ||
81 | * @shift: bits to roll | ||
82 | */ | ||
83 | static inline __u16 ror16(__u16 word, unsigned int shift) | ||
84 | { | ||
85 | return (word >> shift) | (word << (16 - shift)); | ||
86 | } | ||
87 | |||
88 | /** | ||
89 | * rol8 - rotate an 8-bit value left | ||
90 | * @word: value to rotate | ||
91 | * @shift: bits to roll | ||
92 | */ | ||
93 | static inline __u8 rol8(__u8 word, unsigned int shift) | ||
94 | { | ||
95 | return (word << shift) | (word >> (8 - shift)); | ||
96 | } | ||
97 | |||
98 | /** | ||
99 | * ror8 - rotate an 8-bit value right | ||
100 | * @word: value to rotate | ||
101 | * @shift: bits to roll | ||
102 | */ | ||
103 | static inline __u8 ror8(__u8 word, unsigned int shift) | ||
104 | { | ||
105 | return (word >> shift) | (word << (8 - shift)); | ||
106 | } | ||
107 | |||
68 | static inline unsigned fls_long(unsigned long l) | 108 | static inline unsigned fls_long(unsigned long l) |
69 | { | 109 | { |
70 | if (sizeof(l) == 4) | 110 | if (sizeof(l) == 4) |
diff --git a/include/linux/compat.h b/include/linux/compat.h index a671dbff7a1f..8fa7857e153b 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h | |||
@@ -192,8 +192,8 @@ asmlinkage long compat_sys_select(int n, compat_ulong_t __user *inp, | |||
192 | struct compat_timeval __user *tvp); | 192 | struct compat_timeval __user *tvp); |
193 | 193 | ||
194 | asmlinkage long compat_sys_wait4(compat_pid_t pid, | 194 | asmlinkage long compat_sys_wait4(compat_pid_t pid, |
195 | compat_uint_t *stat_addr, int options, | 195 | compat_uint_t __user *stat_addr, int options, |
196 | struct compat_rusage *ru); | 196 | struct compat_rusage __user *ru); |
197 | 197 | ||
198 | #define BITS_PER_COMPAT_LONG (8*sizeof(compat_long_t)) | 198 | #define BITS_PER_COMPAT_LONG (8*sizeof(compat_long_t)) |
199 | 199 | ||
diff --git a/include/linux/cpuidle.h b/include/linux/cpuidle.h index 6b72a4584086..51e6b1e520e6 100644 --- a/include/linux/cpuidle.h +++ b/include/linux/cpuidle.h | |||
@@ -38,8 +38,8 @@ struct cpuidle_state { | |||
38 | unsigned int power_usage; /* in mW */ | 38 | unsigned int power_usage; /* in mW */ |
39 | unsigned int target_residency; /* in US */ | 39 | unsigned int target_residency; /* in US */ |
40 | 40 | ||
41 | unsigned int usage; | 41 | unsigned long long usage; |
42 | unsigned int time; /* in US */ | 42 | unsigned long long time; /* in US */ |
43 | 43 | ||
44 | int (*enter) (struct cpuidle_device *dev, | 44 | int (*enter) (struct cpuidle_device *dev, |
45 | struct cpuidle_state *state); | 45 | struct cpuidle_state *state); |
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index 261e43a4c873..34d440698293 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h | |||
@@ -423,7 +423,7 @@ void dma_async_device_unregister(struct dma_device *device); | |||
423 | /* --- Helper iov-locking functions --- */ | 423 | /* --- Helper iov-locking functions --- */ |
424 | 424 | ||
425 | struct dma_page_list { | 425 | struct dma_page_list { |
426 | char *base_address; | 426 | char __user *base_address; |
427 | int nr_pages; | 427 | int nr_pages; |
428 | struct page **pages; | 428 | struct page **pages; |
429 | }; | 429 | }; |
diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h index 49829988bfa0..897f723bd222 100644 --- a/include/linux/hardirq.h +++ b/include/linux/hardirq.h | |||
@@ -72,6 +72,13 @@ | |||
72 | #define in_softirq() (softirq_count()) | 72 | #define in_softirq() (softirq_count()) |
73 | #define in_interrupt() (irq_count()) | 73 | #define in_interrupt() (irq_count()) |
74 | 74 | ||
75 | /* | ||
76 | * Are we running in atomic context? WARNING: this macro cannot | ||
77 | * always detect atomic context; in particular, it cannot know about | ||
78 | * held spinlocks in non-preemptible kernels. Thus it should not be | ||
79 | * used in the general case to determine whether sleeping is possible. | ||
80 | * Do not use in_atomic() in driver code. | ||
81 | */ | ||
75 | #define in_atomic() ((preempt_count() & ~PREEMPT_ACTIVE) != 0) | 82 | #define in_atomic() ((preempt_count() & ~PREEMPT_ACTIVE) != 0) |
76 | 83 | ||
77 | #ifdef CONFIG_PREEMPT | 84 | #ifdef CONFIG_PREEMPT |
diff --git a/include/linux/ide.h b/include/linux/ide.h index a3b69c10d667..bc26b2f27359 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -26,7 +26,7 @@ | |||
26 | #include <asm/semaphore.h> | 26 | #include <asm/semaphore.h> |
27 | #include <asm/mutex.h> | 27 | #include <asm/mutex.h> |
28 | 28 | ||
29 | #if defined(CRIS) || defined(FRV) | 29 | #if defined(CONFIG_CRIS) || defined(CONFIG_FRV) |
30 | # define SUPPORT_VLB_SYNC 0 | 30 | # define SUPPORT_VLB_SYNC 0 |
31 | #else | 31 | #else |
32 | # define SUPPORT_VLB_SYNC 1 | 32 | # define SUPPORT_VLB_SYNC 1 |
diff --git a/include/linux/input.h b/include/linux/input.h index 1bdc39a8c76c..cae2c35d1206 100644 --- a/include/linux/input.h +++ b/include/linux/input.h | |||
@@ -1227,12 +1227,13 @@ void input_free_device(struct input_dev *dev); | |||
1227 | 1227 | ||
1228 | static inline struct input_dev *input_get_device(struct input_dev *dev) | 1228 | static inline struct input_dev *input_get_device(struct input_dev *dev) |
1229 | { | 1229 | { |
1230 | return to_input_dev(get_device(&dev->dev)); | 1230 | return dev ? to_input_dev(get_device(&dev->dev)) : NULL; |
1231 | } | 1231 | } |
1232 | 1232 | ||
1233 | static inline void input_put_device(struct input_dev *dev) | 1233 | static inline void input_put_device(struct input_dev *dev) |
1234 | { | 1234 | { |
1235 | put_device(&dev->dev); | 1235 | if (dev) |
1236 | put_device(&dev->dev); | ||
1236 | } | 1237 | } |
1237 | 1238 | ||
1238 | static inline void *input_get_drvdata(struct input_dev *dev) | 1239 | static inline void *input_get_drvdata(struct input_dev *dev) |
diff --git a/include/linux/iocontext.h b/include/linux/iocontext.h index 1b4ccf25b4d2..cac4b364cd40 100644 --- a/include/linux/iocontext.h +++ b/include/linux/iocontext.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define IOCONTEXT_H | 2 | #define IOCONTEXT_H |
3 | 3 | ||
4 | #include <linux/radix-tree.h> | 4 | #include <linux/radix-tree.h> |
5 | #include <linux/rcupdate.h> | ||
5 | 6 | ||
6 | /* | 7 | /* |
7 | * This is the per-process anticipatory I/O scheduler state. | 8 | * This is the per-process anticipatory I/O scheduler state. |
@@ -54,6 +55,8 @@ struct cfq_io_context { | |||
54 | 55 | ||
55 | void (*dtor)(struct io_context *); /* destructor */ | 56 | void (*dtor)(struct io_context *); /* destructor */ |
56 | void (*exit)(struct io_context *); /* called on task exit */ | 57 | void (*exit)(struct io_context *); /* called on task exit */ |
58 | |||
59 | struct rcu_head rcu_head; | ||
57 | }; | 60 | }; |
58 | 61 | ||
59 | /* | 62 | /* |
diff --git a/include/linux/jbd.h b/include/linux/jbd.h index b18fd3b9b835..423f58272188 100644 --- a/include/linux/jbd.h +++ b/include/linux/jbd.h | |||
@@ -348,8 +348,7 @@ static inline void jbd_unlock_bh_journal_head(struct buffer_head *bh) | |||
348 | struct jbd_revoke_table_s; | 348 | struct jbd_revoke_table_s; |
349 | 349 | ||
350 | /** | 350 | /** |
351 | * struct handle_s - The handle_s type is the concrete type associated with | 351 | * struct handle_s - this is the concrete type associated with handle_t. |
352 | * handle_t. | ||
353 | * @h_transaction: Which compound transaction is this update a part of? | 352 | * @h_transaction: Which compound transaction is this update a part of? |
354 | * @h_buffer_credits: Number of remaining buffers we are allowed to dirty. | 353 | * @h_buffer_credits: Number of remaining buffers we are allowed to dirty. |
355 | * @h_ref: Reference count on this handle | 354 | * @h_ref: Reference count on this handle |
@@ -358,12 +357,7 @@ struct jbd_revoke_table_s; | |||
358 | * @h_jdata: flag to force data journaling | 357 | * @h_jdata: flag to force data journaling |
359 | * @h_aborted: flag indicating fatal error on handle | 358 | * @h_aborted: flag indicating fatal error on handle |
360 | * @h_lockdep_map: lockdep info for debugging lock problems | 359 | * @h_lockdep_map: lockdep info for debugging lock problems |
361 | **/ | ||
362 | |||
363 | /* Docbook can't yet cope with the bit fields, but will leave the documentation | ||
364 | * in so it can be fixed later. | ||
365 | */ | 360 | */ |
366 | |||
367 | struct handle_s | 361 | struct handle_s |
368 | { | 362 | { |
369 | /* Which compound transaction is this update a part of? */ | 363 | /* Which compound transaction is this update a part of? */ |
@@ -558,8 +552,7 @@ struct transaction_s | |||
558 | }; | 552 | }; |
559 | 553 | ||
560 | /** | 554 | /** |
561 | * struct journal_s - The journal_s type is the concrete type associated with | 555 | * struct journal_s - this is the concrete type associated with journal_t. |
562 | * journal_t. | ||
563 | * @j_flags: General journaling state flags | 556 | * @j_flags: General journaling state flags |
564 | * @j_errno: Is there an outstanding uncleared error on the journal (from a | 557 | * @j_errno: Is there an outstanding uncleared error on the journal (from a |
565 | * prior abort)? | 558 | * prior abort)? |
diff --git a/include/linux/lguest_launcher.h b/include/linux/lguest_launcher.h index 589be3e1f3ac..e7217dc58f39 100644 --- a/include/linux/lguest_launcher.h +++ b/include/linux/lguest_launcher.h | |||
@@ -16,6 +16,10 @@ | |||
16 | * a new device, we simply need to write a new virtio driver and create support | 16 | * a new device, we simply need to write a new virtio driver and create support |
17 | * for it in the Launcher: this code won't need to change. | 17 | * for it in the Launcher: this code won't need to change. |
18 | * | 18 | * |
19 | * Virtio devices are also used by kvm, so we can simply reuse their optimized | ||
20 | * device drivers. And one day when everyone uses virtio, my plan will be | ||
21 | * complete. Bwahahahah! | ||
22 | * | ||
19 | * Devices are described by a simplified ID, a status byte, and some "config" | 23 | * Devices are described by a simplified ID, a status byte, and some "config" |
20 | * bytes which describe this device's configuration. This is placed by the | 24 | * bytes which describe this device's configuration. This is placed by the |
21 | * Launcher just above the top of physical memory: | 25 | * Launcher just above the top of physical memory: |
@@ -26,7 +30,7 @@ struct lguest_device_desc { | |||
26 | /* The number of virtqueues (first in config array) */ | 30 | /* The number of virtqueues (first in config array) */ |
27 | __u8 num_vq; | 31 | __u8 num_vq; |
28 | /* The number of bytes of feature bits. Multiply by 2: one for host | 32 | /* The number of bytes of feature bits. Multiply by 2: one for host |
29 | * features and one for guest acknowledgements. */ | 33 | * features and one for Guest acknowledgements. */ |
30 | __u8 feature_len; | 34 | __u8 feature_len; |
31 | /* The number of bytes of the config array after virtqueues. */ | 35 | /* The number of bytes of the config array after virtqueues. */ |
32 | __u8 config_len; | 36 | __u8 config_len; |
diff --git a/include/linux/libata.h b/include/linux/libata.h index a05f60013642..b064bfeb69ee 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -295,6 +295,7 @@ enum { | |||
295 | ATA_EH_SOFTRESET = (1 << 1), | 295 | ATA_EH_SOFTRESET = (1 << 1), |
296 | ATA_EH_HARDRESET = (1 << 2), | 296 | ATA_EH_HARDRESET = (1 << 2), |
297 | ATA_EH_ENABLE_LINK = (1 << 3), | 297 | ATA_EH_ENABLE_LINK = (1 << 3), |
298 | ATA_EH_LPM = (1 << 4), /* link power management action */ | ||
298 | 299 | ||
299 | ATA_EH_RESET_MASK = ATA_EH_SOFTRESET | ATA_EH_HARDRESET, | 300 | ATA_EH_RESET_MASK = ATA_EH_SOFTRESET | ATA_EH_HARDRESET, |
300 | ATA_EH_PERDEV_MASK = ATA_EH_REVALIDATE, | 301 | ATA_EH_PERDEV_MASK = ATA_EH_REVALIDATE, |
@@ -304,7 +305,6 @@ enum { | |||
304 | ATA_EHI_RESUME_LINK = (1 << 1), /* resume link (reset modifier) */ | 305 | ATA_EHI_RESUME_LINK = (1 << 1), /* resume link (reset modifier) */ |
305 | ATA_EHI_NO_AUTOPSY = (1 << 2), /* no autopsy */ | 306 | ATA_EHI_NO_AUTOPSY = (1 << 2), /* no autopsy */ |
306 | ATA_EHI_QUIET = (1 << 3), /* be quiet */ | 307 | ATA_EHI_QUIET = (1 << 3), /* be quiet */ |
307 | ATA_EHI_LPM = (1 << 4), /* link power management action */ | ||
308 | 308 | ||
309 | ATA_EHI_DID_SOFTRESET = (1 << 16), /* already soft-reset this port */ | 309 | ATA_EHI_DID_SOFTRESET = (1 << 16), /* already soft-reset this port */ |
310 | ATA_EHI_DID_HARDRESET = (1 << 17), /* already soft-reset this port */ | 310 | ATA_EHI_DID_HARDRESET = (1 << 17), /* already soft-reset this port */ |
@@ -463,6 +463,7 @@ struct ata_queued_cmd { | |||
463 | unsigned int sect_size; | 463 | unsigned int sect_size; |
464 | 464 | ||
465 | unsigned int nbytes; | 465 | unsigned int nbytes; |
466 | unsigned int extrabytes; | ||
466 | unsigned int curbytes; | 467 | unsigned int curbytes; |
467 | 468 | ||
468 | struct scatterlist *cursg; | 469 | struct scatterlist *cursg; |
@@ -1336,6 +1337,11 @@ static inline struct ata_queued_cmd *ata_qc_from_tag(struct ata_port *ap, | |||
1336 | return NULL; | 1337 | return NULL; |
1337 | } | 1338 | } |
1338 | 1339 | ||
1340 | static inline unsigned int ata_qc_raw_nbytes(struct ata_queued_cmd *qc) | ||
1341 | { | ||
1342 | return qc->nbytes - min(qc->extrabytes, qc->nbytes); | ||
1343 | } | ||
1344 | |||
1339 | static inline void ata_tf_init(struct ata_device *dev, struct ata_taskfile *tf) | 1345 | static inline void ata_tf_init(struct ata_device *dev, struct ata_taskfile *tf) |
1340 | { | 1346 | { |
1341 | memset(tf, 0, sizeof(*tf)); | 1347 | memset(tf, 0, sizeof(*tf)); |
@@ -1354,7 +1360,7 @@ static inline void ata_qc_reinit(struct ata_queued_cmd *qc) | |||
1354 | qc->flags = 0; | 1360 | qc->flags = 0; |
1355 | qc->cursg = NULL; | 1361 | qc->cursg = NULL; |
1356 | qc->cursg_ofs = 0; | 1362 | qc->cursg_ofs = 0; |
1357 | qc->nbytes = qc->curbytes = 0; | 1363 | qc->nbytes = qc->extrabytes = qc->curbytes = 0; |
1358 | qc->n_elem = 0; | 1364 | qc->n_elem = 0; |
1359 | qc->err_mask = 0; | 1365 | qc->err_mask = 0; |
1360 | qc->sect_size = ATA_SECT_SIZE; | 1366 | qc->sect_size = ATA_SECT_SIZE; |
diff --git a/include/linux/memstick.h b/include/linux/memstick.h index b7ee25888836..3e686ec6a967 100644 --- a/include/linux/memstick.h +++ b/include/linux/memstick.h | |||
@@ -239,7 +239,6 @@ struct memstick_request { | |||
239 | unsigned char tpc; | 239 | unsigned char tpc; |
240 | unsigned char data_dir:1, | 240 | unsigned char data_dir:1, |
241 | need_card_int:1, | 241 | need_card_int:1, |
242 | get_int_reg:1, | ||
243 | long_data:1; | 242 | long_data:1; |
244 | unsigned char int_reg; | 243 | unsigned char int_reg; |
245 | int error; | 244 | int error; |
diff --git a/include/linux/mount.h b/include/linux/mount.h index 6d3047d8c91c..5ee2df217cdf 100644 --- a/include/linux/mount.h +++ b/include/linux/mount.h | |||
@@ -61,6 +61,7 @@ struct vfsmount { | |||
61 | atomic_t mnt_count; | 61 | atomic_t mnt_count; |
62 | int mnt_expiry_mark; /* true if marked for expiry */ | 62 | int mnt_expiry_mark; /* true if marked for expiry */ |
63 | int mnt_pinned; | 63 | int mnt_pinned; |
64 | int mnt_ghosts; | ||
64 | }; | 65 | }; |
65 | 66 | ||
66 | static inline struct vfsmount *mntget(struct vfsmount *mnt) | 67 | static inline struct vfsmount *mntget(struct vfsmount *mnt) |
@@ -98,7 +99,6 @@ extern int do_add_mount(struct vfsmount *newmnt, struct nameidata *nd, | |||
98 | int mnt_flags, struct list_head *fslist); | 99 | int mnt_flags, struct list_head *fslist); |
99 | 100 | ||
100 | extern void mark_mounts_for_expiry(struct list_head *mounts); | 101 | extern void mark_mounts_for_expiry(struct list_head *mounts); |
101 | extern void shrink_submounts(struct vfsmount *mountpoint, struct list_head *mounts); | ||
102 | 102 | ||
103 | extern spinlock_t vfsmount_lock; | 103 | extern spinlock_t vfsmount_lock; |
104 | extern dev_t name_to_dev_t(char *name); | 104 | extern dev_t name_to_dev_t(char *name); |
diff --git a/include/linux/pci.h b/include/linux/pci.h index b7e4b633c69b..ea760e519c46 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -513,7 +513,6 @@ int pci_find_next_capability(struct pci_dev *dev, u8 pos, int cap); | |||
513 | int pci_find_ext_capability(struct pci_dev *dev, int cap); | 513 | int pci_find_ext_capability(struct pci_dev *dev, int cap); |
514 | int pci_find_ht_capability(struct pci_dev *dev, int ht_cap); | 514 | int pci_find_ht_capability(struct pci_dev *dev, int ht_cap); |
515 | int pci_find_next_ht_capability(struct pci_dev *dev, int pos, int ht_cap); | 515 | int pci_find_next_ht_capability(struct pci_dev *dev, int pos, int ht_cap); |
516 | void pcie_wait_pending_transaction(struct pci_dev *dev); | ||
517 | struct pci_bus *pci_find_next_bus(const struct pci_bus *from); | 516 | struct pci_bus *pci_find_next_bus(const struct pci_bus *from); |
518 | 517 | ||
519 | struct pci_dev *pci_get_device(unsigned int vendor, unsigned int device, | 518 | struct pci_dev *pci_get_device(unsigned int vendor, unsigned int device, |
@@ -884,9 +883,6 @@ static inline int pci_find_ext_capability(struct pci_dev *dev, int cap) | |||
884 | return 0; | 883 | return 0; |
885 | } | 884 | } |
886 | 885 | ||
887 | static inline void pcie_wait_pending_transaction(struct pci_dev *dev) | ||
888 | { } | ||
889 | |||
890 | /* Power management related routines */ | 886 | /* Power management related routines */ |
891 | static inline int pci_save_state(struct pci_dev *dev) | 887 | static inline int pci_save_state(struct pci_dev *dev) |
892 | { | 888 | { |
diff --git a/include/linux/pnp.h b/include/linux/pnp.h index cd6332b88829..29dd55838e84 100644 --- a/include/linux/pnp.h +++ b/include/linux/pnp.h | |||
@@ -14,7 +14,7 @@ | |||
14 | #include <linux/mod_devicetable.h> | 14 | #include <linux/mod_devicetable.h> |
15 | 15 | ||
16 | #define PNP_MAX_PORT 40 | 16 | #define PNP_MAX_PORT 40 |
17 | #define PNP_MAX_MEM 12 | 17 | #define PNP_MAX_MEM 24 |
18 | #define PNP_MAX_IRQ 2 | 18 | #define PNP_MAX_IRQ 2 |
19 | #define PNP_MAX_DMA 2 | 19 | #define PNP_MAX_DMA 2 |
20 | #define PNP_NAME_LEN 50 | 20 | #define PNP_NAME_LEN 50 |
diff --git a/include/linux/ps2esdi.h b/include/linux/ps2esdi.h deleted file mode 100644 index c0e050b1dfe9..000000000000 --- a/include/linux/ps2esdi.h +++ /dev/null | |||
@@ -1,98 +0,0 @@ | |||
1 | #ifndef _PS2ESDI_H_ | ||
2 | #define _PS2ESDI_H_ | ||
3 | |||
4 | #define NRML_ESDI_ID 0xddff | ||
5 | #define INTG_ESDI_ID 0xdf9f | ||
6 | |||
7 | #define PRIMARY_IO_BASE 0x3510 | ||
8 | #define ALT_IO_BASE 0x3518 | ||
9 | |||
10 | #define ESDI_CMD_INT (io_base+0) | ||
11 | #define ESDI_STT_INT (io_base+0) | ||
12 | #define ESDI_CONTROL (io_base+2) | ||
13 | #define ESDI_STATUS (io_base+2) | ||
14 | #define ESDI_ATTN (io_base+3) | ||
15 | #define ESDI_INTRPT (io_base+3) | ||
16 | |||
17 | #define STATUS_ENABLED 0x01 | ||
18 | #define STATUS_ALTERNATE 0x02 | ||
19 | #define STATUS_BUSY 0x10 | ||
20 | #define STATUS_STAT_AVAIL 0x08 | ||
21 | #define STATUS_INTR 0x01 | ||
22 | #define STATUS_RESET_FAIL 0xea | ||
23 | #define STATUS_CMD_INF 0x04 | ||
24 | |||
25 | #define CTRL_SOFT_RESET 0xe4 | ||
26 | #define CTRL_HARD_RESET 0x80 | ||
27 | #define CTRL_EOI 0xe2 | ||
28 | #define CTRL_ENABLE_DMA 0x02 | ||
29 | #define CTRL_ENABLE_INTR 0x01 | ||
30 | #define CTRL_DISABLE_INTR 0x00 | ||
31 | |||
32 | #define ATT_EOI 0x02 | ||
33 | |||
34 | /* bits of word 0 of configuration status block. more info see p.38 of tech ref */ | ||
35 | #define CONFIG_IS 0x10 /* Invalid Secondary */ | ||
36 | #define CONFIG_ZD 0x08 /* Zero Defect */ | ||
37 | #define CONFIG_SF 0x04 /* Skewed Format */ | ||
38 | #define CONFIG_FR 0x02 /* Removable */ | ||
39 | #define CONFIG_RT 0x01 /* Retries */ | ||
40 | |||
41 | #define PORT_SYS_A 0x92 | ||
42 | #define PORT_DMA_FN 0x18 | ||
43 | #define PORT_DMA_EX 0x1a | ||
44 | |||
45 | #define ON (unsigned char)0x40 | ||
46 | #define OFF (unsigned char)~ON | ||
47 | #define LITE_ON outb(inb(PORT_SYS_A) | ON,PORT_SYS_A) | ||
48 | #define LITE_OFF outb((inb(PORT_SYS_A) & OFF),PORT_SYS_A) | ||
49 | |||
50 | #define FAIL 0 | ||
51 | #define SUCCES 1 | ||
52 | |||
53 | #define INT_CMD_COMPLETE 0x01 | ||
54 | #define INT_CMD_ECC 0x03 | ||
55 | #define INT_CMD_RETRY 0x05 | ||
56 | #define INT_CMD_FORMAT 0x06 | ||
57 | #define INT_CMD_ECC_RETRY 0x07 | ||
58 | #define INT_CMD_WARNING 0x08 | ||
59 | #define INT_CMD_ABORT 0x09 | ||
60 | #define INT_RESET 0x0A | ||
61 | #define INT_TRANSFER_REQ 0x0B | ||
62 | #define INT_CMD_FAILED 0x0C | ||
63 | #define INT_DMA_ERR 0x0D | ||
64 | #define INT_CMD_BLK_ERR 0x0E | ||
65 | #define INT_ATTN_ERROR 0x0F | ||
66 | |||
67 | #define DMA_MASK_CHAN 0x90 | ||
68 | #define DMA_UNMASK_CHAN 0xA0 | ||
69 | #define DMA_WRITE_ADDR 0x20 | ||
70 | #define DMA_WRITE_TC 0x40 | ||
71 | #define DMA_WRITE_MODE 0x70 | ||
72 | |||
73 | #define CMD_GET_DEV_CONFIG 0x09 | ||
74 | #define CMD_READ 0x4601 | ||
75 | #define CMD_WRITE 0x4602 | ||
76 | #define DMA_READ_16 0x4C | ||
77 | #define DMA_WRITE_16 0x44 | ||
78 | |||
79 | |||
80 | #define MB 1024*1024 | ||
81 | #define SECT_SIZE 512 | ||
82 | |||
83 | #define ERROR 1 | ||
84 | #define OK 0 | ||
85 | |||
86 | #define HDIO_GETGEO 0x0301 | ||
87 | |||
88 | #define FALSE 0 | ||
89 | #define TRUE !FALSE | ||
90 | |||
91 | struct ps2esdi_geometry { | ||
92 | unsigned char heads; | ||
93 | unsigned char sectors; | ||
94 | unsigned short cylinders; | ||
95 | unsigned long start; | ||
96 | }; | ||
97 | |||
98 | #endif /* _PS2ESDI_H_ */ | ||
diff --git a/include/linux/rcupreempt.h b/include/linux/rcupreempt.h index 01152ed532c8..d038aa6e5ee1 100644 --- a/include/linux/rcupreempt.h +++ b/include/linux/rcupreempt.h | |||
@@ -87,15 +87,15 @@ DECLARE_PER_CPU(long, dynticks_progress_counter); | |||
87 | 87 | ||
88 | static inline void rcu_enter_nohz(void) | 88 | static inline void rcu_enter_nohz(void) |
89 | { | 89 | { |
90 | smp_mb(); /* CPUs seeing ++ must see prior RCU read-side crit sects */ | ||
90 | __get_cpu_var(dynticks_progress_counter)++; | 91 | __get_cpu_var(dynticks_progress_counter)++; |
91 | WARN_ON(__get_cpu_var(dynticks_progress_counter) & 0x1); | 92 | WARN_ON(__get_cpu_var(dynticks_progress_counter) & 0x1); |
92 | mb(); | ||
93 | } | 93 | } |
94 | 94 | ||
95 | static inline void rcu_exit_nohz(void) | 95 | static inline void rcu_exit_nohz(void) |
96 | { | 96 | { |
97 | mb(); | ||
98 | __get_cpu_var(dynticks_progress_counter)++; | 97 | __get_cpu_var(dynticks_progress_counter)++; |
98 | smp_mb(); /* CPUs seeing ++ must see later RCU read-side crit sects */ | ||
99 | WARN_ON(!(__get_cpu_var(dynticks_progress_counter) & 0x1)); | 99 | WARN_ON(!(__get_cpu_var(dynticks_progress_counter) & 0x1)); |
100 | } | 100 | } |
101 | 101 | ||
diff --git a/include/linux/sched.h b/include/linux/sched.h index 11d8e9a74eff..6a1e7afb099b 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -790,6 +790,7 @@ struct sched_domain { | |||
790 | }; | 790 | }; |
791 | 791 | ||
792 | extern void partition_sched_domains(int ndoms_new, cpumask_t *doms_new); | 792 | extern void partition_sched_domains(int ndoms_new, cpumask_t *doms_new); |
793 | extern int arch_reinit_sched_domains(void); | ||
793 | 794 | ||
794 | #endif /* CONFIG_SMP */ | 795 | #endif /* CONFIG_SMP */ |
795 | 796 | ||
@@ -929,6 +930,9 @@ struct sched_entity { | |||
929 | u64 vruntime; | 930 | u64 vruntime; |
930 | u64 prev_sum_exec_runtime; | 931 | u64 prev_sum_exec_runtime; |
931 | 932 | ||
933 | u64 last_wakeup; | ||
934 | u64 avg_overlap; | ||
935 | |||
932 | #ifdef CONFIG_SCHEDSTATS | 936 | #ifdef CONFIG_SCHEDSTATS |
933 | u64 wait_start; | 937 | u64 wait_start; |
934 | u64 wait_max; | 938 | u64 wait_max; |
@@ -1537,6 +1541,12 @@ static inline void idle_task_exit(void) {} | |||
1537 | 1541 | ||
1538 | extern void sched_idle_next(void); | 1542 | extern void sched_idle_next(void); |
1539 | 1543 | ||
1544 | #if defined(CONFIG_NO_HZ) && defined(CONFIG_SMP) | ||
1545 | extern void wake_up_idle_cpu(int cpu); | ||
1546 | #else | ||
1547 | static inline void wake_up_idle_cpu(int cpu) { } | ||
1548 | #endif | ||
1549 | |||
1540 | #ifdef CONFIG_SCHED_DEBUG | 1550 | #ifdef CONFIG_SCHED_DEBUG |
1541 | extern unsigned int sysctl_sched_latency; | 1551 | extern unsigned int sysctl_sched_latency; |
1542 | extern unsigned int sysctl_sched_min_granularity; | 1552 | extern unsigned int sysctl_sched_min_granularity; |
diff --git a/include/linux/security.h b/include/linux/security.h index b07357ca2137..c673dfd4dffc 100644 --- a/include/linux/security.h +++ b/include/linux/security.h | |||
@@ -57,7 +57,6 @@ extern int cap_inode_need_killpriv(struct dentry *dentry); | |||
57 | extern int cap_inode_killpriv(struct dentry *dentry); | 57 | extern int cap_inode_killpriv(struct dentry *dentry); |
58 | extern int cap_task_post_setuid (uid_t old_ruid, uid_t old_euid, uid_t old_suid, int flags); | 58 | extern int cap_task_post_setuid (uid_t old_ruid, uid_t old_euid, uid_t old_suid, int flags); |
59 | extern void cap_task_reparent_to_init (struct task_struct *p); | 59 | extern void cap_task_reparent_to_init (struct task_struct *p); |
60 | extern int cap_task_kill(struct task_struct *p, struct siginfo *info, int sig, u32 secid); | ||
61 | extern int cap_task_setscheduler (struct task_struct *p, int policy, struct sched_param *lp); | 60 | extern int cap_task_setscheduler (struct task_struct *p, int policy, struct sched_param *lp); |
62 | extern int cap_task_setioprio (struct task_struct *p, int ioprio); | 61 | extern int cap_task_setioprio (struct task_struct *p, int ioprio); |
63 | extern int cap_task_setnice (struct task_struct *p, int nice); | 62 | extern int cap_task_setnice (struct task_struct *p, int nice); |
@@ -2187,7 +2186,7 @@ static inline int security_task_kill (struct task_struct *p, | |||
2187 | struct siginfo *info, int sig, | 2186 | struct siginfo *info, int sig, |
2188 | u32 secid) | 2187 | u32 secid) |
2189 | { | 2188 | { |
2190 | return cap_task_kill(p, info, sig, secid); | 2189 | return 0; |
2191 | } | 2190 | } |
2192 | 2191 | ||
2193 | static inline int security_task_wait (struct task_struct *p) | 2192 | static inline int security_task_wait (struct task_struct *p) |
diff --git a/include/linux/topology.h b/include/linux/topology.h index 2352f46160d3..bd14f8b30f09 100644 --- a/include/linux/topology.h +++ b/include/linux/topology.h | |||
@@ -50,6 +50,8 @@ | |||
50 | for_each_online_node(node) \ | 50 | for_each_online_node(node) \ |
51 | if (nr_cpus_node(node)) | 51 | if (nr_cpus_node(node)) |
52 | 52 | ||
53 | void arch_update_cpu_topology(void); | ||
54 | |||
53 | /* Conform to ACPI 2.0 SLIT distance definitions */ | 55 | /* Conform to ACPI 2.0 SLIT distance definitions */ |
54 | #define LOCAL_DISTANCE 10 | 56 | #define LOCAL_DISTANCE 10 |
55 | #define REMOTE_DISTANCE 20 | 57 | #define REMOTE_DISTANCE 20 |
@@ -138,7 +140,6 @@ | |||
138 | | SD_BALANCE_FORK \ | 140 | | SD_BALANCE_FORK \ |
139 | | SD_BALANCE_EXEC \ | 141 | | SD_BALANCE_EXEC \ |
140 | | SD_WAKE_AFFINE \ | 142 | | SD_WAKE_AFFINE \ |
141 | | SD_WAKE_IDLE \ | ||
142 | | SD_SHARE_PKG_RESOURCES\ | 143 | | SD_SHARE_PKG_RESOURCES\ |
143 | | BALANCE_FOR_MC_POWER, \ | 144 | | BALANCE_FOR_MC_POWER, \ |
144 | .last_balance = jiffies, \ | 145 | .last_balance = jiffies, \ |
diff --git a/include/linux/usb/quirks.h b/include/linux/usb/quirks.h index 2692ec9389ca..1f999ec8d08c 100644 --- a/include/linux/usb/quirks.h +++ b/include/linux/usb/quirks.h | |||
@@ -9,3 +9,6 @@ | |||
9 | 9 | ||
10 | /* device can't resume correctly so reset it instead */ | 10 | /* device can't resume correctly so reset it instead */ |
11 | #define USB_QUIRK_RESET_RESUME 0x00000002 | 11 | #define USB_QUIRK_RESET_RESUME 0x00000002 |
12 | |||
13 | /* device can't handle Set-Interface requests */ | ||
14 | #define USB_QUIRK_NO_SET_INTF 0x00000004 | ||
diff --git a/include/linux/usb_usual.h b/include/linux/usb_usual.h index cee0623b3c7b..0a40dfa44c9f 100644 --- a/include/linux/usb_usual.h +++ b/include/linux/usb_usual.h | |||
@@ -50,7 +50,9 @@ | |||
50 | US_FLAG(CAPACITY_HEURISTICS, 0x00001000) \ | 50 | US_FLAG(CAPACITY_HEURISTICS, 0x00001000) \ |
51 | /* sometimes sizes is too big */ \ | 51 | /* sometimes sizes is too big */ \ |
52 | US_FLAG(MAX_SECTORS_MIN,0x00002000) \ | 52 | US_FLAG(MAX_SECTORS_MIN,0x00002000) \ |
53 | /* Sets max_sectors to arch min */ | 53 | /* Sets max_sectors to arch min */ \ |
54 | US_FLAG(BULK_IGNORE_TAG,0x00004000) \ | ||
55 | /* Ignore tag mismatch in bulk operations */ | ||
54 | 56 | ||
55 | 57 | ||
56 | #define US_FLAG(name, value) US_FL_##name = value , | 58 | #define US_FLAG(name, value) US_FL_##name = value , |