1 diff -Nur linux-2.6.15.1/Documentation/feature-removal-schedule.txt linux-2.6.15.1-owrt/Documentation/feature-removal-schedule.txt
2 --- linux-2.6.15.1/Documentation/feature-removal-schedule.txt 2006-01-15 07:16:02.000000000 +0100
3 +++ linux-2.6.15.1-owrt/Documentation/feature-removal-schedule.txt 2006-01-27 15:03:21.000000000 +0100
6 ---------------------------
8 +What: CONFIG_FORCED_INLINING
10 +Why: Config option is there to see if gcc is good enough. (in january
11 + 2006). If it is, the behavior should just be the default. If it's not,
12 + the option should just go away entirely.
13 +Who: Arjan van de Ven
15 +---------------------------
17 What: START_ARRAY ioctl for md
19 Files: drivers/md/md.c
20 diff -Nur linux-2.6.15.1/drivers/acpi/ec.c linux-2.6.15.1-owrt/drivers/acpi/ec.c
21 --- linux-2.6.15.1/drivers/acpi/ec.c 2006-01-15 07:16:02.000000000 +0100
22 +++ linux-2.6.15.1-owrt/drivers/acpi/ec.c 2006-01-27 15:08:36.000000000 +0100
24 Transaction Management
25 -------------------------------------------------------------------------- */
27 -static inline u32 acpi_ec_read_status(union acpi_ec *ec)
28 +static u32 acpi_ec_read_status(union acpi_ec *ec)
32 diff -Nur linux-2.6.15.1/drivers/base/firmware_class.c linux-2.6.15.1-owrt/drivers/base/firmware_class.c
33 --- linux-2.6.15.1/drivers/base/firmware_class.c 2006-01-15 07:16:02.000000000 +0100
34 +++ linux-2.6.15.1-owrt/drivers/base/firmware_class.c 2006-01-27 15:08:36.000000000 +0100
36 struct timer_list timeout;
41 fw_load_abort(struct firmware_priv *fw_priv)
43 set_bit(FW_STATUS_ABORT, &fw_priv->status);
44 diff -Nur linux-2.6.15.1/drivers/block/loop.c linux-2.6.15.1-owrt/drivers/block/loop.c
45 --- linux-2.6.15.1/drivers/block/loop.c 2006-01-15 07:16:02.000000000 +0100
46 +++ linux-2.6.15.1-owrt/drivers/block/loop.c 2006-01-27 15:08:36.000000000 +0100
48 * This helper just factors out common code between do_lo_send_direct_write()
49 * and do_lo_send_write().
51 -static inline int __do_lo_send_write(struct file *file,
52 +static int __do_lo_send_write(struct file *file,
53 u8 __user *buf, const int len, loff_t pos)
56 diff -Nur linux-2.6.15.1/drivers/bluetooth/hci_bcsp.c linux-2.6.15.1-owrt/drivers/bluetooth/hci_bcsp.c
57 --- linux-2.6.15.1/drivers/bluetooth/hci_bcsp.c 2006-01-15 07:16:02.000000000 +0100
58 +++ linux-2.6.15.1-owrt/drivers/bluetooth/hci_bcsp.c 2006-01-27 15:08:36.000000000 +0100
63 -static inline void bcsp_complete_rx_pkt(struct hci_uart *hu)
64 +static void bcsp_complete_rx_pkt(struct hci_uart *hu)
66 struct bcsp_struct *bcsp = hu->priv;
68 diff -Nur linux-2.6.15.1/drivers/char/drm/r128_state.c linux-2.6.15.1-owrt/drivers/char/drm/r128_state.c
69 --- linux-2.6.15.1/drivers/char/drm/r128_state.c 2006-01-15 07:16:02.000000000 +0100
70 +++ linux-2.6.15.1-owrt/drivers/char/drm/r128_state.c 2006-01-27 15:08:36.000000000 +0100
75 -static __inline__ void r128_emit_state(drm_r128_private_t * dev_priv)
76 +static void r128_emit_state(drm_r128_private_t * dev_priv)
78 drm_r128_sarea_t *sarea_priv = dev_priv->sarea_priv;
79 unsigned int dirty = sarea_priv->dirty;
80 diff -Nur linux-2.6.15.1/drivers/cpufreq/cpufreq.c linux-2.6.15.1-owrt/drivers/cpufreq/cpufreq.c
81 --- linux-2.6.15.1/drivers/cpufreq/cpufreq.c 2006-01-15 07:16:02.000000000 +0100
82 +++ linux-2.6.15.1-owrt/drivers/cpufreq/cpufreq.c 2006-01-27 15:08:36.000000000 +0100
84 /* internal prototypes */
85 static int __cpufreq_governor(struct cpufreq_policy *policy, unsigned int event);
86 static void handle_update(void *data);
87 -static inline void adjust_jiffies(unsigned long val, struct cpufreq_freqs *ci);
90 * Two notifier lists: the "policy" list is involved in the
92 static unsigned int disable_ratelimit = 1;
93 static DEFINE_SPINLOCK(disable_ratelimit_lock);
95 -static inline void cpufreq_debug_enable_ratelimit(void)
96 +static void cpufreq_debug_enable_ratelimit(void)
101 spin_unlock_irqrestore(&disable_ratelimit_lock, flags);
104 -static inline void cpufreq_debug_disable_ratelimit(void)
105 +static void cpufreq_debug_disable_ratelimit(void)
110 static unsigned long l_p_j_ref;
111 static unsigned int l_p_j_ref_freq;
113 -static inline void adjust_jiffies(unsigned long val, struct cpufreq_freqs *ci)
114 +static void adjust_jiffies(unsigned long val, struct cpufreq_freqs *ci)
116 if (ci->flags & CPUFREQ_CONST_LOOPS)
118 diff -Nur linux-2.6.15.1/drivers/ide/ide-cd.c linux-2.6.15.1-owrt/drivers/ide/ide-cd.c
119 --- linux-2.6.15.1/drivers/ide/ide-cd.c 2006-01-15 07:16:02.000000000 +0100
120 +++ linux-2.6.15.1-owrt/drivers/ide/ide-cd.c 2006-01-27 15:08:36.000000000 +0100
122 * and attempt to recover if there are problems. Returns 0 if everything's
123 * ok; nonzero if the request has been terminated.
127 int cdrom_read_check_ireason (ide_drive_t *drive, int len, int ireason)
130 @@ -1541,7 +1541,7 @@
134 -static inline int cdrom_write_check_ireason(ide_drive_t *drive, int len, int ireason)
135 +static int cdrom_write_check_ireason(ide_drive_t *drive, int len, int ireason)
137 /* Two notes about IDE interrupt reason here - 0 means that
138 * the drive wants to receive data from us, 2 means that
139 diff -Nur linux-2.6.15.1/drivers/ide/ide-disk.c linux-2.6.15.1-owrt/drivers/ide/ide-disk.c
140 --- linux-2.6.15.1/drivers/ide/ide-disk.c 2006-01-15 07:16:02.000000000 +0100
141 +++ linux-2.6.15.1-owrt/drivers/ide/ide-disk.c 2006-01-27 15:08:36.000000000 +0100
143 && id->lba_capacity_2;
146 -static inline void idedisk_check_hpa(ide_drive_t *drive)
147 +static void idedisk_check_hpa(ide_drive_t *drive)
149 unsigned long long capacity, set_max;
150 int lba48 = idedisk_supports_lba48(drive->id);
151 diff -Nur linux-2.6.15.1/drivers/ide/ide-taskfile.c linux-2.6.15.1-owrt/drivers/ide/ide-taskfile.c
152 --- linux-2.6.15.1/drivers/ide/ide-taskfile.c 2006-01-15 07:16:02.000000000 +0100
153 +++ linux-2.6.15.1-owrt/drivers/ide/ide-taskfile.c 2006-01-27 15:08:36.000000000 +0100
155 ide_pio_sector(drive, write);
158 -static inline void ide_pio_datablock(ide_drive_t *drive, struct request *rq,
159 +static void ide_pio_datablock(ide_drive_t *drive, struct request *rq,
162 if (rq->bio) /* fs request */
163 diff -Nur linux-2.6.15.1/drivers/infiniband/core/cm.c linux-2.6.15.1-owrt/drivers/infiniband/core/cm.c
164 --- linux-2.6.15.1/drivers/infiniband/core/cm.c 2006-01-15 07:16:02.000000000 +0100
165 +++ linux-2.6.15.1-owrt/drivers/infiniband/core/cm.c 2006-01-27 15:08:36.000000000 +0100
167 param->private_data_len);
170 -static inline int cm_validate_req_param(struct ib_cm_req_param *param)
171 +static int cm_validate_req_param(struct ib_cm_req_param *param)
173 /* peer-to-peer not supported */
174 if (param->peer_to_peer)
176 (be32_to_cpu(local_qpn) > be32_to_cpu(remote_qpn))));
179 -static inline void cm_format_paths_from_req(struct cm_req_msg *req_msg,
180 +static void cm_format_paths_from_req(struct cm_req_msg *req_msg,
181 struct ib_sa_path_rec *primary_path,
182 struct ib_sa_path_rec *alt_path)
184 diff -Nur linux-2.6.15.1/drivers/isdn/hisax/avm_pci.c linux-2.6.15.1-owrt/drivers/isdn/hisax/avm_pci.c
185 --- linux-2.6.15.1/drivers/isdn/hisax/avm_pci.c 2006-01-15 07:16:02.000000000 +0100
186 +++ linux-2.6.15.1-owrt/drivers/isdn/hisax/avm_pci.c 2006-01-27 15:08:36.000000000 +0100
193 HDLC_irq(struct BCState *bcs, u_int stat) {
196 diff -Nur linux-2.6.15.1/drivers/isdn/hisax/diva.c linux-2.6.15.1-owrt/drivers/isdn/hisax/diva.c
197 --- linux-2.6.15.1/drivers/isdn/hisax/diva.c 2006-01-15 07:16:02.000000000 +0100
198 +++ linux-2.6.15.1-owrt/drivers/isdn/hisax/diva.c 2006-01-27 15:08:36.000000000 +0100
205 Memhscx_interrupt(struct IsdnCardState *cs, u_char val, u_char hscx)
208 diff -Nur linux-2.6.15.1/drivers/isdn/hisax/hscx_irq.c linux-2.6.15.1-owrt/drivers/isdn/hisax/hscx_irq.c
209 --- linux-2.6.15.1/drivers/isdn/hisax/hscx_irq.c 2006-01-15 07:16:02.000000000 +0100
210 +++ linux-2.6.15.1-owrt/drivers/isdn/hisax/hscx_irq.c 2006-01-27 15:08:36.000000000 +0100
217 hscx_interrupt(struct IsdnCardState *cs, u_char val, u_char hscx)
226 hscx_int_main(struct IsdnCardState *cs, u_char val)
229 diff -Nur linux-2.6.15.1/drivers/isdn/hisax/jade_irq.c linux-2.6.15.1-owrt/drivers/isdn/hisax/jade_irq.c
230 --- linux-2.6.15.1/drivers/isdn/hisax/jade_irq.c 2006-01-15 07:16:02.000000000 +0100
231 +++ linux-2.6.15.1-owrt/drivers/isdn/hisax/jade_irq.c 2006-01-27 15:08:36.000000000 +0100
238 jade_interrupt(struct IsdnCardState *cs, u_char val, u_char jade)
241 diff -Nur linux-2.6.15.1/drivers/md/bitmap.c linux-2.6.15.1-owrt/drivers/md/bitmap.c
242 --- linux-2.6.15.1/drivers/md/bitmap.c 2006-01-15 07:16:02.000000000 +0100
243 +++ linux-2.6.15.1-owrt/drivers/md/bitmap.c 2006-01-27 15:08:36.000000000 +0100
245 /* if page is completely empty, put it back on the free list, or dealloc it */
246 /* if page was hijacked, unmark the flag so it might get alloced next time */
247 /* Note: lock should be held when calling this */
248 -static inline void bitmap_checkfree(struct bitmap *bitmap, unsigned long page)
249 +static void bitmap_checkfree(struct bitmap *bitmap, unsigned long page)
253 diff -Nur linux-2.6.15.1/drivers/md/dm.c linux-2.6.15.1-owrt/drivers/md/dm.c
254 --- linux-2.6.15.1/drivers/md/dm.c 2006-01-15 07:16:02.000000000 +0100
255 +++ linux-2.6.15.1-owrt/drivers/md/dm.c 2006-01-27 15:08:36.000000000 +0100
257 * Decrements the number of outstanding ios that a bio has been
258 * cloned into, completing the original io if necc.
260 -static inline void dec_pending(struct dm_io *io, int error)
261 +static void dec_pending(struct dm_io *io, int error)
265 diff -Nur linux-2.6.15.1/drivers/md/dm-crypt.c linux-2.6.15.1-owrt/drivers/md/dm-crypt.c
266 --- linux-2.6.15.1/drivers/md/dm-crypt.c 2006-01-15 07:16:02.000000000 +0100
267 +++ linux-2.6.15.1-owrt/drivers/md/dm-crypt.c 2006-01-27 15:08:36.000000000 +0100
274 crypt_convert_scatterlist(struct crypt_config *cc, struct scatterlist *out,
275 struct scatterlist *in, unsigned int length,
276 int write, sector_t sector)
277 diff -Nur linux-2.6.15.1/drivers/md/dm-ioctl.c linux-2.6.15.1-owrt/drivers/md/dm-ioctl.c
278 --- linux-2.6.15.1/drivers/md/dm-ioctl.c 2006-01-15 07:16:02.000000000 +0100
279 +++ linux-2.6.15.1-owrt/drivers/md/dm-ioctl.c 2006-01-27 15:08:36.000000000 +0100
282 * Always use UUID for lookups if it's present, otherwise use name or dev.
284 -static inline struct hash_cell *__find_device_hash_cell(struct dm_ioctl *param)
285 +static struct hash_cell *__find_device_hash_cell(struct dm_ioctl *param)
288 return __get_uuid_cell(param->uuid);
290 return dm_get_mdptr(huge_decode_dev(param->dev));
293 -static inline struct mapped_device *find_device(struct dm_ioctl *param)
294 +static struct mapped_device *find_device(struct dm_ioctl *param)
296 struct hash_cell *hc;
297 struct mapped_device *md = NULL;
298 diff -Nur linux-2.6.15.1/drivers/md/dm-snap.c linux-2.6.15.1-owrt/drivers/md/dm-snap.c
299 --- linux-2.6.15.1/drivers/md/dm-snap.c 2006-01-15 07:16:02.000000000 +0100
300 +++ linux-2.6.15.1-owrt/drivers/md/dm-snap.c 2006-01-27 15:08:36.000000000 +0100
303 * Dispatches the copy operation to kcopyd.
305 -static inline void start_copy(struct pending_exception *pe)
306 +static void start_copy(struct pending_exception *pe)
308 struct dm_snapshot *s = pe->snap;
309 struct io_region src, dest;
310 diff -Nur linux-2.6.15.1/drivers/md/raid10.c linux-2.6.15.1-owrt/drivers/md/raid10.c
311 --- linux-2.6.15.1/drivers/md/raid10.c 2006-01-15 07:16:02.000000000 +0100
312 +++ linux-2.6.15.1-owrt/drivers/md/raid10.c 2006-01-27 15:08:36.000000000 +0100
317 -static inline void free_r10bio(r10bio_t *r10_bio)
318 +static void free_r10bio(r10bio_t *r10_bio)
323 mempool_free(r10_bio, conf->r10bio_pool);
326 -static inline void put_buf(r10bio_t *r10_bio)
327 +static void put_buf(r10bio_t *r10_bio)
329 conf_t *conf = mddev_to_conf(r10_bio->mddev);
331 diff -Nur linux-2.6.15.1/drivers/md/raid1.c linux-2.6.15.1-owrt/drivers/md/raid1.c
332 --- linux-2.6.15.1/drivers/md/raid1.c 2006-01-15 07:16:02.000000000 +0100
333 +++ linux-2.6.15.1-owrt/drivers/md/raid1.c 2006-01-27 15:08:36.000000000 +0100
338 -static inline void free_r1bio(r1bio_t *r1_bio)
339 +static void free_r1bio(r1bio_t *r1_bio)
344 mempool_free(r1_bio, conf->r1bio_pool);
347 -static inline void put_buf(r1bio_t *r1_bio)
348 +static void put_buf(r1bio_t *r1_bio)
350 conf_t *conf = mddev_to_conf(r1_bio->mddev);
352 diff -Nur linux-2.6.15.1/drivers/md/raid5.c linux-2.6.15.1-owrt/drivers/md/raid5.c
353 --- linux-2.6.15.1/drivers/md/raid5.c 2006-01-15 07:16:02.000000000 +0100
354 +++ linux-2.6.15.1-owrt/drivers/md/raid5.c 2006-01-27 15:08:36.000000000 +0100
357 static void print_raid5_conf (raid5_conf_t *conf);
359 -static inline void __release_stripe(raid5_conf_t *conf, struct stripe_head *sh)
360 +static void __release_stripe(raid5_conf_t *conf, struct stripe_head *sh)
362 if (atomic_dec_and_test(&sh->count)) {
363 if (!list_empty(&sh->lru))
366 static void raid5_build_block (struct stripe_head *sh, int i);
368 -static inline void init_stripe(struct stripe_head *sh, sector_t sector, int pd_idx)
369 +static void init_stripe(struct stripe_head *sh, sector_t sector, int pd_idx)
371 raid5_conf_t *conf = sh->raid_conf;
372 int disks = conf->raid_disks, i;
373 @@ -1421,7 +1421,7 @@
377 -static inline void raid5_activate_delayed(raid5_conf_t *conf)
378 +static void raid5_activate_delayed(raid5_conf_t *conf)
380 if (atomic_read(&conf->preread_active_stripes) < IO_THRESHOLD) {
381 while (!list_empty(&conf->delayed_list)) {
382 @@ -1437,7 +1437,7 @@
386 -static inline void activate_bit_delay(raid5_conf_t *conf)
387 +static void activate_bit_delay(raid5_conf_t *conf)
389 /* device_lock is held */
390 struct list_head head;
391 diff -Nur linux-2.6.15.1/drivers/md/raid6main.c linux-2.6.15.1-owrt/drivers/md/raid6main.c
392 --- linux-2.6.15.1/drivers/md/raid6main.c 2006-01-15 07:16:02.000000000 +0100
393 +++ linux-2.6.15.1-owrt/drivers/md/raid6main.c 2006-01-27 15:08:36.000000000 +0100
396 static void print_raid6_conf (raid6_conf_t *conf);
398 -static inline void __release_stripe(raid6_conf_t *conf, struct stripe_head *sh)
399 +static void __release_stripe(raid6_conf_t *conf, struct stripe_head *sh)
401 if (atomic_dec_and_test(&sh->count)) {
402 if (!list_empty(&sh->lru))
405 static void raid6_build_block (struct stripe_head *sh, int i);
407 -static inline void init_stripe(struct stripe_head *sh, sector_t sector, int pd_idx)
408 +static void init_stripe(struct stripe_head *sh, sector_t sector, int pd_idx)
410 raid6_conf_t *conf = sh->raid_conf;
411 int disks = conf->raid_disks, i;
412 @@ -1501,7 +1501,7 @@
416 -static inline void raid6_activate_delayed(raid6_conf_t *conf)
417 +static void raid6_activate_delayed(raid6_conf_t *conf)
419 if (atomic_read(&conf->preread_active_stripes) < IO_THRESHOLD) {
420 while (!list_empty(&conf->delayed_list)) {
421 @@ -1517,7 +1517,7 @@
425 -static inline void activate_bit_delay(raid6_conf_t *conf)
426 +static void activate_bit_delay(raid6_conf_t *conf)
428 /* device_lock is held */
429 struct list_head head;
430 diff -Nur linux-2.6.15.1/drivers/media/video/tvp5150.c linux-2.6.15.1-owrt/drivers/media/video/tvp5150.c
431 --- linux-2.6.15.1/drivers/media/video/tvp5150.c 2006-01-15 07:16:02.000000000 +0100
432 +++ linux-2.6.15.1-owrt/drivers/media/video/tvp5150.c 2006-01-27 15:08:36.000000000 +0100
437 -static inline int tvp5150_read(struct i2c_client *c, unsigned char addr)
438 +static int tvp5150_read(struct i2c_client *c, unsigned char addr)
440 unsigned char buffer[1];
442 diff -Nur linux-2.6.15.1/drivers/message/fusion/mptlan.c linux-2.6.15.1-owrt/drivers/message/fusion/mptlan.c
443 --- linux-2.6.15.1/drivers/message/fusion/mptlan.c 2006-01-15 07:16:02.000000000 +0100
444 +++ linux-2.6.15.1-owrt/drivers/message/fusion/mptlan.c 2006-01-27 15:08:36.000000000 +0100
448 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
451 mpt_lan_wake_post_buckets_task(struct net_device *dev, int priority)
453 * @priority: 0 = put it on the timer queue, 1 = put it on the immediate queue
457 /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
460 mpt_lan_receive_skb(struct net_device *dev, struct sk_buff *skb)
462 struct mpt_lan_priv *priv = dev->priv;
463 diff -Nur linux-2.6.15.1/drivers/mtd/devices/doc2000.c linux-2.6.15.1-owrt/drivers/mtd/devices/doc2000.c
464 --- linux-2.6.15.1/drivers/mtd/devices/doc2000.c 2006-01-15 07:16:02.000000000 +0100
465 +++ linux-2.6.15.1-owrt/drivers/mtd/devices/doc2000.c 2006-01-27 15:08:36.000000000 +0100
467 bypass the internal pipeline. Each of 4 delay cycles (read from the NOP register) is
468 required after writing to CDSN Control register, see Software Requirement 11.4 item 3. */
470 -static inline int DoC_Command(struct DiskOnChip *doc, unsigned char command,
471 +static int DoC_Command(struct DiskOnChip *doc, unsigned char command,
472 unsigned char xtraflags)
474 void __iomem *docptr = doc->virtadr;
475 diff -Nur linux-2.6.15.1/drivers/mtd/devices/doc2001.c linux-2.6.15.1-owrt/drivers/mtd/devices/doc2001.c
476 --- linux-2.6.15.1/drivers/mtd/devices/doc2001.c 2006-01-15 07:16:02.000000000 +0100
477 +++ linux-2.6.15.1-owrt/drivers/mtd/devices/doc2001.c 2006-01-27 15:08:36.000000000 +0100
479 with the internal pipeline. Each of 4 delay cycles (read from the NOP register) is
480 required after writing to CDSN Control register, see Software Requirement 11.4 item 3. */
482 -static inline void DoC_Command(void __iomem * docptr, unsigned char command,
483 +static void DoC_Command(void __iomem * docptr, unsigned char command,
484 unsigned char xtraflags)
486 /* Assert the CLE (Command Latch Enable) line to the flash chip */
487 diff -Nur linux-2.6.15.1/drivers/mtd/devices/doc2001plus.c linux-2.6.15.1-owrt/drivers/mtd/devices/doc2001plus.c
488 --- linux-2.6.15.1/drivers/mtd/devices/doc2001plus.c 2006-01-15 07:16:02.000000000 +0100
489 +++ linux-2.6.15.1-owrt/drivers/mtd/devices/doc2001plus.c 2006-01-27 15:08:36.000000000 +0100
491 /* DoC_Command: Send a flash command to the flash chip through the Flash
492 * command register. Need 2 Write Pipeline Terminates to complete send.
494 -static inline void DoC_Command(void __iomem * docptr, unsigned char command,
495 +static void DoC_Command(void __iomem * docptr, unsigned char command,
496 unsigned char xtraflags)
498 WriteDOC(command, docptr, Mplus_FlashCmd);
499 diff -Nur linux-2.6.15.1/drivers/mtd/nand/diskonchip.c linux-2.6.15.1-owrt/drivers/mtd/nand/diskonchip.c
500 --- linux-2.6.15.1/drivers/mtd/nand/diskonchip.c 2006-01-15 07:16:02.000000000 +0100
501 +++ linux-2.6.15.1-owrt/drivers/mtd/nand/diskonchip.c 2006-01-27 15:08:36.000000000 +0100
502 @@ -1506,7 +1506,7 @@
506 -static inline int __init doc_probe(unsigned long physadr)
507 +static int __init doc_probe(unsigned long physadr)
509 unsigned char ChipID;
510 struct mtd_info *mtd;
511 diff -Nur linux-2.6.15.1/drivers/net/e100.c linux-2.6.15.1-owrt/drivers/net/e100.c
512 --- linux-2.6.15.1/drivers/net/e100.c 2006-01-15 07:16:02.000000000 +0100
513 +++ linux-2.6.15.1-owrt/drivers/net/e100.c 2006-01-27 15:08:36.000000000 +0100
515 (void)readb(&nic->csr->scb.status);
518 -static inline void e100_enable_irq(struct nic *nic)
519 +static void e100_enable_irq(struct nic *nic)
524 e100_write_flush(nic);
527 -static inline void e100_disable_irq(struct nic *nic)
528 +static void e100_disable_irq(struct nic *nic)
534 #define E100_WAIT_SCB_TIMEOUT 20000 /* we might have to wait 100ms!!! */
535 #define E100_WAIT_SCB_FAST 20 /* delay like the old code */
536 -static inline int e100_exec_cmd(struct nic *nic, u8 cmd, dma_addr_t dma_addr)
537 +static int e100_exec_cmd(struct nic *nic, u8 cmd, dma_addr_t dma_addr)
545 -static inline int e100_exec_cb(struct nic *nic, struct sk_buff *skb,
546 +static int e100_exec_cb(struct nic *nic, struct sk_buff *skb,
547 void (*cb_prepare)(struct nic *, struct cb *, struct sk_buff *))
550 @@ -1542,7 +1542,7 @@
551 mod_timer(&nic->watchdog, jiffies + E100_WATCHDOG_PERIOD);
554 -static inline void e100_xmit_prepare(struct nic *nic, struct cb *cb,
555 +static void e100_xmit_prepare(struct nic *nic, struct cb *cb,
558 cb->command = nic->tx_command;
559 @@ -1592,7 +1592,7 @@
563 -static inline int e100_tx_clean(struct nic *nic)
564 +static int e100_tx_clean(struct nic *nic)
568 @@ -1703,7 +1703,7 @@
571 #define RFD_BUF_LEN (sizeof(struct rfd) + VLAN_ETH_FRAME_LEN)
572 -static inline int e100_rx_alloc_skb(struct nic *nic, struct rx *rx)
573 +static int e100_rx_alloc_skb(struct nic *nic, struct rx *rx)
575 if(!(rx->skb = dev_alloc_skb(RFD_BUF_LEN + NET_IP_ALIGN)))
577 @@ -1737,7 +1737,7 @@
581 -static inline int e100_rx_indicate(struct nic *nic, struct rx *rx,
582 +static int e100_rx_indicate(struct nic *nic, struct rx *rx,
583 unsigned int *work_done, unsigned int work_to_do)
585 struct sk_buff *skb = rx->skb;
586 @@ -1797,7 +1797,7 @@
590 -static inline void e100_rx_clean(struct nic *nic, unsigned int *work_done,
591 +static void e100_rx_clean(struct nic *nic, unsigned int *work_done,
592 unsigned int work_to_do)
595 diff -Nur linux-2.6.15.1/drivers/net/sb1000.c linux-2.6.15.1-owrt/drivers/net/sb1000.c
596 --- linux-2.6.15.1/drivers/net/sb1000.c 2006-01-15 07:16:02.000000000 +0100
597 +++ linux-2.6.15.1-owrt/drivers/net/sb1000.c 2006-01-27 15:08:36.000000000 +0100
600 static inline int card_wait_for_ready(const int ioaddr[], const char* name,
602 -static inline int card_send_command(const int ioaddr[], const char* name,
603 +static int card_send_command(const int ioaddr[], const char* name,
604 const unsigned char out[], unsigned char in[]);
606 /* SB1000 hardware routines to be used during frame rx interrupt */
610 /* Card Send Command (cannot be used during an interrupt) */
613 card_send_command(const int ioaddr[], const char* name,
614 const unsigned char out[], unsigned char in[])
616 diff -Nur linux-2.6.15.1/drivers/net/wireless/hostap/hostap_80211_rx.c linux-2.6.15.1-owrt/drivers/net/wireless/hostap/hostap_80211_rx.c
617 --- linux-2.6.15.1/drivers/net/wireless/hostap/hostap_80211_rx.c 2006-01-15 07:16:02.000000000 +0100
618 +++ linux-2.6.15.1-owrt/drivers/net/wireless/hostap/hostap_80211_rx.c 2006-01-27 15:08:36.000000000 +0100
625 hostap_rx_frame_mgmt(local_info_t *local, struct sk_buff *skb,
626 struct hostap_80211_rx_status *rx_stats, u16 type,
631 /* Called only as a tasklet (software IRQ) */
632 -static inline struct net_device *prism2_rx_get_wds(local_info_t *local,
633 +static struct net_device *prism2_rx_get_wds(local_info_t *local,
636 struct hostap_interface *iface = NULL;
643 hostap_rx_frame_wds(local_info_t *local, struct ieee80211_hdr_4addr *hdr,
644 u16 fc, struct net_device **wds)
649 /* Called only as a tasklet (software IRQ) */
652 hostap_rx_frame_decrypt(local_info_t *local, struct sk_buff *skb,
653 struct ieee80211_crypt_data *crypt)
658 /* Called only as a tasklet (software IRQ) */
661 hostap_rx_frame_decrypt_msdu(local_info_t *local, struct sk_buff *skb,
662 int keyidx, struct ieee80211_crypt_data *crypt)
664 diff -Nur linux-2.6.15.1/drivers/net/wireless/hostap/hostap_hw.c linux-2.6.15.1-owrt/drivers/net/wireless/hostap/hostap_hw.c
665 --- linux-2.6.15.1/drivers/net/wireless/hostap/hostap_hw.c 2006-01-15 07:16:02.000000000 +0100
666 +++ linux-2.6.15.1-owrt/drivers/net/wireless/hostap/hostap_hw.c 2006-01-27 15:08:36.000000000 +0100
668 * @dev: pointer to net_device
669 * @entry: Prism2 command queue entry to be issued
671 -static inline int hfa384x_cmd_issue(struct net_device *dev,
672 +static int hfa384x_cmd_issue(struct net_device *dev,
673 struct hostap_cmd_queue *entry)
675 struct hostap_interface *iface;
680 -static inline int hfa384x_wait_offset(struct net_device *dev, u16 o_off)
681 +static int hfa384x_wait_offset(struct net_device *dev, u16 o_off)
683 int tries = HFA384X_BAP_BUSY_TIMEOUT;
684 int res = HFA384X_INW(o_off) & HFA384X_OFFSET_BUSY;
685 @@ -1904,7 +1904,7 @@
686 * and will try to get the correct fid eventually. */
687 #define EXTRA_FID_READ_TESTS
689 -static inline u16 prism2_read_fid_reg(struct net_device *dev, u16 reg)
690 +static u16 prism2_read_fid_reg(struct net_device *dev, u16 reg)
692 #ifdef EXTRA_FID_READ_TESTS
694 @@ -2581,7 +2581,7 @@
697 /* Called only from hardware IRQ */
698 -static inline void prism2_check_magic(local_info_t *local)
699 +static void prism2_check_magic(local_info_t *local)
701 /* at least PCI Prism2.5 with bus mastering seems to sometimes
702 * return 0x0000 in SWSUPPORT0 for unknown reason, but re-reading the
703 diff -Nur linux-2.6.15.1/drivers/net/wireless/ipw2100.c linux-2.6.15.1-owrt/drivers/net/wireless/ipw2100.c
704 --- linux-2.6.15.1/drivers/net/wireless/ipw2100.c 2006-01-15 07:16:02.000000000 +0100
705 +++ linux-2.6.15.1-owrt/drivers/net/wireless/ipw2100.c 2006-01-27 15:08:36.000000000 +0100
707 write_register(dev, IPW_REG_AUTOINCREMENT_DATA, val);
710 -static inline void write_nic_memory(struct net_device *dev, u32 addr, u32 len,
711 +static void write_nic_memory(struct net_device *dev, u32 addr, u32 len,
719 -static inline void read_nic_memory(struct net_device *dev, u32 addr, u32 len,
720 +static void read_nic_memory(struct net_device *dev, u32 addr, u32 len,
726 #define MAX_RESET_BACKOFF 10
728 -static inline void schedule_reset(struct ipw2100_priv *priv)
729 +static void schedule_reset(struct ipw2100_priv *priv)
731 unsigned long now = get_seconds();
733 @@ -1130,7 +1130,7 @@
734 write_register(priv->net_dev, IPW_REG_GPIO, reg);
737 -static inline int rf_kill_active(struct ipw2100_priv *priv)
738 +static int rf_kill_active(struct ipw2100_priv *priv)
740 #define MAX_RF_KILL_CHECKS 5
741 #define RF_KILL_CHECK_DELAY 40
742 @@ -2177,7 +2177,7 @@
746 -static inline int ipw2100_alloc_skb(struct ipw2100_priv *priv,
747 +static int ipw2100_alloc_skb(struct ipw2100_priv *priv,
748 struct ipw2100_rx_packet *packet)
750 packet->skb = dev_alloc_skb(sizeof(struct ipw2100_rx));
751 @@ -2201,7 +2201,7 @@
752 #define SEARCH_SNAPSHOT 1
754 #define SNAPSHOT_ADDR(ofs) (priv->snapshot[((ofs) >> 12) & 0xff] + ((ofs) & 0xfff))
755 -static inline int ipw2100_snapshot_alloc(struct ipw2100_priv *priv)
756 +static int ipw2100_snapshot_alloc(struct ipw2100_priv *priv)
759 if (priv->snapshot[0])
760 @@ -2221,7 +2221,7 @@
764 -static inline void ipw2100_snapshot_free(struct ipw2100_priv *priv)
765 +static void ipw2100_snapshot_free(struct ipw2100_priv *priv)
768 if (!priv->snapshot[0])
769 @@ -2231,7 +2231,7 @@
770 priv->snapshot[0] = NULL;
773 -static inline u32 ipw2100_match_buf(struct ipw2100_priv *priv, u8 * in_buf,
774 +static u32 ipw2100_match_buf(struct ipw2100_priv *priv, u8 * in_buf,
775 size_t len, int mode)
778 @@ -2288,7 +2288,7 @@
779 static u8 packet_data[IPW_RX_NIC_BUFFER_LENGTH];
782 -static inline void ipw2100_corruption_detected(struct ipw2100_priv *priv, int i)
783 +static void ipw2100_corruption_detected(struct ipw2100_priv *priv, int i)
785 #ifdef CONFIG_IPW_DEBUG_C3
786 struct ipw2100_status *status = &priv->status_queue.drv[i];
787 @@ -2346,7 +2346,7 @@
788 schedule_reset(priv);
791 -static inline void isr_rx(struct ipw2100_priv *priv, int i,
792 +static void isr_rx(struct ipw2100_priv *priv, int i,
793 struct ieee80211_rx_stats *stats)
795 struct ipw2100_status *status = &priv->status_queue.drv[i];
796 @@ -2425,7 +2425,7 @@
797 priv->rx_queue.drv[i].host_addr = packet->dma_addr;
800 -static inline int ipw2100_corruption_check(struct ipw2100_priv *priv, int i)
801 +static int ipw2100_corruption_check(struct ipw2100_priv *priv, int i)
803 struct ipw2100_status *status = &priv->status_queue.drv[i];
804 struct ipw2100_rx *u = priv->rx_buffers[i].rxp;
805 @@ -2481,7 +2481,7 @@
806 * The WRITE index is cached in the variable 'priv->rx_queue.next'.
809 -static inline void __ipw2100_rx_process(struct ipw2100_priv *priv)
810 +static void __ipw2100_rx_process(struct ipw2100_priv *priv)
812 struct ipw2100_bd_queue *rxq = &priv->rx_queue;
813 struct ipw2100_status_queue *sq = &priv->status_queue;
814 @@ -2634,7 +2634,7 @@
815 * for use by future command and data packets.
818 -static inline int __ipw2100_tx_process(struct ipw2100_priv *priv)
819 +static int __ipw2100_tx_process(struct ipw2100_priv *priv)
821 struct ipw2100_bd_queue *txq = &priv->tx_queue;
822 struct ipw2100_bd *tbd;
823 diff -Nur linux-2.6.15.1/drivers/net/wireless/ipw2200.c linux-2.6.15.1-owrt/drivers/net/wireless/ipw2200.c
824 --- linux-2.6.15.1/drivers/net/wireless/ipw2200.c 2006-01-15 07:16:02.000000000 +0100
825 +++ linux-2.6.15.1-owrt/drivers/net/wireless/ipw2200.c 2006-01-27 15:08:36.000000000 +0100
830 -static inline void __ipw_led_activity_on(struct ipw_priv *priv)
831 +static void __ipw_led_activity_on(struct ipw_priv *priv)
835 @@ -1508,7 +1508,7 @@
836 static DEVICE_ATTR(direct_dword, S_IWUSR | S_IRUGO,
837 show_direct_dword, store_direct_dword);
839 -static inline int rf_kill_active(struct ipw_priv *priv)
840 +static int rf_kill_active(struct ipw_priv *priv)
842 if (0 == (ipw_read32(priv, 0x30) & 0x10000))
843 priv->status |= STATUS_RF_KILL_HW;
844 @@ -2359,7 +2359,7 @@
847 /* perform a chip select operation */
848 -static inline void eeprom_cs(struct ipw_priv *priv)
849 +static void eeprom_cs(struct ipw_priv *priv)
851 eeprom_write_reg(priv, 0);
852 eeprom_write_reg(priv, EEPROM_BIT_CS);
853 @@ -2368,7 +2368,7 @@
856 /* perform a chip select operation */
857 -static inline void eeprom_disable_cs(struct ipw_priv *priv)
858 +static void eeprom_disable_cs(struct ipw_priv *priv)
860 eeprom_write_reg(priv, EEPROM_BIT_CS);
861 eeprom_write_reg(priv, 0);
862 @@ -2475,7 +2475,7 @@
863 IPW_DEBUG_TRACE("<<\n");
866 -static inline void ipw_zero_memory(struct ipw_priv *priv, u32 start, u32 count)
867 +static void ipw_zero_memory(struct ipw_priv *priv, u32 start, u32 count)
871 @@ -2772,7 +2772,7 @@
872 return ipw_read32(priv, 0x90) == 0xd55555d5;
875 -static inline int ipw_poll_bit(struct ipw_priv *priv, u32 addr, u32 mask,
876 +static int ipw_poll_bit(struct ipw_priv *priv, u32 addr, u32 mask,
880 @@ -3150,7 +3150,7 @@
882 #define IPW_RX_BUF_SIZE (3000)
884 -static inline void ipw_rx_queue_reset(struct ipw_priv *priv,
885 +static void ipw_rx_queue_reset(struct ipw_priv *priv,
886 struct ipw_rx_queue *rxq)
889 @@ -3608,7 +3608,7 @@
890 ipw_queue_tx_free(priv, &priv->txq[3]);
893 -static inline void ipw_create_bssid(struct ipw_priv *priv, u8 * bssid)
894 +static void ipw_create_bssid(struct ipw_priv *priv, u8 * bssid)
896 /* First 3 bytes are manufacturer */
897 bssid[0] = priv->mac_addr[0];
898 @@ -3622,7 +3622,7 @@
899 bssid[0] |= 0x02; /* set local assignment bit (IEEE802) */
902 -static inline u8 ipw_add_station(struct ipw_priv *priv, u8 * bssid)
903 +static u8 ipw_add_station(struct ipw_priv *priv, u8 * bssid)
905 struct ipw_station_entry entry;
907 @@ -3655,7 +3655,7 @@
911 -static inline u8 ipw_find_station(struct ipw_priv *priv, u8 * bssid)
912 +static u8 ipw_find_station(struct ipw_priv *priv, u8 * bssid)
916 @@ -3794,7 +3794,7 @@
917 memset(avg, 0, sizeof(*avg));
920 -static void inline average_add(struct average *avg, s16 val)
921 +static void average_add(struct average *avg, s16 val)
923 avg->sum -= avg->entries[avg->pos];
925 @@ -3805,7 +3805,7 @@
929 -static s16 inline average_value(struct average *avg)
930 +static s16 average_value(struct average *avg)
932 if (!unlikely(avg->init)) {
934 @@ -3847,7 +3847,7 @@
938 -static inline u32 ipw_get_max_rate(struct ipw_priv *priv)
939 +static u32 ipw_get_max_rate(struct ipw_priv *priv)
942 u32 mask = priv->rates_mask;
943 @@ -4087,7 +4087,7 @@
944 * roaming_threshold -> disassociate_threshold, scan and roam for better signal.
945 * Above disassociate threshold, give up and stop scanning.
946 * Roaming is disabled if disassociate_threshold <= roaming_threshold */
947 -static inline void ipw_handle_missed_beacon(struct ipw_priv *priv,
948 +static void ipw_handle_missed_beacon(struct ipw_priv *priv,
951 priv->notif_missed_beacons = missed_count;
952 @@ -4157,7 +4157,7 @@
953 * Handle host notification packet.
954 * Called from interrupt routine
956 -static inline void ipw_rx_notification(struct ipw_priv *priv,
957 +static void ipw_rx_notification(struct ipw_priv *priv,
958 struct ipw_rx_notification *notif)
960 notif->size = le16_to_cpu(notif->size);
961 @@ -5096,7 +5096,7 @@
965 -static inline void ipw_copy_rates(struct ipw_supported_rates *dest,
966 +static void ipw_copy_rates(struct ipw_supported_rates *dest,
967 const struct ipw_supported_rates *src)
970 @@ -5857,7 +5857,7 @@
971 #define ipw_debug_config(x) do {} while (0)
974 -static inline void ipw_set_fixed_rate(struct ipw_priv *priv, int mode)
975 +static void ipw_set_fixed_rate(struct ipw_priv *priv, int mode)
977 /* TODO: Verify that this works... */
978 struct ipw_fixed_rate fr = {
979 @@ -7636,7 +7636,7 @@
983 -static inline int is_network_packet(struct ipw_priv *priv,
984 +static int is_network_packet(struct ipw_priv *priv,
985 struct ieee80211_hdr_4addr *header)
987 /* Filter incoming packets to determine if they are targetted toward
988 @@ -7676,7 +7676,7 @@
990 #define IPW_PACKET_RETRY_TIME HZ
992 -static inline int is_duplicate_packet(struct ipw_priv *priv,
993 +static int is_duplicate_packet(struct ipw_priv *priv,
994 struct ieee80211_hdr_4addr *header)
996 u16 sc = le16_to_cpu(header->seq_ctl);
997 @@ -9585,7 +9585,7 @@
999 /* net device stuff */
1001 -static inline void init_sys_config(struct ipw_sys_config *sys_config)
1002 +static void init_sys_config(struct ipw_sys_config *sys_config)
1004 memset(sys_config, 0, sizeof(struct ipw_sys_config));
1005 sys_config->bt_coexistence = 1; /* We may need to look into prvStaBtConfig */
1006 @@ -9631,7 +9631,7 @@
1007 we need to heavily modify the ieee80211_skb_to_txb.
1010 -static inline int ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb,
1011 +static int ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb,
1014 struct ieee80211_hdr_3addr *hdr = (struct ieee80211_hdr_3addr *)
1015 diff -Nur linux-2.6.15.1/drivers/net/wireless/wavelan.c linux-2.6.15.1-owrt/drivers/net/wireless/wavelan.c
1016 --- linux-2.6.15.1/drivers/net/wireless/wavelan.c 2006-01-15 07:16:02.000000000 +0100
1017 +++ linux-2.6.15.1-owrt/drivers/net/wireless/wavelan.c 2006-01-27 15:08:36.000000000 +0100
1019 * Write to card's Host Adapter Command Register. Include a delay for
1020 * those times when it is needed.
1022 -static inline void hacr_write_slow(unsigned long ioaddr, u16 hacr)
1023 +static void hacr_write_slow(unsigned long ioaddr, u16 hacr)
1025 hacr_write(ioaddr, hacr);
1026 /* delay might only be needed sometimes */
1028 * The Windows drivers don't use the CRC, but the AP and the PtP tool
1031 -static inline u16 psa_crc(u8 * psa, /* The PSA */
1032 +static u16 psa_crc(u8 * psa, /* The PSA */
1034 { /* Number of short for CRC */
1035 int byte_cnt; /* Loop on the PSA */
1038 * Write 1 byte to the MMC.
1040 -static inline void mmc_out(unsigned long ioaddr, u16 o, u8 d)
1041 +static void mmc_out(unsigned long ioaddr, u16 o, u8 d)
1046 * Routine to write bytes to the Modem Management Controller.
1047 * We start at the end because it is the way it should be!
1049 -static inline void mmc_write(unsigned long ioaddr, u8 o, u8 * b, int n)
1050 +static void mmc_write(unsigned long ioaddr, u8 o, u8 * b, int n)
1055 * Read a byte from the MMC.
1056 * Optimised version for 1 byte, avoid using memory.
1058 -static inline u8 mmc_in(unsigned long ioaddr, u16 o)
1059 +static u8 mmc_in(unsigned long ioaddr, u16 o)
1064 * Set channel attention bit and busy wait until command has
1065 * completed, then acknowledge completion of the command.
1067 -static inline int wv_synchronous_cmd(struct net_device * dev, const char *str)
1068 +static int wv_synchronous_cmd(struct net_device * dev, const char *str)
1070 net_local *lp = (net_local *) dev->priv;
1071 unsigned long ioaddr = dev->base_addr;
1073 * Configuration commands completion interrupt.
1074 * Check if done, and if OK.
1078 wv_config_complete(struct net_device * dev, unsigned long ioaddr, net_local * lp)
1080 unsigned short mcs_addr;
1082 * wavelan_interrupt is not an option), so you may experience
1085 -static inline void wv_82586_reconfig(struct net_device * dev)
1086 +static void wv_82586_reconfig(struct net_device * dev)
1088 net_local *lp = (net_local *) dev->priv;
1089 unsigned long flags;
1090 @@ -1281,7 +1281,7 @@
1091 * This is the information which is displayed by the driver at startup.
1092 * There are lots of flags for configuring it to your liking.
1094 -static inline void wv_init_info(struct net_device * dev)
1095 +static void wv_init_info(struct net_device * dev)
1097 short ioaddr = dev->base_addr;
1098 net_local *lp = (net_local *) dev->priv;
1099 @@ -1502,7 +1502,7 @@
1100 * It's a bit complicated and you don't really want to look into it.
1101 * (called in wavelan_ioctl)
1103 -static inline int wv_set_frequency(unsigned long ioaddr, /* I/O port of the card */
1104 +static int wv_set_frequency(unsigned long ioaddr, /* I/O port of the card */
1105 iw_freq * frequency)
1107 const int BAND_NUM = 10; /* Number of bands */
1108 @@ -1677,7 +1677,7 @@
1110 * Give the list of available frequencies.
1112 -static inline int wv_frequency_list(unsigned long ioaddr, /* I/O port of the card */
1113 +static int wv_frequency_list(unsigned long ioaddr, /* I/O port of the card */
1114 iw_freq * list, /* List of frequencies to fill */
1116 { /* Maximum number of frequencies */
1117 @@ -2489,7 +2489,7 @@
1118 * Note: if any errors occur, the packet is "dropped on the floor".
1119 * (called by wv_packet_rcv())
1123 wv_packet_read(struct net_device * dev, u16 buf_off, int sksize)
1125 net_local *lp = (net_local *) dev->priv;
1126 @@ -2585,7 +2585,7 @@
1127 * (called in wavelan_interrupt()).
1128 * Note : the spinlock is already grabbed for us.
1130 -static inline void wv_receive(struct net_device * dev)
1131 +static void wv_receive(struct net_device * dev)
1133 unsigned long ioaddr = dev->base_addr;
1134 net_local *lp = (net_local *) dev->priv;
1135 @@ -2768,7 +2768,7 @@
1137 * (called in wavelan_packet_xmit())
1139 -static inline int wv_packet_write(struct net_device * dev, void *buf, short length)
1140 +static int wv_packet_write(struct net_device * dev, void *buf, short length)
1142 net_local *lp = (net_local *) dev->priv;
1143 unsigned long ioaddr = dev->base_addr;
1144 @@ -2964,7 +2964,7 @@
1145 * Routine to initialize the Modem Management Controller.
1146 * (called by wv_hw_reset())
1148 -static inline int wv_mmc_init(struct net_device * dev)
1149 +static int wv_mmc_init(struct net_device * dev)
1151 unsigned long ioaddr = dev->base_addr;
1152 net_local *lp = (net_local *) dev->priv;
1153 @@ -3136,7 +3136,7 @@
1154 * Start the receive unit.
1155 * (called by wv_hw_reset())
1157 -static inline int wv_ru_start(struct net_device * dev)
1158 +static int wv_ru_start(struct net_device * dev)
1160 net_local *lp = (net_local *) dev->priv;
1161 unsigned long ioaddr = dev->base_addr;
1162 @@ -3228,7 +3228,7 @@
1164 * (called by wv_hw_reset())
1166 -static inline int wv_cu_start(struct net_device * dev)
1167 +static int wv_cu_start(struct net_device * dev)
1169 net_local *lp = (net_local *) dev->priv;
1170 unsigned long ioaddr = dev->base_addr;
1171 @@ -3329,7 +3329,7 @@
1173 * (called by wv_hw_reset())
1175 -static inline int wv_82586_start(struct net_device * dev)
1176 +static int wv_82586_start(struct net_device * dev)
1178 net_local *lp = (net_local *) dev->priv;
1179 unsigned long ioaddr = dev->base_addr;
1180 @@ -3641,7 +3641,7 @@
1181 * WaveLAN controller (i82586).
1182 * (called by wavelan_close())
1184 -static inline void wv_82586_stop(struct net_device * dev)
1185 +static void wv_82586_stop(struct net_device * dev)
1187 net_local *lp = (net_local *) dev->priv;
1188 unsigned long ioaddr = dev->base_addr;
1189 diff -Nur linux-2.6.15.1/drivers/scsi/aic7xxx_old.c linux-2.6.15.1-owrt/drivers/scsi/aic7xxx_old.c
1190 --- linux-2.6.15.1/drivers/scsi/aic7xxx_old.c 2006-01-15 07:16:02.000000000 +0100
1191 +++ linux-2.6.15.1-owrt/drivers/scsi/aic7xxx_old.c 2006-01-27 15:08:36.000000000 +0100
1192 @@ -1290,7 +1290,7 @@
1194 ***************************************************************************/
1196 -static inline unsigned char
1197 +static unsigned char
1198 aic_inb(struct aic7xxx_host *p, long port)
1201 @@ -1309,7 +1309,7 @@
1207 aic_outb(struct aic7xxx_host *p, unsigned char val, long port)
1210 diff -Nur linux-2.6.15.1/drivers/scsi/iscsi_tcp.c linux-2.6.15.1-owrt/drivers/scsi/iscsi_tcp.c
1211 --- linux-2.6.15.1/drivers/scsi/iscsi_tcp.c 2006-01-15 07:16:02.000000000 +0100
1212 +++ linux-2.6.15.1-owrt/drivers/scsi/iscsi_tcp.c 2006-01-27 15:08:36.000000000 +0100
1213 @@ -1437,7 +1437,7 @@
1219 iscsi_digest_final_send(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask,
1220 struct iscsi_buf *buf, uint32_t *digest, int final)
1222 diff -Nur linux-2.6.15.1/drivers/scsi/libata-core.c linux-2.6.15.1-owrt/drivers/scsi/libata-core.c
1223 --- linux-2.6.15.1/drivers/scsi/libata-core.c 2006-01-15 07:16:02.000000000 +0100
1224 +++ linux-2.6.15.1-owrt/drivers/scsi/libata-core.c 2006-01-27 15:08:36.000000000 +0100
1225 @@ -1660,7 +1660,7 @@
1226 { ATA_SHIFT_PIO, XFER_PIO_0 },
1229 -static inline u8 base_from_shift(unsigned int shift)
1230 +static u8 base_from_shift(unsigned int shift)
1234 diff -Nur linux-2.6.15.1/drivers/scsi/megaraid/megaraid_mbox.c linux-2.6.15.1-owrt/drivers/scsi/megaraid/megaraid_mbox.c
1235 --- linux-2.6.15.1/drivers/scsi/megaraid/megaraid_mbox.c 2006-01-15 07:16:02.000000000 +0100
1236 +++ linux-2.6.15.1-owrt/drivers/scsi/megaraid/megaraid_mbox.c 2006-01-27 15:08:36.000000000 +0100
1237 @@ -1331,7 +1331,7 @@
1238 * return the scb from the head of the free list. NULL if there are none
1241 -static inline scb_t *
1243 megaraid_alloc_scb(adapter_t *adapter, struct scsi_cmnd *scp)
1245 struct list_head *head = &adapter->kscb_pool;
1246 @@ -1394,7 +1394,7 @@
1248 * prepare the scatter-gather list
1252 megaraid_mbox_mksgl(adapter_t *adapter, scb_t *scb)
1254 struct scatterlist *sgl;
1255 @@ -1467,7 +1467,7 @@
1257 * post the command to the controller if mailbox is availble.
1261 mbox_post_cmd(adapter_t *adapter, scb_t *scb)
1263 mraid_device_t *raid_dev = ADAP2RAIDDEV(adapter);
1264 @@ -2135,7 +2135,7 @@
1266 * Returns: 1 if the interrupt is valid, 0 otherwise
1270 megaraid_ack_sequence(adapter_t *adapter)
1272 mraid_device_t *raid_dev = ADAP2RAIDDEV(adapter);
1273 @@ -2273,7 +2273,7 @@
1275 * DMA sync if required.
1279 megaraid_mbox_sync_scb(adapter_t *adapter, scb_t *scb)
1282 diff -Nur linux-2.6.15.1/drivers/scsi/megaraid/megaraid_sas.c linux-2.6.15.1-owrt/drivers/scsi/megaraid/megaraid_sas.c
1283 --- linux-2.6.15.1/drivers/scsi/megaraid/megaraid_sas.c 2006-01-15 07:16:02.000000000 +0100
1284 +++ linux-2.6.15.1-owrt/drivers/scsi/megaraid/megaraid_sas.c 2006-01-27 15:08:36.000000000 +0100
1287 * Returns a free command from the pool
1289 -static inline struct megasas_cmd *megasas_get_cmd(struct megasas_instance
1290 +static struct megasas_cmd *megasas_get_cmd(struct megasas_instance
1293 unsigned long flags;
1295 * If successful, this function returns the number of SG elements. Otherwise,
1300 megasas_make_sgl32(struct megasas_instance *instance, struct scsi_cmnd *scp,
1301 union megasas_sgl *mfi_sgl)
1304 * If successful, this function returns the number of SG elements. Otherwise,
1309 megasas_make_sgl64(struct megasas_instance *instance, struct scsi_cmnd *scp,
1310 union megasas_sgl *mfi_sgl)
1313 * This function prepares CDB commands. These are typcially pass-through
1314 * commands to the devices.
1318 megasas_build_dcdb(struct megasas_instance *instance, struct scsi_cmnd *scp,
1319 struct megasas_cmd *cmd)
1323 * Frames (and accompanying SGLs) for regular SCSI IOs use this function.
1327 megasas_build_ldio(struct megasas_instance *instance, struct scsi_cmnd *scp,
1328 struct megasas_cmd *cmd)
1331 * @scp: SCSI command
1332 * @frame_count: [OUT] Number of frames used to prepare this command
1334 -static inline struct megasas_cmd *megasas_build_cmd(struct megasas_instance
1335 +static struct megasas_cmd *megasas_build_cmd(struct megasas_instance
1337 struct scsi_cmnd *scp,
1340 * @instance: Adapter soft state
1341 * @cmd: Completed command
1345 megasas_unmap_sgbuf(struct megasas_instance *instance, struct megasas_cmd *cmd)
1349 * an alternate status (as in the case of aborted
1354 megasas_complete_cmd(struct megasas_instance *instance, struct megasas_cmd *cmd,
1357 @@ -1104,7 +1104,7 @@
1358 * SCSI mid-layer instead of the status
1359 * returned by the FW
1363 megasas_deplete_reply_queue(struct megasas_instance *instance, u8 alt_status)
1366 diff -Nur linux-2.6.15.1/drivers/scsi/sr.c linux-2.6.15.1-owrt/drivers/scsi/sr.c
1367 --- linux-2.6.15.1/drivers/scsi/sr.c 2006-01-15 07:16:02.000000000 +0100
1368 +++ linux-2.6.15.1-owrt/drivers/scsi/sr.c 2006-01-27 15:08:36.000000000 +0100
1373 -static inline void scsi_cd_put(struct scsi_cd *cd)
1374 +static void scsi_cd_put(struct scsi_cd *cd)
1376 struct scsi_device *sdev = cd->device;
1378 diff -Nur linux-2.6.15.1/drivers/usb/atm/usbatm.c linux-2.6.15.1-owrt/drivers/usb/atm/usbatm.c
1379 --- linux-2.6.15.1/drivers/usb/atm/usbatm.c 2006-01-15 07:16:02.000000000 +0100
1380 +++ linux-2.6.15.1-owrt/drivers/usb/atm/usbatm.c 2006-01-27 15:08:36.000000000 +0100
1385 -static inline struct urb *usbatm_pop_urb(struct usbatm_channel *channel)
1386 +static struct urb *usbatm_pop_urb(struct usbatm_channel *channel)
1394 -static inline int usbatm_submit_urb(struct urb *urb)
1395 +static int usbatm_submit_urb(struct urb *urb)
1397 struct usbatm_channel *channel = urb->context;
1399 diff -Nur linux-2.6.15.1/drivers/video/matrox/matroxfb_maven.c linux-2.6.15.1-owrt/drivers/video/matrox/matroxfb_maven.c
1400 --- linux-2.6.15.1/drivers/video/matrox/matroxfb_maven.c 2006-01-15 07:16:02.000000000 +0100
1401 +++ linux-2.6.15.1-owrt/drivers/video/matrox/matroxfb_maven.c 2006-01-27 15:08:36.000000000 +0100
1406 -static inline int maven_program_timming(struct maven_data* md,
1407 +static int maven_program_timming(struct maven_data* md,
1408 const struct mavenregs* m) {
1409 struct i2c_client* c = md->client;
1411 diff -Nur linux-2.6.15.1/fs/9p/conv.c linux-2.6.15.1-owrt/fs/9p/conv.c
1412 --- linux-2.6.15.1/fs/9p/conv.c 2006-01-15 07:16:02.000000000 +0100
1413 +++ linux-2.6.15.1-owrt/fs/9p/conv.c 2006-01-27 15:08:36.000000000 +0100
1415 return buf->p > buf->ep;
1418 -static inline int buf_check_size(struct cbuf *buf, int len)
1419 +static int buf_check_size(struct cbuf *buf, int len)
1421 if (buf->p+len > buf->ep) {
1422 if (buf->p < buf->ep) {
1427 -static inline void *buf_alloc(struct cbuf *buf, int len)
1428 +static void *buf_alloc(struct cbuf *buf, int len)
1436 -static inline void buf_put_int8(struct cbuf *buf, u8 val)
1437 +static void buf_put_int8(struct cbuf *buf, u8 val)
1439 if (buf_check_size(buf, 1)) {
1445 -static inline void buf_put_int16(struct cbuf *buf, u16 val)
1446 +static void buf_put_int16(struct cbuf *buf, u16 val)
1448 if (buf_check_size(buf, 2)) {
1449 *(__le16 *) buf->p = cpu_to_le16(val);
1454 -static inline void buf_put_int32(struct cbuf *buf, u32 val)
1455 +static void buf_put_int32(struct cbuf *buf, u32 val)
1457 if (buf_check_size(buf, 4)) {
1458 *(__le32 *)buf->p = cpu_to_le32(val);
1463 -static inline void buf_put_int64(struct cbuf *buf, u64 val)
1464 +static void buf_put_int64(struct cbuf *buf, u64 val)
1466 if (buf_check_size(buf, 8)) {
1467 *(__le64 *)buf->p = cpu_to_le64(val);
1472 -static inline void buf_put_stringn(struct cbuf *buf, const char *s, u16 slen)
1473 +static void buf_put_stringn(struct cbuf *buf, const char *s, u16 slen)
1475 if (buf_check_size(buf, slen + 2)) {
1476 buf_put_int16(buf, slen);
1481 -static inline u8 buf_get_int8(struct cbuf *buf)
1482 +static u8 buf_get_int8(struct cbuf *buf)
1490 -static inline u16 buf_get_int16(struct cbuf *buf)
1491 +static u16 buf_get_int16(struct cbuf *buf)
1499 -static inline u32 buf_get_int32(struct cbuf *buf)
1500 +static u32 buf_get_int32(struct cbuf *buf)
1508 -static inline u64 buf_get_int64(struct cbuf *buf)
1509 +static u64 buf_get_int64(struct cbuf *buf)
1513 diff -Nur linux-2.6.15.1/fs/binfmt_elf.c linux-2.6.15.1-owrt/fs/binfmt_elf.c
1514 --- linux-2.6.15.1/fs/binfmt_elf.c 2006-01-15 07:16:02.000000000 +0100
1515 +++ linux-2.6.15.1-owrt/fs/binfmt_elf.c 2006-01-27 15:08:36.000000000 +0100
1516 @@ -1212,7 +1212,7 @@
1517 if (!dump_seek(file, (off))) \
1520 -static inline void fill_elf_header(struct elfhdr *elf, int segs)
1521 +static void fill_elf_header(struct elfhdr *elf, int segs)
1523 memcpy(elf->e_ident, ELFMAG, SELFMAG);
1524 elf->e_ident[EI_CLASS] = ELF_CLASS;
1525 @@ -1237,7 +1237,7 @@
1529 -static inline void fill_elf_note_phdr(struct elf_phdr *phdr, int sz, off_t offset)
1530 +static void fill_elf_note_phdr(struct elf_phdr *phdr, int sz, off_t offset)
1532 phdr->p_type = PT_NOTE;
1533 phdr->p_offset = offset;
1534 diff -Nur linux-2.6.15.1/fs/binfmt_misc.c linux-2.6.15.1-owrt/fs/binfmt_misc.c
1535 --- linux-2.6.15.1/fs/binfmt_misc.c 2006-01-15 07:16:02.000000000 +0100
1536 +++ linux-2.6.15.1-owrt/fs/binfmt_misc.c 2006-01-27 15:08:36.000000000 +0100
1541 -static inline char * check_special_flags (char * sfs, Node * e)
1542 +static char * check_special_flags (char * sfs, Node * e)
1546 diff -Nur linux-2.6.15.1/fs/bio.c linux-2.6.15.1-owrt/fs/bio.c
1547 --- linux-2.6.15.1/fs/bio.c 2006-01-15 07:16:02.000000000 +0100
1548 +++ linux-2.6.15.1-owrt/fs/bio.c 2006-01-27 15:08:36.000000000 +0100
1550 bio_free(bio, fs_bio_set);
1553 -inline void bio_init(struct bio *bio)
1554 +void bio_init(struct bio *bio)
1556 bio->bi_next = NULL;
1557 bio->bi_flags = 1 << BIO_UPTODATE;
1559 * the actual data it points to. Reference count of returned
1562 -inline void __bio_clone(struct bio *bio, struct bio *bio_src)
1563 +void __bio_clone(struct bio *bio, struct bio *bio_src)
1565 request_queue_t *q = bdev_get_queue(bio_src->bi_bdev);
1567 diff -Nur linux-2.6.15.1/fs/buffer.c linux-2.6.15.1-owrt/fs/buffer.c
1568 --- linux-2.6.15.1/fs/buffer.c 2006-01-15 07:16:02.000000000 +0100
1569 +++ linux-2.6.15.1-owrt/fs/buffer.c 2006-01-27 15:08:36.000000000 +0100
1570 @@ -1170,7 +1170,7 @@
1571 * some of those buffers may be aliases of filesystem data.
1572 * grow_dev_page() will go BUG() if this happens.
1576 grow_buffers(struct block_device *bdev, sector_t block, int size)
1579 @@ -1396,7 +1396,7 @@
1581 * Look up the bh in this cpu's LRU. If it's there, move it to the head.
1583 -static inline struct buffer_head *
1584 +static struct buffer_head *
1585 lookup_bh_lru(struct block_device *bdev, sector_t block, int size)
1587 struct buffer_head *ret = NULL;
1588 @@ -1546,7 +1546,7 @@
1590 * Called when truncating a buffer on a page completely.
1592 -static inline void discard_buffer(struct buffer_head * bh)
1593 +static void discard_buffer(struct buffer_head * bh)
1596 clear_buffer_dirty(bh);
1597 diff -Nur linux-2.6.15.1/fs/compat.c linux-2.6.15.1-owrt/fs/compat.c
1598 --- linux-2.6.15.1/fs/compat.c 2006-01-15 07:16:02.000000000 +0100
1599 +++ linux-2.6.15.1-owrt/fs/compat.c 2006-01-27 15:08:36.000000000 +0100
1600 @@ -1523,7 +1523,7 @@
1601 * Ooo, nasty. We need here to frob 32-bit unsigned longs to
1602 * 64-bit unsigned longs.
1606 int compat_get_fd_set(unsigned long nr, compat_ulong_t __user *ufdset,
1607 unsigned long *fdset)
1609 @@ -1556,7 +1556,7 @@
1615 void compat_set_fd_set(unsigned long nr, compat_ulong_t __user *ufdset,
1616 unsigned long *fdset)
1618 diff -Nur linux-2.6.15.1/fs/dcache.c linux-2.6.15.1-owrt/fs/dcache.c
1619 --- linux-2.6.15.1/fs/dcache.c 2006-01-15 07:16:02.000000000 +0100
1620 +++ linux-2.6.15.1-owrt/fs/dcache.c 2006-01-27 15:08:36.000000000 +0100
1622 * d_iput() operation if defined.
1623 * Called with dcache_lock and per dentry lock held, drops both.
1625 -static inline void dentry_iput(struct dentry * dentry)
1626 +static void dentry_iput(struct dentry * dentry)
1628 struct inode *inode = dentry->d_inode;
1630 diff -Nur linux-2.6.15.1/fs/exec.c linux-2.6.15.1-owrt/fs/exec.c
1631 --- linux-2.6.15.1/fs/exec.c 2006-01-15 07:16:02.000000000 +0100
1632 +++ linux-2.6.15.1-owrt/fs/exec.c 2006-01-27 15:08:36.000000000 +0100
1634 * disturbing other processes. (Other processes might share the signal
1635 * table via the CLONE_SIGHAND option to clone().)
1637 -static inline int de_thread(struct task_struct *tsk)
1638 +static int de_thread(struct task_struct *tsk)
1640 struct signal_struct *sig = tsk->signal;
1641 struct sighand_struct *newsighand, *oldsighand = tsk->sighand;
1643 * so that a new one can be started
1646 -static inline void flush_old_files(struct files_struct * files)
1647 +static void flush_old_files(struct files_struct * files)
1650 struct fdtable *fdt;
1653 EXPORT_SYMBOL(prepare_binprm);
1655 -static inline int unsafe_exec(struct task_struct *p)
1656 +static int unsafe_exec(struct task_struct *p)
1659 if (p->ptrace & PT_PTRACED) {
1660 diff -Nur linux-2.6.15.1/fs/fcntl.c linux-2.6.15.1-owrt/fs/fcntl.c
1661 --- linux-2.6.15.1/fs/fcntl.c 2006-01-15 07:16:02.000000000 +0100
1662 +++ linux-2.6.15.1-owrt/fs/fcntl.c 2006-01-27 15:08:36.000000000 +0100
1664 spin_unlock(&files->file_lock);
1667 -static inline int get_close_on_exec(unsigned int fd)
1668 +static int get_close_on_exec(unsigned int fd)
1670 struct files_struct *files = current->files;
1671 struct fdtable *fdt;
1672 diff -Nur linux-2.6.15.1/fs/inode.c linux-2.6.15.1-owrt/fs/inode.c
1673 --- linux-2.6.15.1/fs/inode.c 2006-01-15 07:16:02.000000000 +0100
1674 +++ linux-2.6.15.1-owrt/fs/inode.c 2006-01-27 15:03:56.000000000 +0100
1677 * Note, @test is called with the inode_lock held, so can't sleep.
1679 -static inline struct inode *ifind(struct super_block *sb,
1680 +static struct inode *ifind(struct super_block *sb,
1681 struct hlist_head *head, int (*test)(struct inode *, void *),
1682 void *data, const int wait)
1686 * Otherwise NULL is returned.
1688 -static inline struct inode *ifind_fast(struct super_block *sb,
1689 +static struct inode *ifind_fast(struct super_block *sb,
1690 struct hlist_head *head, unsigned long ino)
1692 struct inode *inode;
1693 diff -Nur linux-2.6.15.1/fs/jffs2/build.c linux-2.6.15.1-owrt/fs/jffs2/build.c
1694 --- linux-2.6.15.1/fs/jffs2/build.c 2006-01-15 07:16:02.000000000 +0100
1695 +++ linux-2.6.15.1-owrt/fs/jffs2/build.c 2006-01-27 15:08:36.000000000 +0100
1697 ic = next_inode(&i, ic, (c)))
1700 -static inline void jffs2_build_inode_pass1(struct jffs2_sb_info *c,
1701 +static void jffs2_build_inode_pass1(struct jffs2_sb_info *c,
1702 struct jffs2_inode_cache *ic)
1704 struct jffs2_full_dirent *fd;
1705 diff -Nur linux-2.6.15.1/fs/jffs2/nodelist.c linux-2.6.15.1-owrt/fs/jffs2/nodelist.c
1706 --- linux-2.6.15.1/fs/jffs2/nodelist.c 2006-01-15 07:16:02.000000000 +0100
1707 +++ linux-2.6.15.1-owrt/fs/jffs2/nodelist.c 2006-01-27 15:08:36.000000000 +0100
1710 * Allocate and initializes a new fragment.
1712 -static inline struct jffs2_node_frag * new_fragment(struct jffs2_full_dnode *fn, uint32_t ofs, uint32_t size)
1713 +static struct jffs2_node_frag * new_fragment(struct jffs2_full_dnode *fn, uint32_t ofs, uint32_t size)
1715 struct jffs2_node_frag *newfrag;
1719 * Checks the node if we are in the checking stage.
1721 -static inline int check_node(struct jffs2_sb_info *c, struct jffs2_inode_info *f, struct jffs2_tmp_dnode_info *tn)
1722 +static int check_node(struct jffs2_sb_info *c, struct jffs2_inode_info *f, struct jffs2_tmp_dnode_info *tn)
1726 diff -Nur linux-2.6.15.1/fs/lockd/xdr.c linux-2.6.15.1-owrt/fs/lockd/xdr.c
1727 --- linux-2.6.15.1/fs/lockd/xdr.c 2006-01-15 07:16:02.000000000 +0100
1728 +++ linux-2.6.15.1-owrt/fs/lockd/xdr.c 2006-01-27 15:08:36.000000000 +0100
1731 * XDR functions for basic NLM types
1733 -static inline u32 *nlm_decode_cookie(u32 *p, struct nlm_cookie *c)
1734 +static u32 *nlm_decode_cookie(u32 *p, struct nlm_cookie *c)
1742 -static inline u32 *
1744 nlm_decode_fh(u32 *p, struct nfs_fh *f)
1748 return xdr_encode_netobj(p, oh);
1751 -static inline u32 *
1753 nlm_decode_lock(u32 *p, struct nlm_lock *lock)
1755 struct file_lock *fl = &lock->fl;
1756 diff -Nur linux-2.6.15.1/fs/locks.c linux-2.6.15.1-owrt/fs/locks.c
1757 --- linux-2.6.15.1/fs/locks.c 2006-01-15 07:16:02.000000000 +0100
1758 +++ linux-2.6.15.1-owrt/fs/locks.c 2006-01-27 15:03:52.000000000 +0100
1762 /* Free a lock which is not in use. */
1763 -static inline void locks_free_lock(struct file_lock *fl)
1764 +static void locks_free_lock(struct file_lock *fl)
1770 * Check whether two locks have the same owner.
1773 -posix_same_owner(struct file_lock *fl1, struct file_lock *fl2)
1774 +static int posix_same_owner(struct file_lock *fl1, struct file_lock *fl2)
1776 if (fl1->fl_lmops && fl1->fl_lmops->fl_compare_owner)
1777 return fl2->fl_lmops == fl1->fl_lmops &&
1779 /* Remove waiter from blocker's block list.
1780 * When blocker ends up pointing to itself then the list is empty.
1782 -static inline void __locks_delete_block(struct file_lock *waiter)
1783 +static void __locks_delete_block(struct file_lock *waiter)
1785 list_del_init(&waiter->fl_block);
1786 list_del_init(&waiter->fl_link);
1787 diff -Nur linux-2.6.15.1/fs/mbcache.c linux-2.6.15.1-owrt/fs/mbcache.c
1788 --- linux-2.6.15.1/fs/mbcache.c 2006-01-15 07:16:02.000000000 +0100
1789 +++ linux-2.6.15.1-owrt/fs/mbcache.c 2006-01-27 15:08:36.000000000 +0100
1796 __mb_cache_entry_unhash(struct mb_cache_entry *ce)
1805 __mb_cache_entry_forget(struct mb_cache_entry *ce, gfp_t gfp_mask)
1807 struct mb_cache *cache = ce->e_cache;
1814 __mb_cache_entry_release_unlock(struct mb_cache_entry *ce)
1816 /* Wake up all processes queuing for this cache entry. */
1817 diff -Nur linux-2.6.15.1/fs/namei.c linux-2.6.15.1-owrt/fs/namei.c
1818 --- linux-2.6.15.1/fs/namei.c 2006-01-15 07:16:02.000000000 +0100
1819 +++ linux-2.6.15.1-owrt/fs/namei.c 2006-01-27 15:08:36.000000000 +0100
1821 * POSIX.1 2.4: an empty pathname is invalid (ENOENT).
1822 * PATH_MAX includes the nul terminator --RR.
1824 -static inline int do_getname(const char __user *filename, char *page)
1825 +static int do_getname(const char __user *filename, char *page)
1828 unsigned long len = PATH_MAX;
1830 * short-cut DAC fails, then call permission() to do more
1831 * complete permission check.
1833 -static inline int exec_permission_lite(struct inode *inode,
1834 +static int exec_permission_lite(struct inode *inode,
1835 struct nameidata *nd)
1837 umode_t mode = inode->i_mode;
1839 static int __emul_lookup_dentry(const char *, struct nameidata *);
1843 +static __always_inline int
1844 walk_init_root(const char *name, struct nameidata *nd)
1846 read_lock(¤t->fs->lock);
1851 -static inline int __vfs_follow_link(struct nameidata *nd, const char *link)
1852 +static __always_inline int __vfs_follow_link(struct nameidata *nd, const char *link)
1857 struct dentry *dentry;
1860 -static inline int __do_follow_link(struct path *path, struct nameidata *nd)
1861 +static __always_inline int __do_follow_link(struct path *path, struct nameidata *nd)
1869 -static inline void follow_dotdot(struct nameidata *nd)
1870 +static __always_inline void follow_dotdot(struct nameidata *nd)
1873 struct vfsmount *parent;
1874 @@ -1293,7 +1293,7 @@
1875 * 10. We don't allow removal of NFS sillyrenamed files; it's handled by
1876 * nfs_async_unlink().
1878 -static inline int may_delete(struct inode *dir,struct dentry *victim,int isdir)
1879 +static int may_delete(struct inode *dir,struct dentry *victim,int isdir)
1883 @@ -2314,7 +2314,7 @@
1887 -static inline int do_rename(const char * oldname, const char * newname)
1888 +static int do_rename(const char * oldname, const char * newname)
1891 struct dentry * old_dir, * new_dir;
1892 diff -Nur linux-2.6.15.1/fs/nfsd/nfsxdr.c linux-2.6.15.1-owrt/fs/nfsd/nfsxdr.c
1893 --- linux-2.6.15.1/fs/nfsd/nfsxdr.c 2006-01-15 07:16:02.000000000 +0100
1894 +++ linux-2.6.15.1-owrt/fs/nfsd/nfsxdr.c 2006-01-27 15:11:46.000000000 +0100
1897 * XDR functions for basic NFS types
1899 -static inline u32 *
1901 decode_fh(u32 *p, struct svc_fh *fhp)
1903 fh_init(fhp, NFS_FHSIZE);
1905 return decode_fh(p, fhp);
1908 -static inline u32 *
1910 encode_fh(u32 *p, struct svc_fh *fhp)
1912 memcpy(p, &fhp->fh_handle.fh_base, NFS_FHSIZE);
1913 diff -Nur linux-2.6.15.1/fs/open.c linux-2.6.15.1-owrt/fs/open.c
1914 --- linux-2.6.15.1/fs/open.c 2006-01-15 07:16:02.000000000 +0100
1915 +++ linux-2.6.15.1-owrt/fs/open.c 2006-01-27 15:04:00.000000000 +0100
1920 -static inline long do_sys_truncate(const char __user * path, loff_t length)
1921 +static long do_sys_truncate(const char __user * path, loff_t length)
1923 struct nameidata nd;
1924 struct inode * inode;
1926 return do_sys_truncate(path, (long)length);
1929 -static inline long do_sys_ftruncate(unsigned int fd, loff_t length, int small)
1930 +static long do_sys_ftruncate(unsigned int fd, loff_t length, int small)
1932 struct inode * inode;
1933 struct dentry *dentry;
1936 EXPORT_SYMBOL(get_unused_fd);
1938 -static inline void __put_unused_fd(struct files_struct *files, unsigned int fd)
1939 +static void __put_unused_fd(struct files_struct *files, unsigned int fd)
1941 struct fdtable *fdt = files_fdtable(files);
1942 __FD_CLR(fd, fdt->open_fds);
1943 diff -Nur linux-2.6.15.1/fs/pipe.c linux-2.6.15.1-owrt/fs/pipe.c
1944 --- linux-2.6.15.1/fs/pipe.c 2006-01-15 07:16:02.000000000 +0100
1945 +++ linux-2.6.15.1-owrt/fs/pipe.c 2006-01-27 15:08:36.000000000 +0100
1947 down(PIPE_SEM(*inode));
1952 pipe_iov_copy_from_user(void *to, struct iovec *iov, unsigned long len)
1961 pipe_iov_copy_to_user(struct iovec *iov, const void *from, unsigned long len)
1964 diff -Nur linux-2.6.15.1/include/asm-i386/bitops.h linux-2.6.15.1-owrt/include/asm-i386/bitops.h
1965 --- linux-2.6.15.1/include/asm-i386/bitops.h 2006-01-15 07:16:02.000000000 +0100
1966 +++ linux-2.6.15.1-owrt/include/asm-i386/bitops.h 2006-01-27 15:03:37.000000000 +0100
1968 static int test_bit(int nr, const volatile void * addr);
1971 -static inline int constant_test_bit(int nr, const volatile unsigned long *addr)
1972 +static __always_inline int constant_test_bit(int nr, const volatile unsigned long *addr)
1974 return ((1UL << (nr & 31)) & (addr[nr >> 5])) != 0;
1976 diff -Nur linux-2.6.15.1/include/asm-i386/current.h linux-2.6.15.1-owrt/include/asm-i386/current.h
1977 --- linux-2.6.15.1/include/asm-i386/current.h 2006-01-15 07:16:02.000000000 +0100
1978 +++ linux-2.6.15.1-owrt/include/asm-i386/current.h 2006-01-27 15:03:37.000000000 +0100
1983 -static inline struct task_struct * get_current(void)
1984 +static __always_inline struct task_struct * get_current(void)
1986 return current_thread_info()->task;
1988 diff -Nur linux-2.6.15.1/include/asm-i386/string.h linux-2.6.15.1-owrt/include/asm-i386/string.h
1989 --- linux-2.6.15.1/include/asm-i386/string.h 2006-01-15 07:16:02.000000000 +0100
1990 +++ linux-2.6.15.1-owrt/include/asm-i386/string.h 2006-01-27 15:03:37.000000000 +0100
1995 -static inline void * __memcpy(void * to, const void * from, size_t n)
1996 +static __always_inline void * __memcpy(void * to, const void * from, size_t n)
1999 __asm__ __volatile__(
2001 * This looks ugly, but the compiler can optimize it totally,
2002 * as the count is constant.
2004 -static inline void * __constant_memcpy(void * to, const void * from, size_t n)
2005 +static __always_inline void * __constant_memcpy(void * to, const void * from, size_t n)
2010 * things 32 bits at a time even when we don't know the size of the
2011 * area at compile-time..
2013 -static inline void * __constant_c_memset(void * s, unsigned long c, size_t count)
2014 +static __always_inline void * __constant_c_memset(void * s, unsigned long c, size_t count)
2017 __asm__ __volatile__(
2019 * This looks horribly ugly, but the compiler can optimize it totally,
2020 * as we by now know that both pattern and count is constant..
2022 -static inline void * __constant_c_and_count_memset(void * s, unsigned long pattern, size_t count)
2023 +static __always_inline void * __constant_c_and_count_memset(void * s, unsigned long pattern, size_t count)
2027 diff -Nur linux-2.6.15.1/include/asm-i386/uaccess.h linux-2.6.15.1-owrt/include/asm-i386/uaccess.h
2028 --- linux-2.6.15.1/include/asm-i386/uaccess.h 2006-01-15 07:16:02.000000000 +0100
2029 +++ linux-2.6.15.1-owrt/include/asm-i386/uaccess.h 2006-01-27 15:03:37.000000000 +0100
2031 * Returns number of bytes that could not be copied.
2032 * On success, this will be zero.
2034 -static inline unsigned long __must_check
2035 +static __always_inline unsigned long __must_check
2036 __copy_to_user_inatomic(void __user *to, const void *from, unsigned long n)
2038 if (__builtin_constant_p(n)) {
2040 return __copy_to_user_ll(to, from, n);
2043 -static inline unsigned long __must_check
2044 +static __always_inline unsigned long __must_check
2045 __copy_to_user(void __user *to, const void *from, unsigned long n)
2049 * If some data could not be copied, this function will pad the copied
2050 * data to the requested size using zero bytes.
2052 -static inline unsigned long
2053 +static __always_inline unsigned long
2054 __copy_from_user_inatomic(void *to, const void __user *from, unsigned long n)
2056 if (__builtin_constant_p(n)) {
2058 return __copy_from_user_ll(to, from, n);
2061 -static inline unsigned long
2062 +static __always_inline unsigned long
2063 __copy_from_user(void *to, const void __user *from, unsigned long n)
2066 diff -Nur linux-2.6.15.1/include/asm-x86_64/fixmap.h linux-2.6.15.1-owrt/include/asm-x86_64/fixmap.h
2067 --- linux-2.6.15.1/include/asm-x86_64/fixmap.h 2006-01-15 07:16:02.000000000 +0100
2068 +++ linux-2.6.15.1-owrt/include/asm-x86_64/fixmap.h 2006-01-27 15:03:37.000000000 +0100
2070 * directly without translation, we catch the bug with a NULL-deference
2071 * kernel oops. Illegal ranges of incoming indices are caught too.
2073 -static inline unsigned long fix_to_virt(const unsigned int idx)
2074 +static __always_inline unsigned long fix_to_virt(const unsigned int idx)
2077 * this branch gets completely eliminated after inlining,
2078 diff -Nur linux-2.6.15.1/include/asm-x86_64/uaccess.h linux-2.6.15.1-owrt/include/asm-x86_64/uaccess.h
2079 --- linux-2.6.15.1/include/asm-x86_64/uaccess.h 2006-01-15 07:16:02.000000000 +0100
2080 +++ linux-2.6.15.1-owrt/include/asm-x86_64/uaccess.h 2006-01-27 15:03:37.000000000 +0100
2082 extern unsigned long copy_from_user(void *to, const void __user *from, unsigned len);
2083 extern unsigned long copy_in_user(void __user *to, const void __user *from, unsigned len);
2085 -static inline int __copy_from_user(void *dst, const void __user *src, unsigned size)
2086 +static __always_inline int __copy_from_user(void *dst, const void __user *src, unsigned size)
2089 if (!__builtin_constant_p(size))
2094 -static inline int __copy_to_user(void __user *dst, const void *src, unsigned size)
2095 +static __always_inline int __copy_to_user(void __user *dst, const void *src, unsigned size)
2098 if (!__builtin_constant_p(size))
2103 -static inline int __copy_in_user(void __user *dst, const void __user *src, unsigned size)
2104 +static __always_inline int __copy_in_user(void __user *dst, const void __user *src, unsigned size)
2107 if (!__builtin_constant_p(size))
2108 diff -Nur linux-2.6.15.1/include/linux/compiler-gcc3.h linux-2.6.15.1-owrt/include/linux/compiler-gcc3.h
2109 --- linux-2.6.15.1/include/linux/compiler-gcc3.h 2006-01-15 07:16:02.000000000 +0100
2110 +++ linux-2.6.15.1-owrt/include/linux/compiler-gcc3.h 2006-01-27 15:04:45.000000000 +0100
2112 #define __must_check __attribute__((warn_unused_result))
2115 +#define __always_inline inline __attribute__((always_inline))
2116 diff -Nur linux-2.6.15.1/include/linux/compiler-gcc4.h linux-2.6.15.1-owrt/include/linux/compiler-gcc4.h
2117 --- linux-2.6.15.1/include/linux/compiler-gcc4.h 2006-01-15 07:16:02.000000000 +0100
2118 +++ linux-2.6.15.1-owrt/include/linux/compiler-gcc4.h 2006-01-27 15:03:21.000000000 +0100
2120 /* These definitions are for GCC v4.x. */
2121 #include <linux/compiler-gcc.h>
2123 +#ifdef CONFIG_FORCED_INLINING
2127 #define inline inline __attribute__((always_inline))
2128 #define __inline__ __inline__ __attribute__((always_inline))
2129 #define __inline __inline __attribute__((always_inline))
2130 -#define __deprecated __attribute__((deprecated))
2133 #define __attribute_used__ __attribute__((__used__))
2134 -#define __attribute_pure__ __attribute__((pure))
2135 -#define __attribute_const__ __attribute__((__const__))
2136 -#define noinline __attribute__((noinline))
2137 #define __must_check __attribute__((warn_unused_result))
2138 #define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
2140 +#define __always_inline inline __attribute__((always_inline))
2141 diff -Nur linux-2.6.15.1/include/linux/mm.h linux-2.6.15.1-owrt/include/linux/mm.h
2142 --- linux-2.6.15.1/include/linux/mm.h 2006-01-15 07:16:02.000000000 +0100
2143 +++ linux-2.6.15.1-owrt/include/linux/mm.h 2006-01-27 15:03:37.000000000 +0100
2145 extern struct page *mem_map;
2148 -static inline void *lowmem_page_address(struct page *page)
2149 +static __always_inline void *lowmem_page_address(struct page *page)
2151 return __va(page_to_pfn(page) << PAGE_SHIFT);
2153 diff -Nur linux-2.6.15.1/include/linux/sched.h linux-2.6.15.1-owrt/include/linux/sched.h
2154 --- linux-2.6.15.1/include/linux/sched.h 2006-01-15 07:16:02.000000000 +0100
2155 +++ linux-2.6.15.1-owrt/include/linux/sched.h 2006-01-27 15:03:45.000000000 +0100
2156 @@ -1102,19 +1102,8 @@
2160 -#ifdef CONFIG_SECURITY
2161 -/* code is in security.c */
2162 +/* code is in security.c or kernel/sys.c if !SECURITY */
2163 extern int capable(int cap);
2165 -static inline int capable(int cap)
2167 - if (cap_raised(current->cap_effective, cap)) {
2168 - current->flags |= PF_SUPERPRIV;
2176 * Routines for handling mm_structs
2177 diff -Nur linux-2.6.15.1/include/linux/time.h linux-2.6.15.1-owrt/include/linux/time.h
2178 --- linux-2.6.15.1/include/linux/time.h 2006-01-15 07:16:02.000000000 +0100
2179 +++ linux-2.6.15.1-owrt/include/linux/time.h 2006-01-27 15:04:09.000000000 +0100
2181 return (a->tv_sec == b->tv_sec) && (a->tv_nsec == b->tv_nsec);
2184 -/* Converts Gregorian date to seconds since 1970-01-01 00:00:00.
2185 - * Assumes input in normal date format, i.e. 1980-12-31 23:59:59
2186 - * => year=1980, mon=12, day=31, hour=23, min=59, sec=59.
2188 - * [For the Julian calendar (which was used in Russia before 1917,
2189 - * Britain & colonies before 1752, anywhere else before 1582,
2190 - * and is still in use by some communities) leave out the
2191 - * -year/100+year/400 terms, and add 10.]
2193 - * This algorithm was first published by Gauss (I think).
2195 - * WARNING: this function will overflow on 2106-02-07 06:28:16 on
2196 - * machines were long is 32-bit! (However, as time_t is signed, we
2197 - * will already get problems at other places on 2038-01-19 03:14:08)
2199 -static inline unsigned long
2200 -mktime (unsigned int year, unsigned int mon,
2201 - unsigned int day, unsigned int hour,
2202 - unsigned int min, unsigned int sec)
2204 - if (0 >= (int) (mon -= 2)) { /* 1..12 -> 11,12,1..10 */
2205 - mon += 12; /* Puts Feb last since it has leap day */
2210 - (unsigned long) (year/4 - year/100 + year/400 + 367*mon/12 + day) +
2212 - )*24 + hour /* now have hours */
2213 - )*60 + min /* now have minutes */
2214 - )*60 + sec; /* finally seconds */
2216 +extern unsigned long mktime (unsigned int year, unsigned int mon,
2217 + unsigned int day, unsigned int hour,
2218 + unsigned int min, unsigned int sec);
2220 extern struct timespec xtime;
2221 extern struct timespec wall_to_monotonic;
2223 return xtime.tv_sec;
2226 +extern void set_normalized_timespec (struct timespec *ts, time_t sec, long nsec);
2228 struct timespec current_kernel_time(void);
2230 #define CURRENT_TIME (current_kernel_time())
2233 extern struct timespec timespec_trunc(struct timespec t, unsigned gran);
2236 -set_normalized_timespec (struct timespec *ts, time_t sec, long nsec)
2238 - while (nsec >= NSEC_PER_SEC) {
2239 - nsec -= NSEC_PER_SEC;
2242 - while (nsec < 0) {
2243 - nsec += NSEC_PER_SEC;
2247 - ts->tv_nsec = nsec;
2250 #endif /* __KERNEL__ */
2252 #define NFDBITS __NFDBITS
2253 diff -Nur linux-2.6.15.1/kernel/cpuset.c linux-2.6.15.1-owrt/kernel/cpuset.c
2254 --- linux-2.6.15.1/kernel/cpuset.c 2006-01-15 07:16:02.000000000 +0100
2255 +++ linux-2.6.15.1-owrt/kernel/cpuset.c 2006-01-27 15:08:36.000000000 +0100
2256 @@ -1252,7 +1252,7 @@
2257 * when reading out p->cpuset, as we don't really care if it changes
2258 * on the next cycle, and we are not going to try to dereference it.
2260 -static inline int pid_array_load(pid_t *pidarray, int npids, struct cpuset *cs)
2261 +static int pid_array_load(pid_t *pidarray, int npids, struct cpuset *cs)
2264 struct task_struct *g, *p;
2265 diff -Nur linux-2.6.15.1/kernel/exit.c linux-2.6.15.1-owrt/kernel/exit.c
2266 --- linux-2.6.15.1/kernel/exit.c 2006-01-15 07:16:02.000000000 +0100
2267 +++ linux-2.6.15.1-owrt/kernel/exit.c 2006-01-27 15:08:36.000000000 +0100
2272 -static inline int has_stopped_jobs(int pgrp)
2273 +static int has_stopped_jobs(int pgrp)
2276 struct task_struct *p;
2279 * NOTE that reparent_to_init() gives the caller full capabilities.
2281 -static inline void reparent_to_init(void)
2282 +static void reparent_to_init(void)
2284 write_lock_irq(&tasklist_lock);
2288 EXPORT_SYMBOL(daemonize);
2290 -static inline void close_files(struct files_struct * files)
2291 +static void close_files(struct files_struct * files)
2294 struct fdtable *fdt;
2296 p->real_parent = reaper;
2299 -static inline void reparent_thread(task_t *p, task_t *father, int traced)
2300 +static void reparent_thread(task_t *p, task_t *father, int traced)
2302 /* We don't want people slaying init. */
2303 if (p->exit_signal != -1)
2305 * group, and if no such member exists, give it to
2306 * the global child reaper process (ie "init")
2308 -static inline void forget_original_parent(struct task_struct * father,
2309 +static void forget_original_parent(struct task_struct * father,
2310 struct list_head *to_release)
2312 struct task_struct *p, *reaper = father;
2313 diff -Nur linux-2.6.15.1/kernel/posix-timers.c linux-2.6.15.1-owrt/kernel/posix-timers.c
2314 --- linux-2.6.15.1/kernel/posix-timers.c 2006-01-15 07:16:02.000000000 +0100
2315 +++ linux-2.6.15.1-owrt/kernel/posix-timers.c 2006-01-27 15:08:36.000000000 +0100
2317 return do_sys_settimeofday(tp, NULL);
2320 -static inline int common_timer_create(struct k_itimer *new_timer)
2321 +static int common_timer_create(struct k_itimer *new_timer)
2323 INIT_LIST_HEAD(&new_timer->it.real.abs_timer_entry);
2324 init_timer(&new_timer->it.real.timer);
2329 -static inline struct task_struct * good_sigevent(sigevent_t * event)
2330 +static struct task_struct * good_sigevent(sigevent_t * event)
2332 struct task_struct *rtn = current->group_leader;
2336 /* Set a POSIX.1b interval timer. */
2337 /* timr->it_lock is taken. */
2340 common_timer_set(struct k_itimer *timr, int flags,
2341 struct itimerspec *new_setting, struct itimerspec *old_setting)
2343 @@ -1122,7 +1122,7 @@
2345 * return timer owned by the process, used by exit_itimers
2347 -static inline void itimer_delete(struct k_itimer *timer)
2348 +static void itimer_delete(struct k_itimer *timer)
2350 unsigned long flags;
2352 diff -Nur linux-2.6.15.1/kernel/sched.c linux-2.6.15.1-owrt/kernel/sched.c
2353 --- linux-2.6.15.1/kernel/sched.c 2006-01-15 07:16:02.000000000 +0100
2354 +++ linux-2.6.15.1-owrt/kernel/sched.c 2006-01-27 15:08:36.000000000 +0100
2356 * long it was waiting to run. We also note when it began so that we
2357 * can keep stats on how long its timeslice is.
2359 -static inline void sched_info_arrive(task_t *t)
2360 +static void sched_info_arrive(task_t *t)
2362 unsigned long now = jiffies, diff = 0;
2363 struct runqueue *rq = task_rq(t);
2365 * We want to under-estimate the load of migration sources, to
2366 * balance conservatively.
2368 -static inline unsigned long __source_load(int cpu, int type, enum idle_type idle)
2369 +static unsigned long __source_load(int cpu, int type, enum idle_type idle)
2371 runqueue_t *rq = cpu_rq(cpu);
2372 unsigned long running = rq->nr_running;
2373 @@ -1849,7 +1849,7 @@
2374 * pull_task - move a task from a remote runqueue to the local runqueue.
2375 * Both runqueues must be locked.
2379 void pull_task(runqueue_t *src_rq, prio_array_t *src_array, task_t *p,
2380 runqueue_t *this_rq, prio_array_t *this_array, int this_cpu)
2382 @@ -1871,7 +1871,7 @@
2384 * can_migrate_task - may task p from runqueue rq be migrated to this_cpu?
2388 int can_migrate_task(task_t *p, runqueue_t *rq, int this_cpu,
2389 struct sched_domain *sd, enum idle_type idle,
2391 @@ -2357,7 +2357,7 @@
2392 * idle_balance is called by schedule() if this_cpu is about to become
2393 * idle. Attempts to pull tasks from other CPUs.
2395 -static inline void idle_balance(int this_cpu, runqueue_t *this_rq)
2396 +static void idle_balance(int this_cpu, runqueue_t *this_rq)
2398 struct sched_domain *sd;
2400 @@ -2741,7 +2741,7 @@
2401 resched_task(rq->idle);
2404 -static inline void wake_sleeping_dependent(int this_cpu, runqueue_t *this_rq)
2405 +static void wake_sleeping_dependent(int this_cpu, runqueue_t *this_rq)
2407 struct sched_domain *tmp, *sd = NULL;
2408 cpumask_t sibling_map;
2409 @@ -2795,7 +2795,7 @@
2410 return p->time_slice * (100 - sd->per_cpu_gain) / 100;
2413 -static inline int dependent_sleeper(int this_cpu, runqueue_t *this_rq)
2414 +static int dependent_sleeper(int this_cpu, runqueue_t *this_rq)
2416 struct sched_domain *tmp, *sd = NULL;
2417 cpumask_t sibling_map;
2418 @@ -5505,7 +5505,7 @@
2419 * Detach sched domains from a group of cpus specified in cpu_map
2420 * These cpus will now be attached to the NULL domain
2422 -static inline void detach_destroy_domains(const cpumask_t *cpu_map)
2423 +static void detach_destroy_domains(const cpumask_t *cpu_map)
2427 diff -Nur linux-2.6.15.1/kernel/signal.c linux-2.6.15.1-owrt/kernel/signal.c
2428 --- linux-2.6.15.1/kernel/signal.c 2006-01-15 07:16:02.000000000 +0100
2429 +++ linux-2.6.15.1-owrt/kernel/signal.c 2006-01-27 15:08:36.000000000 +0100
2431 spin_unlock_irqrestore(¤t->sighand->siglock, flags);
2434 -static inline int collect_signal(int sig, struct sigpending *list, siginfo_t *info)
2435 +static int collect_signal(int sig, struct sigpending *list, siginfo_t *info)
2437 struct sigqueue *q, *first = NULL;
2438 int still_pending = 0;
2439 @@ -1786,7 +1786,7 @@
2440 * We return zero if we still hold the siglock and should look
2441 * for another signal without checking group_stop_count again.
2443 -static inline int handle_group_stop(void)
2444 +static int handle_group_stop(void)
2448 diff -Nur linux-2.6.15.1/kernel/sys.c linux-2.6.15.1-owrt/kernel/sys.c
2449 --- linux-2.6.15.1/kernel/sys.c 2006-01-15 07:16:02.000000000 +0100
2450 +++ linux-2.6.15.1-owrt/kernel/sys.c 2006-01-27 15:03:45.000000000 +0100
2451 @@ -223,6 +223,18 @@
2453 EXPORT_SYMBOL(unregister_reboot_notifier);
2455 +#ifndef CONFIG_SECURITY
2456 +int capable(int cap)
2458 + if (cap_raised(current->cap_effective, cap)) {
2459 + current->flags |= PF_SUPERPRIV;
2464 +EXPORT_SYMBOL(capable);
2467 static int set_one_prio(struct task_struct *p, int niceval, int error)
2470 diff -Nur linux-2.6.15.1/kernel/time.c linux-2.6.15.1-owrt/kernel/time.c
2471 --- linux-2.6.15.1/kernel/time.c 2006-01-15 07:16:02.000000000 +0100
2472 +++ linux-2.6.15.1-owrt/kernel/time.c 2006-01-27 15:04:09.000000000 +0100
2473 @@ -583,6 +583,67 @@
2475 EXPORT_SYMBOL_GPL(getnstimestamp);
2477 +/* Converts Gregorian date to seconds since 1970-01-01 00:00:00.
2478 + * Assumes input in normal date format, i.e. 1980-12-31 23:59:59
2479 + * => year=1980, mon=12, day=31, hour=23, min=59, sec=59.
2481 + * [For the Julian calendar (which was used in Russia before 1917,
2482 + * Britain & colonies before 1752, anywhere else before 1582,
2483 + * and is still in use by some communities) leave out the
2484 + * -year/100+year/400 terms, and add 10.]
2486 + * This algorithm was first published by Gauss (I think).
2488 + * WARNING: this function will overflow on 2106-02-07 06:28:16 on
2489 + * machines were long is 32-bit! (However, as time_t is signed, we
2490 + * will already get problems at other places on 2038-01-19 03:14:08)
2493 +mktime (unsigned int year, unsigned int mon,
2494 + unsigned int day, unsigned int hour,
2495 + unsigned int min, unsigned int sec)
2497 + if (0 >= (int) (mon -= 2)) { /* 1..12 -> 11,12,1..10 */
2498 + mon += 12; /* Puts Feb last since it has leap day */
2502 + return ((((unsigned long)
2503 + (year/4 - year/100 + year/400 + 367*mon/12 + day) +
2505 + )*24 + hour /* now have hours */
2506 + )*60 + min /* now have minutes */
2507 + )*60 + sec; /* finally seconds */
2511 + * set_normalized_timespec - set timespec sec and nsec parts and normalize
2513 + * @ts: pointer to timespec variable to be set
2514 + * @sec: seconds to set
2515 + * @nsec: nanoseconds to set
2517 + * Set seconds and nanoseconds field of a timespec variable and
2518 + * normalize to the timespec storage format
2520 + * Note: The tv_nsec part is always in the range of
2521 + * 0 <= tv_nsec < NSEC_PER_SEC
2522 + * For negative values only the tv_sec field is negative !
2524 +void set_normalized_timespec (struct timespec *ts, time_t sec, long nsec)
2526 + while (nsec >= NSEC_PER_SEC) {
2527 + nsec -= NSEC_PER_SEC;
2530 + while (nsec < 0) {
2531 + nsec += NSEC_PER_SEC;
2535 + ts->tv_nsec = nsec;
2538 #if (BITS_PER_LONG < 64)
2539 u64 get_jiffies_64(void)
2541 diff -Nur linux-2.6.15.1/kernel/workqueue.c linux-2.6.15.1-owrt/kernel/workqueue.c
2542 --- linux-2.6.15.1/kernel/workqueue.c 2006-01-15 07:16:02.000000000 +0100
2543 +++ linux-2.6.15.1-owrt/kernel/workqueue.c 2006-01-27 15:08:36.000000000 +0100
2548 -static inline void run_workqueue(struct cpu_workqueue_struct *cwq)
2549 +static void run_workqueue(struct cpu_workqueue_struct *cwq)
2551 unsigned long flags;
2553 diff -Nur linux-2.6.15.1/lib/Kconfig.debug linux-2.6.15.1-owrt/lib/Kconfig.debug
2554 --- linux-2.6.15.1/lib/Kconfig.debug 2006-01-15 07:16:02.000000000 +0100
2555 +++ linux-2.6.15.1-owrt/lib/Kconfig.debug 2006-01-27 15:03:21.000000000 +0100
2556 @@ -186,6 +186,20 @@
2557 some architectures or if you use external debuggers.
2558 If you don't debug the kernel, you can say N.
2560 +config FORCED_INLINING
2561 + bool "Force gcc to inline functions marked 'inline'"
2562 + depends on DEBUG_KERNEL
2565 + This option determines if the kernel forces gcc to inline the functions
2566 + developers have marked 'inline'. Doing so takes away freedom from gcc to
2567 + do what it thinks is best, which is desirable for the gcc 3.x series of
2568 + compilers. The gcc 4.x series have a rewritten inlining algorithm and
2569 + disabling this option will generate a smaller kernel there. Hopefully
2570 + this algorithm is so good that allowing gcc4 to make the decision can
2571 + become the default in the future, until then this option is there to
2572 + test gcc for this.
2574 config RCU_TORTURE_TEST
2575 tristate "torture tests for RCU"
2576 depends on DEBUG_KERNEL
2577 diff -Nur linux-2.6.15.1/mm/internal.h linux-2.6.15.1-owrt/mm/internal.h
2578 --- linux-2.6.15.1/mm/internal.h 2006-01-15 07:16:02.000000000 +0100
2579 +++ linux-2.6.15.1-owrt/mm/internal.h 2006-01-27 15:04:04.000000000 +0100
2581 * 2 of the License, or (at your option) any later version.
2585 -extern void set_page_refs(struct page *page, int order);
2586 +static inline void set_page_refs(struct page *page, int order)
2589 + set_page_count(page, 1);
2594 + * We need to reference all the pages for this order, otherwise if
2595 + * anyone accesses one of the pages with (get/put) it will be freed.
2596 + * - eg: access_process_vm()
2598 + for (i = 0; i < (1 << order); i++)
2599 + set_page_count(page + i, 1);
2600 +#endif /* CONFIG_MMU */
2603 diff -Nur linux-2.6.15.1/mm/page_alloc.c linux-2.6.15.1-owrt/mm/page_alloc.c
2604 --- linux-2.6.15.1/mm/page_alloc.c 2006-01-15 07:16:02.000000000 +0100
2605 +++ linux-2.6.15.1-owrt/mm/page_alloc.c 2006-01-27 15:04:04.000000000 +0100
2606 @@ -451,23 +451,6 @@
2610 -void set_page_refs(struct page *page, int order)
2613 - set_page_count(page, 1);
2618 - * We need to reference all the pages for this order, otherwise if
2619 - * anyone accesses one of the pages with (get/put) it will be freed.
2620 - * - eg: access_process_vm()
2622 - for (i = 0; i < (1 << order); i++)
2623 - set_page_count(page + i, 1);
2624 -#endif /* CONFIG_MMU */
2628 * This page is about to be returned from the page allocator
2630 diff -Nur linux-2.6.15.1/net/ieee80211/ieee80211_module.c linux-2.6.15.1-owrt/net/ieee80211/ieee80211_module.c
2631 --- linux-2.6.15.1/net/ieee80211/ieee80211_module.c 2006-01-15 07:16:02.000000000 +0100
2632 +++ linux-2.6.15.1-owrt/net/ieee80211/ieee80211_module.c 2006-01-27 15:08:36.000000000 +0100
2634 MODULE_AUTHOR(DRV_COPYRIGHT);
2635 MODULE_LICENSE("GPL");
2637 -static inline int ieee80211_networks_allocate(struct ieee80211_device *ieee)
2638 +static int ieee80211_networks_allocate(struct ieee80211_device *ieee)
2643 ieee->networks = NULL;
2646 -static inline void ieee80211_networks_initialize(struct ieee80211_device *ieee)
2647 +static void ieee80211_networks_initialize(struct ieee80211_device *ieee)
2651 diff -Nur linux-2.6.15.1/net/ieee80211/ieee80211_rx.c linux-2.6.15.1-owrt/net/ieee80211/ieee80211_rx.c
2652 --- linux-2.6.15.1/net/ieee80211/ieee80211_rx.c 2006-01-15 07:16:02.000000000 +0100
2653 +++ linux-2.6.15.1-owrt/net/ieee80211/ieee80211_rx.c 2006-01-27 15:08:36.000000000 +0100
2656 #include <net/ieee80211.h>
2658 -static inline void ieee80211_monitor_rx(struct ieee80211_device *ieee,
2659 +static void ieee80211_monitor_rx(struct ieee80211_device *ieee,
2660 struct sk_buff *skb,
2661 struct ieee80211_rx_stats *rx_stats)
2664 * Responsible for handling management control frames
2666 * Called by ieee80211_rx */
2669 ieee80211_rx_frame_mgmt(struct ieee80211_device *ieee, struct sk_buff *skb,
2670 struct ieee80211_rx_stats *rx_stats, u16 type,
2675 /* Called only as a tasklet (software IRQ), by ieee80211_rx */
2678 ieee80211_rx_frame_decrypt(struct ieee80211_device *ieee, struct sk_buff *skb,
2679 struct ieee80211_crypt_data *crypt)
2684 /* Called only as a tasklet (software IRQ), by ieee80211_rx */
2687 ieee80211_rx_frame_decrypt_msdu(struct ieee80211_device *ieee,
2688 struct sk_buff *skb, int keyidx,
2689 struct ieee80211_crypt_data *crypt)
2690 @@ -1157,7 +1157,7 @@
2692 /***************************************************/
2694 -static inline int ieee80211_network_init(struct ieee80211_device *ieee, struct ieee80211_probe_response
2695 +static int ieee80211_network_init(struct ieee80211_device *ieee, struct ieee80211_probe_response
2697 struct ieee80211_network *network,
2698 struct ieee80211_rx_stats *stats)
2699 @@ -1236,7 +1236,7 @@
2700 !memcmp(src->ssid, dst->ssid, src->ssid_len));
2703 -static inline void update_network(struct ieee80211_network *dst,
2704 +static void update_network(struct ieee80211_network *dst,
2705 struct ieee80211_network *src)
2708 @@ -1295,7 +1295,7 @@
2709 return (WLAN_FC_GET_STYPE(le16_to_cpu(fc)) == IEEE80211_STYPE_BEACON);
2712 -static inline void ieee80211_process_probe_response(struct ieee80211_device
2713 +static void ieee80211_process_probe_response(struct ieee80211_device
2715 ieee80211_probe_response
2716 *beacon, struct ieee80211_rx_stats
2717 diff -Nur linux-2.6.15.1/net/ieee80211/ieee80211_tx.c linux-2.6.15.1-owrt/net/ieee80211/ieee80211_tx.c
2718 --- linux-2.6.15.1/net/ieee80211/ieee80211_tx.c 2006-01-15 07:16:02.000000000 +0100
2719 +++ linux-2.6.15.1-owrt/net/ieee80211/ieee80211_tx.c 2006-01-27 15:08:36.000000000 +0100
2721 static u8 P802_1H_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0xf8 };
2722 static u8 RFC1042_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0x00 };
2724 -static inline int ieee80211_copy_snap(u8 * data, u16 h_proto)
2725 +static int ieee80211_copy_snap(u8 * data, u16 h_proto)
2727 struct ieee80211_snap_hdr *snap;
2730 return SNAP_SIZE + sizeof(u16);
2733 -static inline int ieee80211_encrypt_fragment(struct ieee80211_device *ieee,
2734 +static int ieee80211_encrypt_fragment(struct ieee80211_device *ieee,
2735 struct sk_buff *frag, int hdr_len)
2737 struct ieee80211_crypt_data *crypt = ieee->crypt[ieee->tx_keyidx];
2738 diff -Nur linux-2.6.15.1/net/ieee80211/ieee80211_wx.c linux-2.6.15.1-owrt/net/ieee80211/ieee80211_wx.c
2739 --- linux-2.6.15.1/net/ieee80211/ieee80211_wx.c 2006-01-15 07:16:02.000000000 +0100
2740 +++ linux-2.6.15.1-owrt/net/ieee80211/ieee80211_wx.c 2006-01-27 15:08:36.000000000 +0100
2744 #define MAX_CUSTOM_LEN 64
2745 -static inline char *ipw2100_translate_scan(struct ieee80211_device *ieee,
2746 +static char *ipw2100_translate_scan(struct ieee80211_device *ieee,
2747 char *start, char *stop,
2748 struct ieee80211_network *network)
2750 diff -Nur linux-2.6.15.1/net/netfilter/nfnetlink.c linux-2.6.15.1-owrt/net/netfilter/nfnetlink.c
2751 --- linux-2.6.15.1/net/netfilter/nfnetlink.c 2006-01-15 07:16:02.000000000 +0100
2752 +++ linux-2.6.15.1-owrt/net/netfilter/nfnetlink.c 2006-01-27 15:08:36.000000000 +0100
2756 /* Process one complete nfnetlink message. */
2757 -static inline int nfnetlink_rcv_msg(struct sk_buff *skb,
2758 +static int nfnetlink_rcv_msg(struct sk_buff *skb,
2759 struct nlmsghdr *nlh, int *errp)
2761 struct nfnl_callback *nc;
2762 diff -Nur linux-2.6.15.1/security/selinux/hooks.c linux-2.6.15.1-owrt/security/selinux/hooks.c
2763 --- linux-2.6.15.1/security/selinux/hooks.c 2006-01-15 07:16:02.000000000 +0100
2764 +++ linux-2.6.15.1-owrt/security/selinux/hooks.c 2006-01-27 15:08:36.000000000 +0100
2765 @@ -1018,7 +1018,7 @@
2766 has the same SID as the process. If av is zero, then
2767 access to the file is not checked, e.g. for cases
2768 where only the descriptor is affected like seek. */
2769 -static inline int file_has_perm(struct task_struct *tsk,
2770 +static int file_has_perm(struct task_struct *tsk,
2774 diff -Nur linux-2.6.15.1/sound/oss/esssolo1.c linux-2.6.15.1-owrt/sound/oss/esssolo1.c
2775 --- linux-2.6.15.1/sound/oss/esssolo1.c 2006-01-15 07:16:02.000000000 +0100
2776 +++ linux-2.6.15.1-owrt/sound/oss/esssolo1.c 2006-01-27 15:08:36.000000000 +0100
2781 -static inline int prog_dmabuf_dac(struct solo1_state *s)
2782 +static int prog_dmabuf_dac(struct solo1_state *s)
2786 diff -Nur linux-2.6.15.1/sound/pci/es1968.c linux-2.6.15.1-owrt/sound/pci/es1968.c
2787 --- linux-2.6.15.1/sound/pci/es1968.c 2006-01-15 07:16:02.000000000 +0100
2788 +++ linux-2.6.15.1-owrt/sound/pci/es1968.c 2006-01-27 15:13:39.000000000 +0100
2790 apu_data_set(chip, data);
2793 -static inline void apu_set_register(es1968_t *chip, u16 channel, u8 reg, u16 data)
2794 +static void apu_set_register(es1968_t *chip, u16 channel, u8 reg, u16 data)
2796 unsigned long flags;
2797 spin_lock_irqsave(&chip->reg_lock, flags);
2798 diff -Nur linux-2.6.15.1/arch/mips/Makefile linux-2.6.15.1-owrt/arch/mips/Makefile
2799 --- linux-2.6.15.1/arch/mips/Makefile 2006-01-21 17:13:20.000000000 +0100
2800 +++ linux-2.6.15.1-owrt/arch/mips/Makefile 2006-01-28 11:37:25.000000000 +0100
2803 cflags-y += -I $(TOPDIR)/include/asm/gcc
2804 cflags-y += -G 0 -mno-abicalls -fno-pic -pipe
2805 -cflags-y += $(call cc-option, -finline-limit=100000)
2806 LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
2807 MODFLAGS += -mlong-calls
2809 --- linux-2.6.15.1.old/include/asm-mips/system.h 2006-01-28 15:02:54.481032280 +0100
2810 +++ linux-2.6.15.1.dev/include/asm-mips/system.h 2006-01-28 14:47:51.634285848 +0100
2812 if something tries to do an invalid xchg(). */
2813 extern void __xchg_called_with_bad_pointer(void);
2815 -static inline unsigned long __xchg(unsigned long x, volatile void * ptr, int size)
2816 +static __always_inline unsigned long __xchg(unsigned long x, volatile void * ptr, int size)