diff options
author | Adrian Bunk <bunk@stusta.de> | 2006-02-03 17:49:49 -0500 |
---|---|---|
committer | Adrian Bunk <bunk@r063144.stusta.swh.mhn.de> | 2006-02-03 17:49:49 -0500 |
commit | 01d206a7c1167639f6ca6dac22140fbdca017558 (patch) | |
tree | bc3ccf1a8140a7f787c4728cfa4c30e65ad56eb2 /include/linux | |
parent | 9c4b562abc9005e4b413de02c85d3d29da707cba (diff) | |
parent | d6c8f6aaa1d7f68c1e6471ab0839d9047cdd159f (diff) |
Merge with git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'include/linux')
49 files changed, 280 insertions, 116 deletions
diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 026c3c011dc0..84d3d9f034ce 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h | |||
@@ -435,7 +435,7 @@ extern int sbf_port ; | |||
435 | 435 | ||
436 | #endif /* !CONFIG_ACPI */ | 436 | #endif /* !CONFIG_ACPI */ |
437 | 437 | ||
438 | int acpi_register_gsi (u32 gsi, int edge_level, int active_high_low); | 438 | int acpi_register_gsi (u32 gsi, int triggering, int polarity); |
439 | int acpi_gsi_to_irq (u32 gsi, unsigned int *irq); | 439 | int acpi_gsi_to_irq (u32 gsi, unsigned int *irq); |
440 | 440 | ||
441 | /* | 441 | /* |
diff --git a/include/linux/agpgart.h b/include/linux/agpgart.h index 17a17c55a17f..6d59c8efe3be 100644 --- a/include/linux/agpgart.h +++ b/include/linux/agpgart.h | |||
@@ -111,6 +111,7 @@ typedef struct _agp_unbind { | |||
111 | } agp_unbind; | 111 | } agp_unbind; |
112 | 112 | ||
113 | #else /* __KERNEL__ */ | 113 | #else /* __KERNEL__ */ |
114 | #include <linux/mutex.h> | ||
114 | 115 | ||
115 | #define AGPGART_MINOR 175 | 116 | #define AGPGART_MINOR 175 |
116 | 117 | ||
@@ -201,7 +202,7 @@ struct agp_file_private { | |||
201 | }; | 202 | }; |
202 | 203 | ||
203 | struct agp_front_data { | 204 | struct agp_front_data { |
204 | struct semaphore agp_mutex; | 205 | struct mutex agp_mutex; |
205 | struct agp_controller *current_controller; | 206 | struct agp_controller *current_controller; |
206 | struct agp_controller *controllers; | 207 | struct agp_controller *controllers; |
207 | struct agp_file_private *file_priv_list; | 208 | struct agp_file_private *file_priv_list; |
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/blkdev.h b/include/linux/blkdev.h index 02a585faa62c..860e7a485a5f 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
@@ -392,8 +392,8 @@ struct request_queue | |||
392 | unsigned int nr_congestion_off; | 392 | unsigned int nr_congestion_off; |
393 | unsigned int nr_batching; | 393 | unsigned int nr_batching; |
394 | 394 | ||
395 | unsigned short max_sectors; | 395 | unsigned int max_sectors; |
396 | unsigned short max_hw_sectors; | 396 | unsigned int max_hw_sectors; |
397 | unsigned short max_phys_segments; | 397 | unsigned short max_phys_segments; |
398 | unsigned short max_hw_segments; | 398 | unsigned short max_hw_segments; |
399 | unsigned short hardsect_size; | 399 | unsigned short hardsect_size; |
@@ -697,7 +697,7 @@ extern request_queue_t *blk_init_queue(request_fn_proc *, spinlock_t *); | |||
697 | extern void blk_cleanup_queue(request_queue_t *); | 697 | extern void blk_cleanup_queue(request_queue_t *); |
698 | extern void blk_queue_make_request(request_queue_t *, make_request_fn *); | 698 | extern void blk_queue_make_request(request_queue_t *, make_request_fn *); |
699 | extern void blk_queue_bounce_limit(request_queue_t *, u64); | 699 | extern void blk_queue_bounce_limit(request_queue_t *, u64); |
700 | extern void blk_queue_max_sectors(request_queue_t *, unsigned short); | 700 | extern void blk_queue_max_sectors(request_queue_t *, unsigned int); |
701 | extern void blk_queue_max_phys_segments(request_queue_t *, unsigned short); | 701 | extern void blk_queue_max_phys_segments(request_queue_t *, unsigned short); |
702 | extern void blk_queue_max_hw_segments(request_queue_t *, unsigned short); | 702 | extern void blk_queue_max_hw_segments(request_queue_t *, unsigned short); |
703 | extern void blk_queue_max_segment_size(request_queue_t *, unsigned int); | 703 | extern void blk_queue_max_segment_size(request_queue_t *, unsigned int); |
diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h index c31650df9241..17866d7e2b71 100644 --- a/include/linux/cpufreq.h +++ b/include/linux/cpufreq.h | |||
@@ -14,6 +14,7 @@ | |||
14 | #ifndef _LINUX_CPUFREQ_H | 14 | #ifndef _LINUX_CPUFREQ_H |
15 | #define _LINUX_CPUFREQ_H | 15 | #define _LINUX_CPUFREQ_H |
16 | 16 | ||
17 | #include <linux/mutex.h> | ||
17 | #include <linux/config.h> | 18 | #include <linux/config.h> |
18 | #include <linux/notifier.h> | 19 | #include <linux/notifier.h> |
19 | #include <linux/threads.h> | 20 | #include <linux/threads.h> |
@@ -82,7 +83,7 @@ struct cpufreq_policy { | |||
82 | unsigned int policy; /* see above */ | 83 | unsigned int policy; /* see above */ |
83 | struct cpufreq_governor *governor; /* see below */ | 84 | struct cpufreq_governor *governor; /* see below */ |
84 | 85 | ||
85 | struct semaphore lock; /* CPU ->setpolicy or ->target may | 86 | struct mutex lock; /* CPU ->setpolicy or ->target may |
86 | only be called once a time */ | 87 | only be called once a time */ |
87 | 88 | ||
88 | struct work_struct update; /* if update_policy() needs to be | 89 | struct work_struct update; /* if update_policy() needs to be |
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index a3ed5e059d47..a3f09947940e 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
@@ -108,7 +108,9 @@ struct dentry { | |||
108 | struct dentry_operations *d_op; | 108 | struct dentry_operations *d_op; |
109 | struct super_block *d_sb; /* The root of the dentry tree */ | 109 | struct super_block *d_sb; /* The root of the dentry tree */ |
110 | void *d_fsdata; /* fs-specific data */ | 110 | void *d_fsdata; /* fs-specific data */ |
111 | #ifdef CONFIG_PROFILING | ||
111 | struct dcookie_struct *d_cookie; /* cookie, if any */ | 112 | struct dcookie_struct *d_cookie; /* cookie, if any */ |
113 | #endif | ||
112 | int d_mounted; | 114 | int d_mounted; |
113 | unsigned char d_iname[DNAME_INLINE_LEN_MIN]; /* small names */ | 115 | unsigned char d_iname[DNAME_INLINE_LEN_MIN]; /* small names */ |
114 | }; | 116 | }; |
diff --git a/include/linux/device-mapper.h b/include/linux/device-mapper.h index 83c7d207b80e..51e0e95a421a 100644 --- a/include/linux/device-mapper.h +++ b/include/linux/device-mapper.h | |||
@@ -91,7 +91,7 @@ struct target_type { | |||
91 | }; | 91 | }; |
92 | 92 | ||
93 | struct io_restrictions { | 93 | struct io_restrictions { |
94 | unsigned short max_sectors; | 94 | unsigned int max_sectors; |
95 | unsigned short max_phys_segments; | 95 | unsigned short max_phys_segments; |
96 | unsigned short max_hw_segments; | 96 | unsigned short max_hw_segments; |
97 | unsigned short hardsect_size; | 97 | unsigned short hardsect_size; |
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/fs.h b/include/linux/fs.h index 84bb449b9b01..e059da947007 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -363,6 +363,8 @@ struct address_space_operations { | |||
363 | loff_t offset, unsigned long nr_segs); | 363 | loff_t offset, unsigned long nr_segs); |
364 | struct page* (*get_xip_page)(struct address_space *, sector_t, | 364 | struct page* (*get_xip_page)(struct address_space *, sector_t, |
365 | int); | 365 | int); |
366 | /* migrate the contents of a page to the specified target */ | ||
367 | int (*migratepage) (struct page *, struct page *); | ||
366 | }; | 368 | }; |
367 | 369 | ||
368 | struct backing_dev_info; | 370 | struct backing_dev_info; |
@@ -1719,6 +1721,12 @@ extern void simple_release_fs(struct vfsmount **mount, int *count); | |||
1719 | 1721 | ||
1720 | extern ssize_t simple_read_from_buffer(void __user *, size_t, loff_t *, const void *, size_t); | 1722 | extern ssize_t simple_read_from_buffer(void __user *, size_t, loff_t *, const void *, size_t); |
1721 | 1723 | ||
1724 | #ifdef CONFIG_MIGRATION | ||
1725 | extern int buffer_migrate_page(struct page *, struct page *); | ||
1726 | #else | ||
1727 | #define buffer_migrate_page NULL | ||
1728 | #endif | ||
1729 | |||
1722 | extern int inode_change_ok(struct inode *, struct iattr *); | 1730 | extern int inode_change_ok(struct inode *, struct iattr *); |
1723 | extern int __must_check inode_setattr(struct inode *, struct iattr *); | 1731 | extern int __must_check inode_setattr(struct inode *, struct iattr *); |
1724 | 1732 | ||
diff --git a/include/linux/fuse.h b/include/linux/fuse.h index 528959c52f1b..5425b60021e3 100644 --- a/include/linux/fuse.h +++ b/include/linux/fuse.h | |||
@@ -14,7 +14,7 @@ | |||
14 | #define FUSE_KERNEL_VERSION 7 | 14 | #define FUSE_KERNEL_VERSION 7 |
15 | 15 | ||
16 | /** Minor version number of this interface */ | 16 | /** Minor version number of this interface */ |
17 | #define FUSE_KERNEL_MINOR_VERSION 5 | 17 | #define FUSE_KERNEL_MINOR_VERSION 6 |
18 | 18 | ||
19 | /** The node ID of the root inode */ | 19 | /** The node ID of the root inode */ |
20 | #define FUSE_ROOT_ID 1 | 20 | #define FUSE_ROOT_ID 1 |
@@ -58,6 +58,9 @@ struct fuse_kstatfs { | |||
58 | __u32 spare[6]; | 58 | __u32 spare[6]; |
59 | }; | 59 | }; |
60 | 60 | ||
61 | /** | ||
62 | * Bitmasks for fuse_setattr_in.valid | ||
63 | */ | ||
61 | #define FATTR_MODE (1 << 0) | 64 | #define FATTR_MODE (1 << 0) |
62 | #define FATTR_UID (1 << 1) | 65 | #define FATTR_UID (1 << 1) |
63 | #define FATTR_GID (1 << 2) | 66 | #define FATTR_GID (1 << 2) |
@@ -75,6 +78,11 @@ struct fuse_kstatfs { | |||
75 | #define FOPEN_DIRECT_IO (1 << 0) | 78 | #define FOPEN_DIRECT_IO (1 << 0) |
76 | #define FOPEN_KEEP_CACHE (1 << 1) | 79 | #define FOPEN_KEEP_CACHE (1 << 1) |
77 | 80 | ||
81 | /** | ||
82 | * INIT request/reply flags | ||
83 | */ | ||
84 | #define FUSE_ASYNC_READ (1 << 0) | ||
85 | |||
78 | enum fuse_opcode { | 86 | enum fuse_opcode { |
79 | FUSE_LOOKUP = 1, | 87 | FUSE_LOOKUP = 1, |
80 | FUSE_FORGET = 2, /* no reply */ | 88 | FUSE_FORGET = 2, /* no reply */ |
@@ -247,12 +255,16 @@ struct fuse_access_in { | |||
247 | struct fuse_init_in { | 255 | struct fuse_init_in { |
248 | __u32 major; | 256 | __u32 major; |
249 | __u32 minor; | 257 | __u32 minor; |
258 | __u32 max_readahead; | ||
259 | __u32 flags; | ||
250 | }; | 260 | }; |
251 | 261 | ||
252 | struct fuse_init_out { | 262 | struct fuse_init_out { |
253 | __u32 major; | 263 | __u32 major; |
254 | __u32 minor; | 264 | __u32 minor; |
255 | __u32 unused[3]; | 265 | __u32 max_readahead; |
266 | __u32 flags; | ||
267 | __u32 unused; | ||
256 | __u32 max_write; | 268 | __u32 max_write; |
257 | }; | 269 | }; |
258 | 270 | ||
diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h index 089bfb1fa01a..6361544bb6ae 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h | |||
@@ -40,6 +40,7 @@ enum hrtimer_restart { | |||
40 | enum hrtimer_state { | 40 | enum hrtimer_state { |
41 | HRTIMER_INACTIVE, /* Timer is inactive */ | 41 | HRTIMER_INACTIVE, /* Timer is inactive */ |
42 | HRTIMER_EXPIRED, /* Timer is expired */ | 42 | HRTIMER_EXPIRED, /* Timer is expired */ |
43 | HRTIMER_RUNNING, /* Timer is running the callback function */ | ||
43 | HRTIMER_PENDING, /* Timer is pending */ | 44 | HRTIMER_PENDING, /* Timer is pending */ |
44 | }; | 45 | }; |
45 | 46 | ||
@@ -100,9 +101,8 @@ struct hrtimer_base { | |||
100 | /* Exported timer functions: */ | 101 | /* Exported timer functions: */ |
101 | 102 | ||
102 | /* Initialize timers: */ | 103 | /* Initialize timers: */ |
103 | extern void hrtimer_init(struct hrtimer *timer, const clockid_t which_clock); | 104 | extern void hrtimer_init(struct hrtimer *timer, clockid_t which_clock, |
104 | extern void hrtimer_rebase(struct hrtimer *timer, const clockid_t which_clock); | 105 | enum hrtimer_mode mode); |
105 | |||
106 | 106 | ||
107 | /* Basic timer operations: */ | 107 | /* Basic timer operations: */ |
108 | extern int hrtimer_start(struct hrtimer *timer, ktime_t tim, | 108 | extern int hrtimer_start(struct hrtimer *timer, ktime_t tim, |
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/io.h b/include/linux/io.h new file mode 100644 index 000000000000..85533ec5aaa1 --- /dev/null +++ b/include/linux/io.h | |||
@@ -0,0 +1,25 @@ | |||
1 | /* | ||
2 | * Copyright 2006 PathScale, Inc. All Rights Reserved. | ||
3 | * | ||
4 | * This file is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of version 2 of the GNU General Public License | ||
6 | * as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope that it will be useful, | ||
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
11 | * GNU General Public License for more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program; if not, write to the Free Software Foundation, | ||
15 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. | ||
16 | */ | ||
17 | |||
18 | #ifndef _LINUX_IO_H | ||
19 | #define _LINUX_IO_H | ||
20 | |||
21 | #include <asm/io.h> | ||
22 | |||
23 | void __iowrite32_copy(void __iomem *to, const void *from, size_t count); | ||
24 | |||
25 | #endif /* _LINUX_IO_H */ | ||
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/kernel.h b/include/linux/kernel.h index a5363324cf95..b49affa0ac5a 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
@@ -185,6 +185,7 @@ extern enum system_states { | |||
185 | SYSTEM_HALT, | 185 | SYSTEM_HALT, |
186 | SYSTEM_POWER_OFF, | 186 | SYSTEM_POWER_OFF, |
187 | SYSTEM_RESTART, | 187 | SYSTEM_RESTART, |
188 | SYSTEM_SUSPEND_DISK, | ||
188 | } system_state; | 189 | } system_state; |
189 | 190 | ||
190 | #define TAINT_PROPRIETARY_MODULE (1<<0) | 191 | #define TAINT_PROPRIETARY_MODULE (1<<0) |
diff --git a/include/linux/ktime.h b/include/linux/ktime.h index 1bd6552cc341..6aca67a569a2 100644 --- a/include/linux/ktime.h +++ b/include/linux/ktime.h | |||
@@ -10,6 +10,12 @@ | |||
10 | * | 10 | * |
11 | * Started by: Thomas Gleixner and Ingo Molnar | 11 | * Started by: Thomas Gleixner and Ingo Molnar |
12 | * | 12 | * |
13 | * Credits: | ||
14 | * | ||
15 | * Roman Zippel provided the ideas and primary code snippets of | ||
16 | * the ktime_t union and further simplifications of the original | ||
17 | * code. | ||
18 | * | ||
13 | * For licencing details see kernel-base/COPYING | 19 | * For licencing details see kernel-base/COPYING |
14 | */ | 20 | */ |
15 | #ifndef _LINUX_KTIME_H | 21 | #ifndef _LINUX_KTIME_H |
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/mmzone.h b/include/linux/mmzone.h index 93a849f742db..ebfc238cc243 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h | |||
@@ -91,10 +91,21 @@ struct per_cpu_pageset { | |||
91 | * be 8 (2 ** 3) zonelists. GFP_ZONETYPES defines the number of possible | 91 | * be 8 (2 ** 3) zonelists. GFP_ZONETYPES defines the number of possible |
92 | * combinations of zone modifiers in "zone modifier space". | 92 | * combinations of zone modifiers in "zone modifier space". |
93 | * | 93 | * |
94 | * As an optimisation any zone modifier bits which are only valid when | ||
95 | * no other zone modifier bits are set (loners) should be placed in | ||
96 | * the highest order bits of this field. This allows us to reduce the | ||
97 | * extent of the zonelists thus saving space. For example in the case | ||
98 | * of three zone modifier bits, we could require up to eight zonelists. | ||
99 | * If the left most zone modifier is a "loner" then the highest valid | ||
100 | * zonelist would be four allowing us to allocate only five zonelists. | ||
101 | * Use the first form for GFP_ZONETYPES when the left most bit is not | ||
102 | * a "loner", otherwise use the second. | ||
103 | * | ||
94 | * NOTE! Make sure this matches the zones in <linux/gfp.h> | 104 | * NOTE! Make sure this matches the zones in <linux/gfp.h> |
95 | */ | 105 | */ |
96 | #define GFP_ZONEMASK 0x07 | 106 | #define GFP_ZONEMASK 0x07 |
97 | #define GFP_ZONETYPES 5 | 107 | /* #define GFP_ZONETYPES (GFP_ZONEMASK + 1) */ /* Non-loner */ |
108 | #define GFP_ZONETYPES ((GFP_ZONEMASK + 1) / 2 + 1) /* Loner */ | ||
98 | 109 | ||
99 | /* | 110 | /* |
100 | * On machines where it is needed (eg PCs) we divide physical memory | 111 | * On machines where it is needed (eg PCs) we divide physical memory |
diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h index 472f04834809..6500d4e59d46 100644 --- a/include/linux/netfilter/x_tables.h +++ b/include/linux/netfilter/x_tables.h | |||
@@ -19,7 +19,21 @@ struct xt_get_revision | |||
19 | /* For standard target */ | 19 | /* For standard target */ |
20 | #define XT_RETURN (-NF_REPEAT - 1) | 20 | #define XT_RETURN (-NF_REPEAT - 1) |
21 | 21 | ||
22 | #define XT_ALIGN(s) (((s) + (__alignof__(void *)-1)) & ~(__alignof__(void *)-1)) | 22 | /* this is a dummy structure to find out the alignment requirement for a struct |
23 | * containing all the fundamental data types that are used in ipt_entry, | ||
24 | * ip6t_entry and arpt_entry. This sucks, and it is a hack. It will be my | ||
25 | * personal pleasure to remove it -HW | ||
26 | */ | ||
27 | struct _xt_align | ||
28 | { | ||
29 | u_int8_t u8; | ||
30 | u_int16_t u16; | ||
31 | u_int32_t u32; | ||
32 | u_int64_t u64; | ||
33 | }; | ||
34 | |||
35 | #define XT_ALIGN(s) (((s) + (__alignof__(struct _xt_align)-1)) \ | ||
36 | & ~(__alignof__(struct _xt_align)-1)) | ||
23 | 37 | ||
24 | /* Standard return verdict, or do jump. */ | 38 | /* Standard return verdict, or do jump. */ |
25 | #define XT_STANDARD_TARGET "" | 39 | #define XT_STANDARD_TARGET "" |
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.h b/include/linux/pci.h index 0a44072383ec..fe1a2b02fc55 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -406,7 +406,6 @@ struct pci_dev *pci_find_device_reverse (unsigned int vendor, unsigned int devic | |||
406 | struct pci_dev *pci_find_slot (unsigned int bus, unsigned int devfn); | 406 | struct pci_dev *pci_find_slot (unsigned int bus, unsigned int devfn); |
407 | int pci_find_capability (struct pci_dev *dev, int cap); | 407 | int pci_find_capability (struct pci_dev *dev, int cap); |
408 | int pci_find_next_capability (struct pci_dev *dev, u8 pos, int cap); | 408 | int pci_find_next_capability (struct pci_dev *dev, u8 pos, int cap); |
409 | int pci_find_ext_capability (struct pci_dev *dev, int cap); | ||
410 | struct pci_bus * pci_find_next_bus(const struct pci_bus *from); | 409 | struct pci_bus * pci_find_next_bus(const struct pci_bus *from); |
411 | 410 | ||
412 | struct pci_dev *pci_get_device (unsigned int vendor, unsigned int device, struct pci_dev *from); | 411 | struct pci_dev *pci_get_device (unsigned int vendor, unsigned int device, struct pci_dev *from); |
@@ -626,7 +625,6 @@ static inline int pci_register_driver(struct pci_driver *drv) { return 0;} | |||
626 | static inline void pci_unregister_driver(struct pci_driver *drv) { } | 625 | static inline void pci_unregister_driver(struct pci_driver *drv) { } |
627 | static inline int pci_find_capability (struct pci_dev *dev, int cap) {return 0; } | 626 | static inline int pci_find_capability (struct pci_dev *dev, int cap) {return 0; } |
628 | static inline int pci_find_next_capability (struct pci_dev *dev, u8 post, int cap) { return 0; } | 627 | static inline int pci_find_next_capability (struct pci_dev *dev, u8 post, int cap) { return 0; } |
629 | static inline int pci_find_ext_capability (struct pci_dev *dev, int cap) {return 0; } | ||
630 | static inline const struct pci_device_id *pci_match_device(const struct pci_device_id *ids, const struct pci_dev *dev) { return NULL; } | 628 | static inline const struct pci_device_id *pci_match_device(const struct pci_device_id *ids, const struct pci_dev *dev) { return NULL; } |
631 | 629 | ||
632 | /* Power management related routines */ | 630 | /* Power management related routines */ |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index ecc1fc1f0f04..b0b908f583c5 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
@@ -394,14 +394,9 @@ | |||
394 | #define PCI_DEVICE_ID_NS_SC1100_SMI 0x0511 | 394 | #define PCI_DEVICE_ID_NS_SC1100_SMI 0x0511 |
395 | #define PCI_DEVICE_ID_NS_SC1100_XBUS 0x0515 | 395 | #define PCI_DEVICE_ID_NS_SC1100_XBUS 0x0515 |
396 | #define PCI_DEVICE_ID_NS_87410 0xd001 | 396 | #define PCI_DEVICE_ID_NS_87410 0xd001 |
397 | #define PCI_DEVICE_ID_NS_CS5535_IDE 0x002d | ||
398 | 397 | ||
399 | #define PCI_DEVICE_ID_NS_CS5535_HOST_BRIDGE 0x0028 | 398 | #define PCI_DEVICE_ID_NS_CS5535_HOST_BRIDGE 0x0028 |
400 | #define PCI_DEVICE_ID_NS_CS5535_ISA_BRIDGE 0x002b | 399 | #define PCI_DEVICE_ID_NS_CS5535_ISA_BRIDGE 0x002b |
401 | #define PCI_DEVICE_ID_NS_CS5535_IDE 0x002d | ||
402 | #define PCI_DEVICE_ID_NS_CS5535_AUDIO 0x002e | ||
403 | #define PCI_DEVICE_ID_NS_CS5535_USB 0x002f | ||
404 | #define PCI_DEVICE_ID_NS_CS5535_VIDEO 0x0030 | ||
405 | 400 | ||
406 | #define PCI_VENDOR_ID_TSENG 0x100c | 401 | #define PCI_VENDOR_ID_TSENG 0x100c |
407 | #define PCI_DEVICE_ID_TSENG_W32P_2 0x3202 | 402 | #define PCI_DEVICE_ID_TSENG_W32P_2 0x3202 |
@@ -511,8 +506,6 @@ | |||
511 | #define PCI_DEVICE_ID_AMD_CS5536_UOC 0x2097 | 506 | #define PCI_DEVICE_ID_AMD_CS5536_UOC 0x2097 |
512 | #define PCI_DEVICE_ID_AMD_CS5536_IDE 0x209A | 507 | #define PCI_DEVICE_ID_AMD_CS5536_IDE 0x209A |
513 | 508 | ||
514 | #define PCI_DEVICE_ID_AMD_CS5536_IDE 0x209A | ||
515 | |||
516 | #define PCI_DEVICE_ID_AMD_LX_VIDEO 0x2081 | 509 | #define PCI_DEVICE_ID_AMD_LX_VIDEO 0x2081 |
517 | #define PCI_DEVICE_ID_AMD_LX_AES 0x2082 | 510 | #define PCI_DEVICE_ID_AMD_LX_AES 0x2082 |
518 | 511 | ||
@@ -2065,6 +2058,7 @@ | |||
2065 | #define PCI_DEVICE_ID_INTEL_82801EB_5 0x24d5 | 2058 | #define PCI_DEVICE_ID_INTEL_82801EB_5 0x24d5 |
2066 | #define PCI_DEVICE_ID_INTEL_82801EB_6 0x24d6 | 2059 | #define PCI_DEVICE_ID_INTEL_82801EB_6 0x24d6 |
2067 | #define PCI_DEVICE_ID_INTEL_82801EB_11 0x24db | 2060 | #define PCI_DEVICE_ID_INTEL_82801EB_11 0x24db |
2061 | #define PCI_DEVICE_ID_INTEL_82801EB_13 0x24dd | ||
2068 | #define PCI_DEVICE_ID_INTEL_ESB_1 0x25a1 | 2062 | #define PCI_DEVICE_ID_INTEL_ESB_1 0x25a1 |
2069 | #define PCI_DEVICE_ID_INTEL_ESB_2 0x25a2 | 2063 | #define PCI_DEVICE_ID_INTEL_ESB_2 0x25a2 |
2070 | #define PCI_DEVICE_ID_INTEL_ESB_4 0x25a4 | 2064 | #define PCI_DEVICE_ID_INTEL_ESB_4 0x25a4 |
@@ -2085,6 +2079,8 @@ | |||
2085 | #define PCI_DEVICE_ID_INTEL_82915GM_IG 0x2592 | 2079 | #define PCI_DEVICE_ID_INTEL_82915GM_IG 0x2592 |
2086 | #define PCI_DEVICE_ID_INTEL_82945G_HB 0x2770 | 2080 | #define PCI_DEVICE_ID_INTEL_82945G_HB 0x2770 |
2087 | #define PCI_DEVICE_ID_INTEL_82945G_IG 0x2772 | 2081 | #define PCI_DEVICE_ID_INTEL_82945G_IG 0x2772 |
2082 | #define PCI_DEVICE_ID_INTEL_82945GM_HB 0x27A0 | ||
2083 | #define PCI_DEVICE_ID_INTEL_82945GM_IG 0x27A2 | ||
2088 | #define PCI_DEVICE_ID_INTEL_ICH6_0 0x2640 | 2084 | #define PCI_DEVICE_ID_INTEL_ICH6_0 0x2640 |
2089 | #define PCI_DEVICE_ID_INTEL_ICH6_1 0x2641 | 2085 | #define PCI_DEVICE_ID_INTEL_ICH6_1 0x2641 |
2090 | #define PCI_DEVICE_ID_INTEL_ICH6_2 0x2642 | 2086 | #define PCI_DEVICE_ID_INTEL_ICH6_2 0x2642 |
@@ -2104,6 +2100,13 @@ | |||
2104 | #define PCI_DEVICE_ID_INTEL_ICH7_19 0x27dd | 2100 | #define PCI_DEVICE_ID_INTEL_ICH7_19 0x27dd |
2105 | #define PCI_DEVICE_ID_INTEL_ICH7_20 0x27de | 2101 | #define PCI_DEVICE_ID_INTEL_ICH7_20 0x27de |
2106 | #define PCI_DEVICE_ID_INTEL_ICH7_21 0x27df | 2102 | #define PCI_DEVICE_ID_INTEL_ICH7_21 0x27df |
2103 | #define PCI_DEVICE_ID_INTEL_ICH8_0 0x2810 | ||
2104 | #define PCI_DEVICE_ID_INTEL_ICH8_1 0x2811 | ||
2105 | #define PCI_DEVICE_ID_INTEL_ICH8_2 0x2812 | ||
2106 | #define PCI_DEVICE_ID_INTEL_ICH8_3 0x2814 | ||
2107 | #define PCI_DEVICE_ID_INTEL_ICH8_4 0x2815 | ||
2108 | #define PCI_DEVICE_ID_INTEL_ICH8_5 0x283e | ||
2109 | #define PCI_DEVICE_ID_INTEL_ICH8_6 0x2850 | ||
2107 | #define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340 | 2110 | #define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340 |
2108 | #define PCI_DEVICE_ID_INTEL_82830_HB 0x3575 | 2111 | #define PCI_DEVICE_ID_INTEL_82830_HB 0x3575 |
2109 | #define PCI_DEVICE_ID_INTEL_82830_CGC 0x3577 | 2112 | #define PCI_DEVICE_ID_INTEL_82830_CGC 0x3577 |
@@ -2147,6 +2150,7 @@ | |||
2147 | #define PCI_DEVICE_ID_INTEL_82443GX_2 0x71a2 | 2150 | #define PCI_DEVICE_ID_INTEL_82443GX_2 0x71a2 |
2148 | #define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601 | 2151 | #define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601 |
2149 | #define PCI_DEVICE_ID_INTEL_82454GX 0x84c4 | 2152 | #define PCI_DEVICE_ID_INTEL_82454GX 0x84c4 |
2153 | #define PCI_DEVICE_ID_INTEL_82450GX 0x84c5 | ||
2150 | #define PCI_DEVICE_ID_INTEL_82451NX 0x84ca | 2154 | #define PCI_DEVICE_ID_INTEL_82451NX 0x84ca |
2151 | #define PCI_DEVICE_ID_INTEL_82454NX 0x84cb | 2155 | #define PCI_DEVICE_ID_INTEL_82454NX 0x84cb |
2152 | #define PCI_DEVICE_ID_INTEL_84460GX 0x84ea | 2156 | #define PCI_DEVICE_ID_INTEL_84460GX 0x84ea |
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h index 54faf5236da0..95572c434bc9 100644 --- a/include/linux/posix-timers.h +++ b/include/linux/posix-timers.h | |||
@@ -84,7 +84,6 @@ struct k_clock { | |||
84 | void register_posix_clock(const clockid_t clock_id, struct k_clock *new_clock); | 84 | void register_posix_clock(const clockid_t clock_id, struct k_clock *new_clock); |
85 | 85 | ||
86 | /* error handlers for timer_create, nanosleep and settime */ | 86 | /* error handlers for timer_create, nanosleep and settime */ |
87 | int do_posix_clock_notimer_create(struct k_itimer *timer); | ||
88 | int do_posix_clock_nonanosleep(const clockid_t, int flags, struct timespec *, | 87 | int do_posix_clock_nonanosleep(const clockid_t, int flags, struct timespec *, |
89 | struct timespec __user *); | 88 | struct timespec __user *); |
90 | int do_posix_clock_nosettime(const clockid_t, struct timespec *tp); | 89 | int do_posix_clock_nosettime(const clockid_t, struct timespec *tp); |
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/reboot.h b/include/linux/reboot.h index 7ab2cdb83ef0..015297ff73fa 100644 --- a/include/linux/reboot.h +++ b/include/linux/reboot.h | |||
@@ -60,8 +60,7 @@ extern void machine_crash_shutdown(struct pt_regs *); | |||
60 | */ | 60 | */ |
61 | 61 | ||
62 | extern void kernel_restart_prepare(char *cmd); | 62 | extern void kernel_restart_prepare(char *cmd); |
63 | extern void kernel_halt_prepare(void); | 63 | extern void kernel_shutdown_prepare(enum system_states state); |
64 | extern void kernel_power_off_prepare(void); | ||
65 | 64 | ||
66 | extern void kernel_restart(char *cmd); | 65 | extern void kernel_restart(char *cmd); |
67 | extern void kernel_halt(void); | 66 | extern void kernel_halt(void); |
diff --git a/include/linux/reiserfs_fs.h b/include/linux/reiserfs_fs.h index e276c5ba2bb7..7d51149bd793 100644 --- a/include/linux/reiserfs_fs.h +++ b/include/linux/reiserfs_fs.h | |||
@@ -1971,22 +1971,6 @@ extern struct file_operations reiserfs_file_operations; | |||
1971 | extern struct address_space_operations reiserfs_address_space_operations; | 1971 | extern struct address_space_operations reiserfs_address_space_operations; |
1972 | 1972 | ||
1973 | /* fix_nodes.c */ | 1973 | /* fix_nodes.c */ |
1974 | #ifdef CONFIG_REISERFS_CHECK | ||
1975 | void *reiserfs_kmalloc(size_t size, gfp_t flags, struct super_block *s); | ||
1976 | void reiserfs_kfree(const void *vp, size_t size, struct super_block *s); | ||
1977 | #else | ||
1978 | static inline void *reiserfs_kmalloc(size_t size, int flags, | ||
1979 | struct super_block *s) | ||
1980 | { | ||
1981 | return kmalloc(size, flags); | ||
1982 | } | ||
1983 | |||
1984 | static inline void reiserfs_kfree(const void *vp, size_t size, | ||
1985 | struct super_block *s) | ||
1986 | { | ||
1987 | kfree(vp); | ||
1988 | } | ||
1989 | #endif | ||
1990 | 1974 | ||
1991 | int fix_nodes(int n_op_mode, struct tree_balance *p_s_tb, | 1975 | int fix_nodes(int n_op_mode, struct tree_balance *p_s_tb, |
1992 | struct item_head *p_s_ins_ih, const void *); | 1976 | struct item_head *p_s_ins_ih, const void *); |
diff --git a/include/linux/reiserfs_fs_sb.h b/include/linux/reiserfs_fs_sb.h index 3e68592e52e9..31b4c0bd4fa0 100644 --- a/include/linux/reiserfs_fs_sb.h +++ b/include/linux/reiserfs_fs_sb.h | |||
@@ -382,7 +382,6 @@ struct reiserfs_sb_info { | |||
382 | on-disk FS format */ | 382 | on-disk FS format */ |
383 | 383 | ||
384 | /* session statistics */ | 384 | /* session statistics */ |
385 | int s_kmallocs; | ||
386 | int s_disk_reads; | 385 | int s_disk_reads; |
387 | int s_disk_writes; | 386 | int s_disk_writes; |
388 | int s_fix_nodes; | 387 | int s_fix_nodes; |
diff --git a/include/linux/reiserfs_xattr.h b/include/linux/reiserfs_xattr.h index c84354e8374c..87280eb6083d 100644 --- a/include/linux/reiserfs_xattr.h +++ b/include/linux/reiserfs_xattr.h | |||
@@ -43,8 +43,6 @@ int reiserfs_delete_xattrs(struct inode *inode); | |||
43 | int reiserfs_chown_xattrs(struct inode *inode, struct iattr *attrs); | 43 | int reiserfs_chown_xattrs(struct inode *inode, struct iattr *attrs); |
44 | int reiserfs_xattr_init(struct super_block *sb, int mount_flags); | 44 | int reiserfs_xattr_init(struct super_block *sb, int mount_flags); |
45 | int reiserfs_permission(struct inode *inode, int mask, struct nameidata *nd); | 45 | int reiserfs_permission(struct inode *inode, int mask, struct nameidata *nd); |
46 | int reiserfs_permission_locked(struct inode *inode, int mask, | ||
47 | struct nameidata *nd); | ||
48 | 46 | ||
49 | int reiserfs_xattr_del(struct inode *, const char *); | 47 | int reiserfs_xattr_del(struct inode *, const char *); |
50 | int reiserfs_xattr_get(const struct inode *, const char *, void *, size_t); | 48 | int reiserfs_xattr_get(const struct inode *, const char *, void *, size_t); |
diff --git a/include/linux/rmap.h b/include/linux/rmap.h index 9d6fbeef2104..d6b9bcd1384c 100644 --- a/include/linux/rmap.h +++ b/include/linux/rmap.h | |||
@@ -91,7 +91,8 @@ static inline void page_dup_rmap(struct page *page) | |||
91 | * Called from mm/vmscan.c to handle paging out | 91 | * Called from mm/vmscan.c to handle paging out |
92 | */ | 92 | */ |
93 | int page_referenced(struct page *, int is_locked); | 93 | int page_referenced(struct page *, int is_locked); |
94 | int try_to_unmap(struct page *); | 94 | int try_to_unmap(struct page *, int ignore_refs); |
95 | void remove_from_swap(struct page *page); | ||
95 | 96 | ||
96 | /* | 97 | /* |
97 | * Called from mm/filemap_xip.c to unmap empty zero page | 98 | * Called from mm/filemap_xip.c to unmap empty zero page |
@@ -111,7 +112,7 @@ unsigned long page_address_in_vma(struct page *, struct vm_area_struct *); | |||
111 | #define anon_vma_link(vma) do {} while (0) | 112 | #define anon_vma_link(vma) do {} while (0) |
112 | 113 | ||
113 | #define page_referenced(page,l) TestClearPageReferenced(page) | 114 | #define page_referenced(page,l) TestClearPageReferenced(page) |
114 | #define try_to_unmap(page) SWAP_FAIL | 115 | #define try_to_unmap(page, refs) SWAP_FAIL |
115 | 116 | ||
116 | #endif /* CONFIG_MMU */ | 117 | #endif /* CONFIG_MMU */ |
117 | 118 | ||
diff --git a/include/linux/security.h b/include/linux/security.h index ef753654daa5..bb1da86747c7 100644 --- a/include/linux/security.h +++ b/include/linux/security.h | |||
@@ -2617,6 +2617,25 @@ static inline int security_netlink_recv (struct sk_buff *skb) | |||
2617 | return cap_netlink_recv (skb); | 2617 | return cap_netlink_recv (skb); |
2618 | } | 2618 | } |
2619 | 2619 | ||
2620 | static inline struct dentry *securityfs_create_dir(const char *name, | ||
2621 | struct dentry *parent) | ||
2622 | { | ||
2623 | return ERR_PTR(-ENODEV); | ||
2624 | } | ||
2625 | |||
2626 | static inline struct dentry *securityfs_create_file(const char *name, | ||
2627 | mode_t mode, | ||
2628 | struct dentry *parent, | ||
2629 | void *data, | ||
2630 | struct file_operations *fops) | ||
2631 | { | ||
2632 | return ERR_PTR(-ENODEV); | ||
2633 | } | ||
2634 | |||
2635 | static inline void securityfs_remove(struct dentry *dentry) | ||
2636 | { | ||
2637 | } | ||
2638 | |||
2620 | #endif /* CONFIG_SECURITY */ | 2639 | #endif /* CONFIG_SECURITY */ |
2621 | 2640 | ||
2622 | #ifdef CONFIG_SECURITY_NETWORK | 2641 | #ifdef CONFIG_SECURITY_NETWORK |
diff --git a/include/linux/serial_8250.h b/include/linux/serial_8250.h index cee302aefdb7..73b464f0926a 100644 --- a/include/linux/serial_8250.h +++ b/include/linux/serial_8250.h | |||
@@ -26,7 +26,7 @@ struct plat_serial8250_port { | |||
26 | unsigned char regshift; /* register shift */ | 26 | unsigned char regshift; /* register shift */ |
27 | unsigned char iotype; /* UPIO_* */ | 27 | unsigned char iotype; /* UPIO_* */ |
28 | unsigned char hub6; | 28 | unsigned char hub6; |
29 | unsigned int flags; /* UPF_* flags */ | 29 | upf_t flags; /* UPF_* flags */ |
30 | }; | 30 | }; |
31 | 31 | ||
32 | /* | 32 | /* |
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h index ec351005bf9d..4041122dabfc 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h | |||
@@ -203,6 +203,8 @@ struct uart_icount { | |||
203 | __u32 buf_overrun; | 203 | __u32 buf_overrun; |
204 | }; | 204 | }; |
205 | 205 | ||
206 | typedef unsigned int __bitwise__ upf_t; | ||
207 | |||
206 | struct uart_port { | 208 | struct uart_port { |
207 | spinlock_t lock; /* port lock */ | 209 | spinlock_t lock; /* port lock */ |
208 | unsigned int iobase; /* in/out[bwl] */ | 210 | unsigned int iobase; /* in/out[bwl] */ |
@@ -230,36 +232,34 @@ struct uart_port { | |||
230 | unsigned long sysrq; /* sysrq timeout */ | 232 | unsigned long sysrq; /* sysrq timeout */ |
231 | #endif | 233 | #endif |
232 | 234 | ||
233 | unsigned int flags; | 235 | upf_t flags; |
234 | 236 | ||
235 | #define UPF_FOURPORT (1 << 1) | 237 | #define UPF_FOURPORT ((__force upf_t) (1 << 1)) |
236 | #define UPF_SAK (1 << 2) | 238 | #define UPF_SAK ((__force upf_t) (1 << 2)) |
237 | #define UPF_SPD_MASK (0x1030) | 239 | #define UPF_SPD_MASK ((__force upf_t) (0x1030)) |
238 | #define UPF_SPD_HI (0x0010) | 240 | #define UPF_SPD_HI ((__force upf_t) (0x0010)) |
239 | #define UPF_SPD_VHI (0x0020) | 241 | #define UPF_SPD_VHI ((__force upf_t) (0x0020)) |
240 | #define UPF_SPD_CUST (0x0030) | 242 | #define UPF_SPD_CUST ((__force upf_t) (0x0030)) |
241 | #define UPF_SPD_SHI (0x1000) | 243 | #define UPF_SPD_SHI ((__force upf_t) (0x1000)) |
242 | #define UPF_SPD_WARP (0x1010) | 244 | #define UPF_SPD_WARP ((__force upf_t) (0x1010)) |
243 | #define UPF_SKIP_TEST (1 << 6) | 245 | #define UPF_SKIP_TEST ((__force upf_t) (1 << 6)) |
244 | #define UPF_AUTO_IRQ (1 << 7) | 246 | #define UPF_AUTO_IRQ ((__force upf_t) (1 << 7)) |
245 | #define UPF_HARDPPS_CD (1 << 11) | 247 | #define UPF_HARDPPS_CD ((__force upf_t) (1 << 11)) |
246 | #define UPF_LOW_LATENCY (1 << 13) | 248 | #define UPF_LOW_LATENCY ((__force upf_t) (1 << 13)) |
247 | #define UPF_BUGGY_UART (1 << 14) | 249 | #define UPF_BUGGY_UART ((__force upf_t) (1 << 14)) |
248 | #define UPF_AUTOPROBE (1 << 15) | 250 | #define UPF_MAGIC_MULTIPLIER ((__force upf_t) (1 << 16)) |
249 | #define UPF_MAGIC_MULTIPLIER (1 << 16) | 251 | #define UPF_CONS_FLOW ((__force upf_t) (1 << 23)) |
250 | #define UPF_BOOT_ONLYMCA (1 << 22) | 252 | #define UPF_SHARE_IRQ ((__force upf_t) (1 << 24)) |
251 | #define UPF_CONS_FLOW (1 << 23) | 253 | #define UPF_BOOT_AUTOCONF ((__force upf_t) (1 << 28)) |
252 | #define UPF_SHARE_IRQ (1 << 24) | 254 | #define UPF_IOREMAP ((__force upf_t) (1 << 31)) |
253 | #define UPF_BOOT_AUTOCONF (1 << 28) | 255 | |
254 | #define UPF_IOREMAP (1 << 31) | 256 | #define UPF_CHANGE_MASK ((__force upf_t) (0x17fff)) |
255 | 257 | #define UPF_USR_MASK ((__force upf_t) (UPF_SPD_MASK|UPF_LOW_LATENCY)) | |
256 | #define UPF_CHANGE_MASK (0x17fff) | ||
257 | #define UPF_USR_MASK (UPF_SPD_MASK|UPF_LOW_LATENCY) | ||
258 | 258 | ||
259 | unsigned int mctrl; /* current modem ctrl settings */ | 259 | unsigned int mctrl; /* current modem ctrl settings */ |
260 | unsigned int timeout; /* character-based timeout */ | 260 | unsigned int timeout; /* character-based timeout */ |
261 | unsigned int type; /* port type */ | 261 | unsigned int type; /* port type */ |
262 | struct uart_ops *ops; | 262 | const struct uart_ops *ops; |
263 | unsigned int custom_divisor; | 263 | unsigned int custom_divisor; |
264 | unsigned int line; /* port index */ | 264 | unsigned int line; /* port index */ |
265 | unsigned long mapbase; /* for ioremap */ | 265 | unsigned long mapbase; /* for ioremap */ |
@@ -289,6 +289,9 @@ struct uart_state { | |||
289 | }; | 289 | }; |
290 | 290 | ||
291 | #define UART_XMIT_SIZE PAGE_SIZE | 291 | #define UART_XMIT_SIZE PAGE_SIZE |
292 | |||
293 | typedef unsigned int __bitwise__ uif_t; | ||
294 | |||
292 | /* | 295 | /* |
293 | * This is the state information which is only valid when the port | 296 | * This is the state information which is only valid when the port |
294 | * is open; it may be freed by the core driver once the device has | 297 | * is open; it may be freed by the core driver once the device has |
@@ -298,17 +301,16 @@ struct uart_state { | |||
298 | struct uart_info { | 301 | struct uart_info { |
299 | struct tty_struct *tty; | 302 | struct tty_struct *tty; |
300 | struct circ_buf xmit; | 303 | struct circ_buf xmit; |
301 | unsigned int flags; | 304 | uif_t flags; |
302 | 305 | ||
303 | /* | 306 | /* |
304 | * These are the flags that specific to info->flags, and reflect our | 307 | * Definitions for info->flags. These are _private_ to serial_core, and |
305 | * internal state. They can not be accessed via port->flags. Low | 308 | * are specific to this structure. They may be queried by low level drivers. |
306 | * level drivers must not change these, but may query them instead. | ||
307 | */ | 309 | */ |
308 | #define UIF_CHECK_CD (1 << 25) | 310 | #define UIF_CHECK_CD ((__force uif_t) (1 << 25)) |
309 | #define UIF_CTS_FLOW (1 << 26) | 311 | #define UIF_CTS_FLOW ((__force uif_t) (1 << 26)) |
310 | #define UIF_NORMAL_ACTIVE (1 << 29) | 312 | #define UIF_NORMAL_ACTIVE ((__force uif_t) (1 << 29)) |
311 | #define UIF_INITIALIZED (1 << 31) | 313 | #define UIF_INITIALIZED ((__force uif_t) (1 << 31)) |
312 | 314 | ||
313 | int blocked_open; | 315 | int blocked_open; |
314 | 316 | ||
@@ -430,7 +432,7 @@ static inline int uart_handle_break(struct uart_port *port) | |||
430 | port->sysrq = 0; | 432 | port->sysrq = 0; |
431 | } | 433 | } |
432 | #endif | 434 | #endif |
433 | if (info->flags & UPF_SAK) | 435 | if (port->flags & UPF_SAK) |
434 | do_SAK(info->tty); | 436 | do_SAK(info->tty); |
435 | return 0; | 437 | return 0; |
436 | } | 438 | } |
diff --git a/include/linux/slab.h b/include/linux/slab.h index 1fb77a9cc148..8cf52939d0ab 100644 --- a/include/linux/slab.h +++ b/include/linux/slab.h | |||
@@ -76,7 +76,14 @@ struct cache_sizes { | |||
76 | kmem_cache_t *cs_dmacachep; | 76 | kmem_cache_t *cs_dmacachep; |
77 | }; | 77 | }; |
78 | extern struct cache_sizes malloc_sizes[]; | 78 | extern struct cache_sizes malloc_sizes[]; |
79 | |||
80 | #ifndef CONFIG_DEBUG_SLAB | ||
79 | extern void *__kmalloc(size_t, gfp_t); | 81 | extern void *__kmalloc(size_t, gfp_t); |
82 | #else | ||
83 | extern void *__kmalloc_track_caller(size_t, gfp_t, void*); | ||
84 | #define __kmalloc(size, flags) \ | ||
85 | __kmalloc_track_caller(size, flags, __builtin_return_address(0)) | ||
86 | #endif | ||
80 | 87 | ||
81 | static inline void *kmalloc(size_t size, gfp_t flags) | 88 | static inline void *kmalloc(size_t size, gfp_t flags) |
82 | { | 89 | { |
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..43bcd13eb1ec 100644 --- a/include/linux/suspend.h +++ b/include/linux/suspend.h | |||
@@ -42,10 +42,6 @@ extern void mark_free_pages(struct zone *zone); | |||
42 | #ifdef CONFIG_PM | 42 | #ifdef CONFIG_PM |
43 | /* kernel/power/swsusp.c */ | 43 | /* kernel/power/swsusp.c */ |
44 | extern int software_suspend(void); | 44 | extern int software_suspend(void); |
45 | |||
46 | extern int pm_prepare_console(void); | ||
47 | extern void pm_restore_console(void); | ||
48 | |||
49 | #else | 45 | #else |
50 | static inline int software_suspend(void) | 46 | static inline int software_suspend(void) |
51 | { | 47 | { |
diff --git a/include/linux/swap.h b/include/linux/swap.h index 4a99e4a7fbf3..f3e17d5963c3 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h | |||
@@ -178,6 +178,7 @@ extern int vm_swappiness; | |||
178 | 178 | ||
179 | #ifdef CONFIG_NUMA | 179 | #ifdef CONFIG_NUMA |
180 | extern int zone_reclaim_mode; | 180 | extern int zone_reclaim_mode; |
181 | extern int zone_reclaim_interval; | ||
181 | extern int zone_reclaim(struct zone *, gfp_t, unsigned int); | 182 | extern int zone_reclaim(struct zone *, gfp_t, unsigned int); |
182 | #else | 183 | #else |
183 | #define zone_reclaim_mode 0 | 184 | #define zone_reclaim_mode 0 |
@@ -190,13 +191,20 @@ static inline int zone_reclaim(struct zone *z, gfp_t mask, unsigned int order) | |||
190 | #ifdef CONFIG_MIGRATION | 191 | #ifdef CONFIG_MIGRATION |
191 | extern int isolate_lru_page(struct page *p); | 192 | extern int isolate_lru_page(struct page *p); |
192 | extern int putback_lru_pages(struct list_head *l); | 193 | extern int putback_lru_pages(struct list_head *l); |
194 | extern int migrate_page(struct page *, struct page *); | ||
195 | extern void migrate_page_copy(struct page *, struct page *); | ||
196 | extern int migrate_page_remove_references(struct page *, struct page *, int); | ||
193 | extern int migrate_pages(struct list_head *l, struct list_head *t, | 197 | extern int migrate_pages(struct list_head *l, struct list_head *t, |
194 | struct list_head *moved, struct list_head *failed); | 198 | struct list_head *moved, struct list_head *failed); |
199 | extern int fail_migrate_page(struct page *, struct page *); | ||
195 | #else | 200 | #else |
196 | static inline int isolate_lru_page(struct page *p) { return -ENOSYS; } | 201 | static inline int isolate_lru_page(struct page *p) { return -ENOSYS; } |
197 | static inline int putback_lru_pages(struct list_head *l) { return 0; } | 202 | static inline int putback_lru_pages(struct list_head *l) { return 0; } |
198 | static inline int migrate_pages(struct list_head *l, struct list_head *t, | 203 | static inline int migrate_pages(struct list_head *l, struct list_head *t, |
199 | struct list_head *moved, struct list_head *failed) { return -ENOSYS; } | 204 | struct list_head *moved, struct list_head *failed) { return -ENOSYS; } |
205 | /* Possible settings for the migrate_page() method in address_operations */ | ||
206 | #define migrate_page NULL | ||
207 | #define fail_migrate_page NULL | ||
200 | #endif | 208 | #endif |
201 | 209 | ||
202 | #ifdef CONFIG_MMU | 210 | #ifdef CONFIG_MMU |
@@ -245,6 +253,7 @@ extern int remove_exclusive_swap_page(struct page *); | |||
245 | struct backing_dev_info; | 253 | struct backing_dev_info; |
246 | 254 | ||
247 | extern spinlock_t swap_lock; | 255 | extern spinlock_t swap_lock; |
256 | extern int remove_vma_swap(struct vm_area_struct *vma, struct page *page); | ||
248 | 257 | ||
249 | /* linux/mm/thrash.c */ | 258 | /* linux/mm/thrash.c */ |
250 | extern struct mm_struct * swap_token_mm; | 259 | extern struct mm_struct * swap_token_mm; |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index e666d6070569..3877209d23c3 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
@@ -50,6 +50,8 @@ struct timezone; | |||
50 | struct tms; | 50 | struct tms; |
51 | struct utimbuf; | 51 | struct utimbuf; |
52 | struct mq_attr; | 52 | struct mq_attr; |
53 | struct compat_stat; | ||
54 | struct compat_timeval; | ||
53 | 55 | ||
54 | #include <linux/config.h> | 56 | #include <linux/config.h> |
55 | #include <linux/types.h> | 57 | #include <linux/types.h> |
@@ -534,4 +536,35 @@ asmlinkage long sys_spu_run(int fd, __u32 __user *unpc, | |||
534 | asmlinkage long sys_spu_create(const char __user *name, | 536 | asmlinkage long sys_spu_create(const char __user *name, |
535 | unsigned int flags, mode_t mode); | 537 | unsigned int flags, mode_t mode); |
536 | 538 | ||
539 | asmlinkage long sys_mknodat(int dfd, const char __user * filename, int mode, | ||
540 | unsigned dev); | ||
541 | asmlinkage long sys_mkdirat(int dfd, const char __user * pathname, int mode); | ||
542 | asmlinkage long sys_unlinkat(int dfd, const char __user * pathname, int flag); | ||
543 | asmlinkage long sys_symlinkat(const char __user * oldname, | ||
544 | int newdfd, const char __user * newname); | ||
545 | asmlinkage long sys_linkat(int olddfd, const char __user *oldname, | ||
546 | int newdfd, const char __user *newname); | ||
547 | asmlinkage long sys_renameat(int olddfd, const char __user * oldname, | ||
548 | int newdfd, const char __user * newname); | ||
549 | asmlinkage long sys_futimesat(int dfd, char __user *filename, | ||
550 | struct timeval __user *utimes); | ||
551 | asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode); | ||
552 | asmlinkage long sys_fchmodat(int dfd, const char __user * filename, | ||
553 | mode_t mode); | ||
554 | asmlinkage long sys_fchownat(int dfd, const char __user *filename, uid_t user, | ||
555 | gid_t group, int flag); | ||
556 | asmlinkage long sys_openat(int dfd, const char __user *filename, int flags, | ||
557 | int mode); | ||
558 | asmlinkage long sys_newfstatat(int dfd, char __user *filename, | ||
559 | struct stat __user *statbuf, int flag); | ||
560 | asmlinkage long sys_readlinkat(int dfd, const char __user *path, char __user *buf, | ||
561 | int bufsiz); | ||
562 | asmlinkage long compat_sys_futimesat(unsigned int dfd, char __user *filename, | ||
563 | struct compat_timeval __user *t); | ||
564 | asmlinkage long compat_sys_newfstatat(unsigned int dfd, char __user * filename, | ||
565 | struct compat_stat __user *statbuf, | ||
566 | int flag); | ||
567 | asmlinkage long compat_sys_openat(unsigned int dfd, const char __user *filename, | ||
568 | int flags, int mode); | ||
569 | |||
537 | #endif | 570 | #endif |
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 8352a7ce5895..32a4139c4ad8 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h | |||
@@ -182,7 +182,8 @@ enum | |||
182 | VM_SWAP_TOKEN_TIMEOUT=28, /* default time for token time out */ | 182 | VM_SWAP_TOKEN_TIMEOUT=28, /* default time for token time out */ |
183 | VM_DROP_PAGECACHE=29, /* int: nuke lots of pagecache */ | 183 | VM_DROP_PAGECACHE=29, /* int: nuke lots of pagecache */ |
184 | VM_PERCPU_PAGELIST_FRACTION=30,/* int: fraction of pages in each percpu_pagelist */ | 184 | VM_PERCPU_PAGELIST_FRACTION=30,/* int: fraction of pages in each percpu_pagelist */ |
185 | VM_ZONE_RECLAIM_MODE=31,/* reclaim local zone memory before going off node */ | 185 | VM_ZONE_RECLAIM_MODE=31, /* reclaim local zone memory before going off node */ |
186 | VM_ZONE_RECLAIM_INTERVAL=32, /* time period to wait after reclaim failure */ | ||
186 | }; | 187 | }; |
187 | 188 | ||
188 | 189 | ||
diff --git a/include/linux/time.h b/include/linux/time.h index 614dd8465839..7b4dc36532bb 100644 --- a/include/linux/time.h +++ b/include/linux/time.h | |||
@@ -48,7 +48,7 @@ extern void set_normalized_timespec(struct timespec *ts, time_t sec, long nsec); | |||
48 | * Returns true if the timespec is norm, false if denorm: | 48 | * Returns true if the timespec is norm, false if denorm: |
49 | */ | 49 | */ |
50 | #define timespec_valid(ts) \ | 50 | #define timespec_valid(ts) \ |
51 | (((ts)->tv_sec >= 0) && (((unsigned) (ts)->tv_nsec) < NSEC_PER_SEC)) | 51 | (((ts)->tv_sec >= 0) && (((unsigned long) (ts)->tv_nsec) < NSEC_PER_SEC)) |
52 | 52 | ||
53 | /* | 53 | /* |
54 | * 64-bit nanosec type. Large enough to span 292+ years in nanosecond | 54 | * 64-bit nanosec type. Large enough to span 292+ years in nanosecond |
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/types.h b/include/linux/types.h index 21b9ce803644..54ae2d59e71b 100644 --- a/include/linux/types.h +++ b/include/linux/types.h | |||
@@ -8,6 +8,8 @@ | |||
8 | (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) | 8 | (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) |
9 | #define DECLARE_BITMAP(name,bits) \ | 9 | #define DECLARE_BITMAP(name,bits) \ |
10 | unsigned long name[BITS_TO_LONGS(bits)] | 10 | unsigned long name[BITS_TO_LONGS(bits)] |
11 | |||
12 | #define BITS_PER_BYTE 8 | ||
11 | #endif | 13 | #endif |
12 | 14 | ||
13 | #include <linux/posix_types.h> | 15 | #include <linux/posix_types.h> |
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/usb_ch9.h b/include/linux/usb_ch9.h index ee21e6bf3867..a2aacfc7af2f 100644 --- a/include/linux/usb_ch9.h +++ b/include/linux/usb_ch9.h | |||
@@ -535,9 +535,11 @@ enum usb_device_state { | |||
535 | */ | 535 | */ |
536 | USB_STATE_NOTATTACHED = 0, | 536 | USB_STATE_NOTATTACHED = 0, |
537 | 537 | ||
538 | /* the chapter 9 device states */ | 538 | /* chapter 9 and authentication (wireless) device states */ |
539 | USB_STATE_ATTACHED, | 539 | USB_STATE_ATTACHED, |
540 | USB_STATE_POWERED, | 540 | USB_STATE_POWERED, /* wired */ |
541 | USB_STATE_UNAUTHENTICATED, /* auth */ | ||
542 | USB_STATE_RECONNECTING, /* auth */ | ||
541 | USB_STATE_DEFAULT, /* limited function */ | 543 | USB_STATE_DEFAULT, /* limited function */ |
542 | USB_STATE_ADDRESS, | 544 | USB_STATE_ADDRESS, |
543 | USB_STATE_CONFIGURED, /* most functions */ | 545 | USB_STATE_CONFIGURED, /* most functions */ |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index ce40675324bd..6f6c69777648 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
@@ -315,6 +315,7 @@ struct v4l2_pix_format | |||
315 | #define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S','9','1','0') /* SN9C10x compression */ | 315 | #define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S','9','1','0') /* SN9C10x compression */ |
316 | #define V4L2_PIX_FMT_PWC1 v4l2_fourcc('P','W','C','1') /* pwc older webcam */ | 316 | #define V4L2_PIX_FMT_PWC1 v4l2_fourcc('P','W','C','1') /* pwc older webcam */ |
317 | #define V4L2_PIX_FMT_PWC2 v4l2_fourcc('P','W','C','2') /* pwc newer webcam */ | 317 | #define V4L2_PIX_FMT_PWC2 v4l2_fourcc('P','W','C','2') /* pwc newer webcam */ |
318 | #define V4L2_PIX_FMT_ET61X251 v4l2_fourcc('E','6','2','5') /* ET61X251 compression */ | ||
318 | 319 | ||
319 | /* | 320 | /* |
320 | * F O R M A T E N U M E R A T I O N | 321 | * F O R M A T E N U M E R A T I O N |