commit 7144521f5ac741e9ad3033953b9d9fdede015ee0 Author: Linus Torvalds Date: Mon Jul 16 11:50:38 2007 -0700 Remove duplicate comments from sysctl.c Randy Dunlap noticed that the recent comment clarifications from Andrew had somehow gotten duplicated. Quoth Andrew: "hm, that could have been some late-night reject-fixing." Fix it up. Cc: From: Andrew Morton Cc: Randy Dunlap Signed-off-by: Linus Torvalds commit abce891a10559343d8ac9f79b46d78afdba63a40 Author: Linus Torvalds Date: Mon Jul 16 11:18:23 2007 -0700 Fix new generic block device SG compile We had a merge issue with the "dentry" field going away from the kobject, and being replaced by a sysfs_dirent field (named "sd") instead. That broke the BSG compile. Cc: Jens Axboe Cc: FUJITA Tomonori Cc: James Bottomley Signed-off-by: Linus Torvalds commit 10b275ddfd05ccb414cfe0cc56a0f47ff20fe807 Merge: add0969... 8ea0260... Author: Linus Torvalds Date: Mon Jul 16 11:02:49 2007 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched * git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: [PATCH] sched: fix up fs/proc/array.c whitespace problems [PATCH] sched: prettify prio_to_wmult[] [PATCH] sched: document prio_to_wmult[] [PATCH] sched: improve weight-array comments [PATCH] sched: remove dead code from task_stime() Fixed up trivial conflict in fs/proc/array.c commit add096909da63ef32d6766f6771c07c9f16c6ee5 Merge: e245bef... 54c57dc... Author: Linus Torvalds Date: Mon Jul 16 10:52:55 2007 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (32 commits) [PATCH] ocfs2: zero_user_page conversion ocfs2: Support xfs style space reservation ioctls ocfs2: support for removing file regions ocfs2: update truncate handling of partial clusters ocfs2: btree support for removal of arbirtrary extents ocfs2: Support creation of unwritten extents ocfs2: support writing of unwritten extents ocfs2: small cleanup of ocfs2_write_begin_nolock() ocfs2: btree changes for unwritten extents ocfs2: abstract btree growing calls ocfs2: use all extent block suballocators ocfs2: plug truncate into cached dealloc routines ocfs2: simplify deallocation locking ocfs2: harden buffer check during mapping of page blocks ocfs2: shared writeable mmap ocfs2: factor out write aops into nolock variants ocfs2: rework ocfs2_buffered_write_cluster() ocfs2: take ip_alloc_sem during entire truncate ocfs2: Add "preferred slot" mount option [KJ PATCH] Replacing memset(,0,PAGE_SIZE) with clear_page() in fs/ocfs2/dlm/dlmrecovery.c ... commit e245befce7af0a1e1347079ed62695b059594bd4 Merge: 14dc524... 58ff411... Author: Linus Torvalds Date: Mon Jul 16 10:50:19 2007 -0700 Merge branch 'bsg' of git://git.kernel.dk/data/git/linux-2.6-block * 'bsg' of git://git.kernel.dk/data/git/linux-2.6-block: (25 commits) bsg: Kconfig updates bsg: add SCSI transport-level request support bsg: add bidi support add a struct request pointer to the request structure bsg: fix the deadlock on discarding done commands bsg: fix a blocking read bug bsg: minor bug fixes improve bsg device allocation bind bsg to all SCSI devices bsg: bind bsg to request_queue instead of gendisk bsg: add a request_queue argument to scsi_cmd_ioctl() bsg: simplify __bsg_alloc_command failpath bsg: add cheasy error checks for sysfs stuff Add queue resizing support Replace s32, u32 and u64 with __s32, __u32 and __u64 in bsg.h for userspace bsg: silence a bogus gcc warning bsg: style cleanup bsg: use u32 etc instead of uint32_t bsg: add SG_IO to SG v4 bsg: replace SG v3 with SG v4 ... commit 14dc5249728ff699b1ca4dac01ad416a350a147a Merge: 02b2318... bcd4f3a... Author: Linus Torvalds Date: Mon Jul 16 10:48:20 2007 -0700 Merge branch 'for-linus' of git://git.kernel.dk/data/git/linux-2.6-block * 'for-linus' of git://git.kernel.dk/data/git/linux-2.6-block: splice: direct splicing updates ppos twice more ACSI removal umem: Fix match of pci_ids in umem driver umem: Remove references to dead CONFIG_MM_MAP_MEMORY variable remove the documentation for the legacy CDROM drivers commit 02b2318e07f98a7cdf7089a4457a8d62424aa824 Merge: b91cba5... d54bc27... Author: Linus Torvalds Date: Mon Jul 16 10:45:23 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: (26 commits) [SPARC64]: Fix UP build. [SPARC64]: dr-cpu unconfigure support. [SERIAL]: Fix console write locking in sparc drivers. [SPARC64]: Give more accurate errors in dr_cpu_configure(). [SPARC64]: Clear cpu_{core,sibling}_map[] in smp_fill_in_sib_core_maps() [SPARC64]: Fix leak when DR added cpu does not bootup. [SPARC64]: Add ->set_affinity IRQ handlers. [SPARC64]: Process dr-cpu events in a kthread instead of workqueue. [SPARC64]: More sensible udelay implementation. [SPARC64]: SMP build fixes. [SPARC64]: mdesc.c needs linux/mm.h [SPARC64]: Fix build regressions added by dr-cpu changes. [SPARC64]: Unconditionally register vio_bus_type. [SPARC64]: Initial LDOM cpu hotplug support. [SPARC64]: Fix setting of variables in LDOM guest. [SPARC64]: Fix MD property lifetime bugs. [SPARC64]: Abstract out mdesc accesses for better MD update handling. [SPARC64]: Use more mearningful names for IRQ registry. [SPARC64]: Initial domain-services driver. [SPARC64]: Export powerd facilities for external entities. ... commit b91cba52e9b7b3f1c0037908a192d93a869ca9e5 Merge: 98283bb... e509ac4... Author: Linus Torvalds Date: Mon Jul 16 10:32:02 2007 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (68 commits) sh: sh-rtc support for SH7709. sh: Revert __xdiv64_32 size change. sh: Update r7785rp defconfig. sh: Export div symbols for GCC 4.2 and ST GCC. sh: fix race in parallel out-of-tree build sh: Kill off dead mach.c for hp6xx. sh: hd64461.h cleanup and added comments. sh: Update the alignment when 4K stacks are used. sh: Add a .bss.page_aligned section for 4K stacks. sh: Don't let SH-4A clobber SH-4 CFLAGS. sh: Add parport stub for SuperIO ports. sh: Drop -Wa,-dsp for DSP tuning. sh: Update dreamcast defconfig. fb: pvr2fb: A few more __devinit annotations for PCI. fb: pvr2fb: Fix up section mismatch warnings. sh: Select IPR-IRQ for SH7091. sh: Correct __xdiv64_32/div64_32 return value size. sh: Fix timer-tmu build for SH-3. sh: Add cpu and mach links to CLEAN_FILES. sh: Preliminary support for the SH-X3 CPU. ... commit 98283bb49c6c8c070ebde9f47489d3e9a83c1323 Author: OGAWA Hirofumi Date: Mon Jul 16 09:40:05 2007 +0900 fat: Fix the race of read/write the FAT12 entry FAT12 entry is 12bits, so it needs 2 phase to update the value. And writer and reader access it without any lock, so reader can get the half updated value. This fixes the long standing race condition by adding a global spinlock to only FAT12 for avoiding any impact against FAT16/32. Signed-off-by: OGAWA Hirofumi Signed-off-by: Linus Torvalds commit 347e03df1696ab22963f6b8c4f2220c41ec17f82 Author: Andrew Morton Date: Sun Jul 15 23:42:03 2007 -0700 cpwatchdog build fix sparc64: drivers/sbus/char/cpwatchdog.c: In function `wd_toggleintr': drivers/sbus/char/cpwatchdog.c:523: error: implicit declaration of function `readb' drivers/sbus/char/cpwatchdog.c:533: error: implicit declaration of function `writeb' drivers/sbus/char/cpwatchdog.c: In function `wd_pingtimer': drivers/sbus/char/cpwatchdog.c:545: error: implicit declaration of function `readw' drivers/sbus/char/cpwatchdog.c: In function `wd_starttimer': drivers/sbus/char/cpwatchdog.c:584: error: implicit declaration of function `writew' drivers/sbus/char/cpwatchdog.c: In function `wd_init': drivers/sbus/char/cpwatchdog.c:767: error: implicit declaration of function `ioremap' drivers/sbus/char/cpwatchdog.c:767: warning: assignment makes pointer from integer without a cast drivers/sbus/char/cpwatchdog.c: In function `wd_cleanup': drivers/sbus/char/cpwatchdog.c:849: error: implicit declaration of function `iounmap' Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17e0c7cc1dfd8f49b67160b678297b88e545cc40 Author: Jes Sorensen Date: Sun Jul 15 23:42:02 2007 -0700 sn_console section mismatch warning Do not mark sn_sal_console_setup as __init since it's referenced from non init data structures. Signed-off-by: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 98701dc19e0cf358d48208e994180bb8abad5079 Author: Geert Uytterhoeven Date: Sun Jul 15 23:42:01 2007 -0700 compat32: ignore the LOOP_CLR_FD ioctl compat32: Ignore the LOOP_CLR_FD ioctl for the loop block device, to kill an annoying kernel message when e.g. busybox umount is used. Signed-off-by: Geert Uytterhoeven Acked-by: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29e3f347779088a79d832bfbd2d17c2f04050308 Author: Robert P. J. Day Date: Sun Jul 15 23:42:01 2007 -0700 NLS: Remove obsolete Makefile entries Since the corresponding source files no longer exist, remove the irrelevant Makefile entries for them. Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c80e7a826c10cf5bce8487fbaede48bd0bd48d08 Author: Rusty Russell Date: Sun Jul 15 23:42:00 2007 -0700 permit mempool_free(NULL) Christian Borntraeger points out that mempool_free() doesn't noop when handed NULL. This is inconsistent with the other free-like functions in the kernel. Signed-off-by: Rusty Russell Cc: Christian Borntraeger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e70030d4cf91613530a23b40ad9919bb9ee114f Author: Badari Pulavarty Date: Sun Jul 15 23:42:00 2007 -0700 ext4: statfs speed up This is a patch that speeds up statfs. It is very simple - the "overhead" calculation, which takes a huge amount of time for large filesystems, never changes unless the size of the filesystem itself changes. That means we can store it in memory and only recalculate if the filesystem has been resized (almost never). It also fixes a minor problem that we never update the on-disk superblock free blocks/inodes counts until the filesystem is unmounted. While not fatal, we may as well update that on disk when we have the information, and it makes things like debugfs and dumpe2fs report a bit more accurate info. Signed-off-by: Badari Pulavarty Signed-off-by: Andreas Dilger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a71ce8c6c9bf269b192f352ea555217815cf027e Author: Badari Pulavarty Date: Sun Jul 15 23:41:59 2007 -0700 ext3: statfs speed up This is a patch that speeds up statfs. It is very simple - the "overhead" calculation, which takes a huge amount of time for large filesystems, never changes unless the size of the filesystem itself changes. That means we can store it in memory and only recalculate if the filesystem has been resized (almost never). It also fixes a minor problem that we never update the on-disk superblock free blocks/inodes counts until the filesystem is unmounted. While not fatal, we may as well update that on disk when we have the information, and it makes things like debugfs and dumpe2fs report a bit more accurate info. Signed-off-by: Badari Pulavarty Signed-off-by: Andreas Dilger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2235219b7721b8e74de6841e79240936561a2b63 Author: Badari Pulavarty Date: Sun Jul 15 23:41:58 2007 -0700 ext2: statfs speed up This is a patch that speeds up statfs. It is very simple - the "overhead" calculation, which takes a huge amount of time for large filesystems, never changes unless the size of the filesystem itself changes. That means we can store it in memory and only recalculate if the filesystem has been resized (almost never). It also fixes a minor problem that we never update the on-disk superblock free blocks/inodes counts until the filesystem is unmounted. While not fatal, we may as well update that on disk when we have the information, and it makes things like debugfs and dumpe2fs report a bit more accurate info. Signed-off-by: Badari Pulavarty Signed-off-by: Andreas Dilger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f14137e284d5733e7be05bd95656f59391b942e Author: Dan Aloni Date: Sun Jul 15 23:41:57 2007 -0700 drivers/char/ipmi/ipmi_si_intf.c: lower printk severity Signed-off-by: Dan Aloni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e5fa4998eb4f318b6409e800edb1213b09e7cd62 Author: Dan Aloni Date: Sun Jul 15 23:41:56 2007 -0700 drivers/char/ipmi/ipmi_poweroff.c: lower printk severity Signed-off-by: Dan Aloni Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4277eedd7908a0ca8b66fad46ee76b0ad96e6ef2 Author: Denis Vlasenko Date: Sun Jul 15 23:41:56 2007 -0700 vsprintf.c: optimizing, part 2: base 10 conversion speedup, v2 Optimize integer-to-string conversion in vsprintf.c for base 10. This is by far the most used conversion, and in some use cases it impacts performance. For example, top reads /proc/$PID/stat for every process, and with 4000 processes decimal conversion alone takes noticeable time. Using code from http://www.cs.uiowa.edu/~jones/bcd/decimal.html (with permission from the author, Douglas W. Jones) binary-to-decimal-string conversion is done in groups of five digits at once, using only additions/subtractions/shifts (with -O2; -Os throws in some multiply instructions). On i386 arch gcc 4.1.2 -O2 generates ~500 bytes of code. This patch is run tested. Userspace benchmark/test is also attached. I tested it on PIII and AMD64 and new code is generally ~2.5 times faster. On AMD64: # ./vsprintf_verify-O2 Original decimal conv: .......... 151 ns per iteration Patched decimal conv: .......... 62 ns per iteration Testing correctness 12895992590592 ok... [Ctrl-C] # ./vsprintf_verify-O2 Original decimal conv: .......... 151 ns per iteration Patched decimal conv: .......... 62 ns per iteration Testing correctness 26025406464 ok... [Ctrl-C] More realistic test: top from busybox project was modified to report how many us it took to scan /proc (this does not account any processing done after that, like sorting process list), and then I test it with 4000 processes: #!/bin/sh i=4000 while test $i != 0; do sleep 30 & let i-- done busybox top -b -n3 >/dev/null on unpatched kernel: top: 4120 processes took 102864 microseconds to scan top: 4120 processes took 91757 microseconds to scan top: 4120 processes took 92517 microseconds to scan top: 4120 processes took 92581 microseconds to scan on patched kernel: top: 4120 processes took 75460 microseconds to scan top: 4120 processes took 66451 microseconds to scan top: 4120 processes took 67267 microseconds to scan top: 4120 processes took 67618 microseconds to scan The speedup comes from much faster generation of /proc/PID/stat by sprintf() calls inside the kernel. Signed-off-by: Douglas W Jones Signed-off-by: Denys Vlasenko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b39a734097d5095d63eb9c709a6aaf965633bb01 Author: Denis Vlasenko Date: Sun Jul 15 23:41:54 2007 -0700 vsprintf.c: optimizing, part 1 (easy and obvious stuff) * There is no point in having full "0...9a...z" constant vector, if we use only "0...9a...f" (and "x" for "0x"). * Post-decrement usually needs a few more instructions, so use pre decrement instead where makes sense: -       while (i < precision--) { +       while (i <= --precision) { * if base != 10 (=> base 8 or 16), we can avoid using division in a loop and use mask/shift, obtaining much faster conversion. (More complex optimization for base 10 case is in the second patch). Overall, size vsprintf.o shows ~80 bytes smaller text section with this patch applied. Signed-off-by: Douglas W Jones Signed-off-by: Denys Vlasenko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b4e5a1411c8b970983fb6022db1da31c4f5c301 Author: J. Bruce Fields Date: Sun Jul 15 23:41:53 2007 -0700 Fix trivial typos in anon_inodes.c comments Trivial typo and grammar fixes. Signed-off-by: "J. Bruce Fields" Cc: Davide Libenzi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2111217df52827916141789c87d614ae45236db Author: Jesper Juhl Date: Sun Jul 15 23:41:53 2007 -0700 isapnp: remove pointless check of 'type' against 0 in isapnp_read_tag() In drivers/pnp/isapnp/core.c::isapnp_read_tag() there is a test of 'type' being == 0 a bit down in the function. That test doesn't make any sense. If 'type' could indeed be NULL, then the test happens way too late as we'd already have tried to dereference the pointer earlier and looking at the callers it also turns out that there is no way type can ever actually be NULL. So the test is completely pointless and should just be removed. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f1b0e1f287547903f11fa1e6de7d2765597766e Author: Alexey Dobriyan Date: Sun Jul 15 23:41:52 2007 -0700 .gitignore update headers_install by default puts headers into usr/include/ . They're auto-generated, so should be ignored. Same for *.orig, *.rej . Signed-off-by: Alexey Dobriyan Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f8a68ee486e1c81eaead3c521822bf86142d380 Author: Adrian Bunk Date: Sun Jul 15 23:41:52 2007 -0700 remove mm/backing-dev.c:congestion_wait_interruptible() congestion_wait_interruptible() is no longer used. Signed-off-by: Adrian Bunk Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1492192b4a0bb84dd9b792cc0bd30583220a28a7 Author: Jiri Kosina Date: Sun Jul 15 23:41:51 2007 -0700 kernel/printk.c: document possible deadlock against scheduler kernel/printk.c: document possible deadlock against scheduler The printk's comment states that it can be called from every context, which might lead to false illusion that it could be called from everywhere without any restrictions. This is however not true - a call to printk() could deadlock if called from scheduler code (namely from schedule(), wake_up(), etc) on runqueue lock when it tries to wake up klogd. Document this. Signed-off-by: Jiri Kosina Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 017f021c7e5fe3f82ccc5cbb7b1750e66e00f527 Author: Ed L. Cashin Date: Sun Jul 15 23:41:50 2007 -0700 docs: static initialization of spinlocks is OK Static initialization of spinlocks is preferable to dynamic initialization when it is practical. This patch updates documentation for consistency with comments in spinlock_types.h. Signed-off-by: Ed L. Cashin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e7d136e9e083f04b859411248c699cbb89e418d Author: Alan Cox Date: Sun Jul 15 23:41:49 2007 -0700 serial: remove termios checks from various old char serial drivers Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d471d340ef9543a1e2f70f99c21ee2c770e7b17c Author: Alan Cox Date: Sun Jul 15 23:41:49 2007 -0700 68360serial: remove broken optimisation Remove the broken 'no termios change' optimisation for this driver. Signed-off-by: Alan Cox Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de1764af27520f6dfdac0ddf2209d78ddb9690d7 Author: Alan Cox Date: Sun Jul 15 23:41:48 2007 -0700 synclink: remove bogus 'no change' termios optimisation from synclink drivers Again this check is wrong now, and un-needed Signed-off-by: Alan Cox Cc: Paul Fulghum Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35426128adaacf8cdabc2482598252d488b7ccb9 Author: Alan Cox Date: Sun Jul 15 23:41:47 2007 -0700 genericserial: remove bogus optimisation check and dead code paths We've been using the 'new locking' for a long time now so it seems pointless keeping the old one around. Remove it and undo the macros it uses back into real code for readability. Remove the bogus 'no termios change' checks. Signed-off-by: Alan Cox Cc: Morten Helgesen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db0ef08efa1bb94ba9a9e44c255d9058df5fde8d Author: Alan Cox Date: Sun Jul 15 23:41:47 2007 -0700 amiserial: remove incorrect 'no termios change' check Lots of serial drivers check and optimise for setting the termios values to the ones they were before. This is pointless and the check is wrong anyway. Remove the checks on the serial drivers. If we ever do need such a check put it back in the tty layer instead _once_! Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 24da1cbff9cfce50868c2dfdcda82a68ac5cb707 Author: Rusty Russell Date: Sun Jul 15 23:41:46 2007 -0700 modules: remove modlist_lock Now we always use stop_machine for module insertion or deletion, we no longer need the modlist_lock: merely disabling preemption is sufficient to block against list manipulation. This avoids deadlock on OOPSen where we can potentially grab the lock twice. Bug: 8695 Signed-off-by: Rusty Russell Cc: Ingo Molnar Cc: Tobias Oed Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c675bd43ccc36927c855d53d2e0042cdd1074ab Author: Borislav Petkov Date: Sun Jul 15 23:41:45 2007 -0700 ext4: fix error handling in ext4_create_journal Fix error handling in ext4_create_journal according to kernel conventions. Signed-off-by: Borislav Petkov Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 952d9de116ad87261de106464a9eeec038c4cd14 Author: Borislav Petkov Date: Sun Jul 15 23:41:45 2007 -0700 ext3: fix error handling in ext3_create_journal() Fix error handling in ext3_create_journal according to kernel conventions. Signed-off-by: Borislav Petkov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f1f642e2f092e37eb9038060eb0100c44f55a11 Author: Oleg Nesterov Date: Sun Jul 15 23:41:44 2007 -0700 make cancel_xxx_work_sync() return a boolean Change cancel_work_sync() and cancel_delayed_work_sync() to return a boolean indicating whether the work was actually cancelled. A zero return value means that the work was not pending/queued. Without that kind of change it is not possible to avoid flush_workqueue() sometimes, see the next patch as an example. Also, this patch unifies both functions and kills the (unlikely) busy-wait loop. Signed-off-by: Oleg Nesterov Acked-by: Jarek Poplawski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5a421a4509a7e2dff11da0f01b0548f4f84d503 Author: Oleg Nesterov Date: Sun Jul 15 23:41:44 2007 -0700 rename cancel_rearming_delayed_work() to cancel_delayed_work_sync() Imho, the current naming of cancel_xxx workqueue functions is very confusing. cancel_delayed_work() cancel_rearming_delayed_work() cancel_rearming_delayed_workqueue() // obsolete cancel_work_sync() This looks as if the first 2 functions differ in "type" of their argument which is not true any longer, nowadays the difference is the behaviour. The semantics of cancel_rearming_delayed_work(dwork) was changed significantly, it doesn't require that dwork rearms itself, and cancels dwork synchronously. Rename it to cancel_delayed_work_sync(). This matches cancel_delayed_work() and cancel_work_sync(). Re-create cancel_rearming_delayed_work() as a simple inline obsolete wrapper, like cancel_rearming_delayed_workqueue(). Signed-off-by: Oleg Nesterov Acked-by: Jarek Poplawski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 422b14c2e2f816f58ce8ce0ab0beeae02dfb7a75 Author: Borislav Petkov Date: Sun Jul 15 23:41:43 2007 -0700 update Documentation/filesystems/vfs.txt Update Documentation/filesystems/vfs.txt Signed-off-by: Borislav Petkov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d52988023a37720e9e4aeb66362be67fa21d8836 Author: Jesper Juhl Date: Sun Jul 15 23:41:42 2007 -0700 Remove the last few UMSDOS leftovers The UMSDOS filesystem was removed back in 2.6.11, but some tiny bits stuck around. This patch removes the few remaining leftovers. The only things left behind after this are the entries in the CREDITS file and the ioctl number in Documentation/ioctl-number.txt as documentation. This third (hopefully final) version of the patch doesn't edit the arch/um/config.release file, since Jeff Dike pointed out to me that it should die completely, and asked me to remove it from my patch as he'll send in a seperate patch removing the file completely. Signed-off-by: Jesper Juhl Acked-by: H. Peter Anvin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6b07d39d7904ceecac53699d6b5ddd677304880 Author: Jesper Juhl Date: Sun Jul 15 23:41:41 2007 -0700 Add missing files and dirs to 00-INDEX in Documentation/ Add descriptions for a number of missing files and directories to the Documentation/00-INDEX file. Signed-off-by: Jesper Juhl Acked-by: Rob Landley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2618c60b8b5836b73e8deb385a036820744d256d Author: Yinghai Lu Date: Sun Jul 15 23:41:41 2007 -0700 dma: make dma pool to use kmalloc_node Using dev_to_node(&dev->dev) to get node, and kmalloc_node to dma buffer on corresponding node dma pool Signed-off-by: Yinghai Lu Cc: Andi Kleen Cc: Christoph Lameter Cc: David Rientjes Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d375b97037c40d51b41d3b00b15729f6730c2cfe Author: Cyrill Gorcunov Date: Sun Jul 15 23:41:40 2007 -0700 UDF: fix function name from udf_crc16 to udf_crc We have to change udf_crc16() name to udf_crc() to be able to play with CRC test. Signed-off-by: Cyrill Gorcunov Cc: Jan Kara Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 608e2619682e951f525b08e7a48669a3c0263b41 Author: Heiko Carstens Date: Sun Jul 15 23:41:39 2007 -0700 generic bug: use show_regs() instead of dump_stack() The current generic bug implementation has a call to dump_stack() in case a WARN_ON(whatever) gets hit. Since report_bug(), which calls dump_stack(), gets called from an exception handler we can do better: just pass the pt_regs structure to report_bug() and pass it to show_regs() in case of a warning. This will give more debug informations like register contents, etc... In addition this avoids some pointless lines that dump_stack() emits, since it includes a stack backtrace of the exception handler which is of no interest in case of a warning. E.g. on s390 the following lines are currently always present in a stack backtrace if dump_stack() gets called from report_bug(): [<000000000001517a>] show_trace+0x92/0xe8) [<0000000000015270>] show_stack+0xa0/0xd0 [<00000000000152ce>] dump_stack+0x2e/0x3c [<0000000000195450>] report_bug+0x98/0xf8 [<0000000000016cc8>] illegal_op+0x1fc/0x21c [<00000000000227d6>] sysc_return+0x0/0x10 Acked-by: Jeremy Fitzhardinge Acked-by: Haavard Skinnemoen Cc: Andi Kleen Cc: Kyle McMartin Cc: Paul Mackerras Cc: Paul Mundt Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94bed2a9c4ae980838003f5d32681eef794ecc28 Author: Dave Jones Date: Sun Jul 15 23:41:38 2007 -0700 Add -Werror-implicit-function-declaration Add -Werror-implicit-function-declaration This makes builds fail sooner if something is implicitly defined instead of having to wait half an hour for it to fail at the linking stage. Signed-off-by: Dave Jones Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc2ea416b2aa04d0c34ff2281a23dae5b76b7b3b Author: Andrew Morton Date: Sun Jul 15 23:41:38 2007 -0700 uninline check_signature() This is a rather bizarre thing to have inlined in io.h. Stick it in lib/ instead. While we're there, despaghetti it a bit, and fix its off-by-one behaviour when passed a zero length. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e7bd66318b3ae60fbba7d886d9a98b71ffbf74e Author: Josh Triplett Date: Sun Jul 15 23:41:37 2007 -0700 CodingStyle: add information about editor modelines I recently received a patch including a file that had a vim modeline, and I realized that nothing specifically proscribed that practice. Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a923fd6ae7599aee63934ed13c3033fdefc7a18e Author: Josh Triplett Date: Sun Jul 15 23:41:37 2007 -0700 CodingStyle: add information about trailing whitespace Signed-off-by: Josh Triplett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e8c4273ef4f631a896650bd2ade4c1b6487131b Author: vignesh babu Date: Sun Jul 15 23:41:36 2007 -0700 is_power_of_2: ufs/super.c Replace (n & (n-1)) with is_power_of_2 Signed-off-by: vignesh babu Acked-by: Evgeniy Dushistov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e7c310c36e5fdf1b83a459e5db167bfbd86137db Author: Niels de Vos Date: Sun Jul 15 23:41:35 2007 -0700 parport_pc: it887x fix The IO port range requested by parport_pc.c:sio_ite_8872_probe is too small. The IO-ports of ttyS1 (0x2f8) will be missconfigured by the ITE-chip. The ITE starts looking for the chip a 0x2a0. An IO-portrange of 32 will not overwrite the ports of ttyS1. Therefore register 0x60 should be written with 0xe5000000, enabling the ITE and setting IO-portsize to 32 bytes. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f84d5a76c50d9752cdec64a6e536ee3901b267f6 Author: vignesh babu Date: Sun Jul 15 23:41:34 2007 -0700 is_power_of_2: kernel/kfifo.c Replace (n & (n-1)) with is_power_of_2() Signed-off-by: vignesh babu Acked-by: Stelian Pop Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf99abace7e07dd8491e7093a9a9ef11d48838ed Author: Andrea Arcangeli Date: Sun Jul 15 23:41:33 2007 -0700 make seccomp zerocost in schedule This follows a suggestion from Chuck Ebbert on how to make seccomp absolutely zerocost in schedule too. The only remaining footprint of seccomp is in terms of the bzImage size that becomes a few bytes (perhaps even a few kbytes) larger, measure it if you care in the embedded. Signed-off-by: Andrea Arcangeli Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d9d02feeee89e9132034d504c9a45eeaf618a3d Author: Andrea Arcangeli Date: Sun Jul 15 23:41:32 2007 -0700 move seccomp from /proc to a prctl This reduces the memory footprint and it enforces that only the current task can enable seccomp on itself (this is a requirement for a strightforward [modulo preempt ;) ] TIF_NOTSC implementation). Signed-off-by: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be0ef957c9eed4ebae873ee3fbcfb9dfde486dec Author: Oleg Nesterov Date: Sun Jul 15 23:41:32 2007 -0700 nbd.c: sock_xmit: cleanup signal related code sock_xmit() re-implements sigprocmask() and dequeue_signal_lock(). Signed-off-by: Oleg Nesterov Acked-by: Paul Clements Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e1ac130d08b0c7066615fe60fe1e7212c8eaf6a Author: Oleg Nesterov Date: Sun Jul 15 23:41:29 2007 -0700 kcdrwd: remove unneeded flush_signals() call kcdrwd() is a kernel thread, all signals are ignored. Signed-off-by: Oleg Nesterov Cc: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b6dd9baa728d8ef329cc9a7e73e511e29055856 Author: Oleg Nesterov Date: Sun Jul 15 23:41:29 2007 -0700 adb_probe_task: remove unneeded flush_signals() call adb_probe_task() is forked by "events" thread, all signals are ignored, no need to play with signal blocking/flushing. Signed-off-by: Oleg Nesterov Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4210df283cc703bc494f450c91b8311bdf7fe5ee Author: Andrew Morton Date: Sun Jul 15 23:41:28 2007 -0700 bd_claim_by_disk: fix warning Fix this: fs/block_dev.c: In function 'bd_claim_by_disk': fs/block_dev.c:970: warning: 'found' may be used uninitialized in this function and given that free_bd_holder() now needs free(NULL)-is-legal behaviour, we can simplify bd_release_from_kobject(). Cc: Bjorn Steinbrink Cc: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e91672c76319aaed24ea3e784e238cf445c57cb Author: Johannes Weiner Date: Sun Jul 15 23:41:25 2007 -0700 Replace obscure constructs in fs/block_dev.c Replace some funky codepaths in fs/block_dev.c with cleaner versions of the affected places. [akpm@linux-foundation.org: fix return value] Signed-off-by: Johannes Weiner Cc: Bjorn Steinbrink Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 948730b0e39fb4cba4a5ed0fc40e0f017cce2dfa Author: Adrian Bunk Date: Sun Jul 15 23:41:25 2007 -0700 fs/namespace.c should #include "internal.h" Every file should include the headers containing the prototypes for its global functions. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19769b762607fea53c005a0068cf8939cecd2f9a Author: Andrew Morton Date: Sun Jul 15 23:41:24 2007 -0700 sprint_symbol() cleanup Remove pointless `else'. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d45bce8faf55511ec7d7ffc301461d864d67f1af Author: Duane Griffin Date: Sun Jul 15 23:41:23 2007 -0700 HFS+: add custom dentry hash and comparison operations Add custom dentry hash and comparison operations for HFS+ filesystems that are case-insensitive and/or do automatic unicode decomposition. The new operations reuse the existing HFS+ ASCII to unicode conversion, unicode decomposition and case folding functionality. Signed-off-by: Duane Griffin Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e96b7ca1e8f17c5117da369daaa7cf2edfdf9b1 Author: Duane Griffin Date: Sun Jul 15 23:41:22 2007 -0700 HFS+: refactor ASCII to unicode conversion routine for later reuse The HFS+ filesystem is case-insensitive and does automatic unicode decomposition by default, but does not provide custom dentry operations. This can lead to multiple dentries being cached for lookups on a filename with varying case and/or character (de)composition. These patches add custom dentry hash and comparison operations for case-sensitive and/or automatically decomposing HFS+ filesystems. Unicode decomposition and case-folding are performed as required to ensure equivalent filenames are hashed to the same values and compare as equal. This patch: Refactor existing HFS+ ASCII to unicode string conversion routine to split out character conversion functionality. This will be reused by the custom dentry hash and comparison routines. This approach avoids unnecessary memory allocation compared to using the string conversion routine directly in the new functions. [akpm@linux-foundation.org: avoid use-of-uninitialised] Signed-off-by: Duane Griffin Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29bc5b4f73a65ef667df50d5ed474e371471d915 Author: Toshiyuki Okajima Date: Sun Jul 15 23:41:22 2007 -0700 mistaken ext4_inode_bitmap for ext4_block_bitmap In ext4_new_blocks(), one of two ext4_block_bitmap() calls should be ext4_inode_bitmap() call. It is not harmful in normal processing, but it should be fixed. Signed-off-by: Toshiyuki Okajima Cc: Theodore Ts'o Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2be7fe075af8f8ba9c8b8ab0feec4ba4fff04979 Author: Andrew Morton Date: Sun Jul 15 23:41:21 2007 -0700 sysctl.c: add text telling people to use CTL_UNNUMBERED Hopefully this will help people to understand the new regime. Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97d8f83cb734525f96992fd61e4f7323ab3d549c Author: Andrew Morton Date: Sun Jul 15 23:41:20 2007 -0700 Add Documentation/sysctl/ctl_unnumbered.txt Poeple keep on adding new numbered sysctls, when they're supposed not to. Add a documentation file which explain why new sysctls should use CTL_UNNUMBERED. The next patch will sprinkle pointers to this throughout sysctl.c. Eric provided the text (thanks) Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36cf3b5c3b7228bcf5124c530d50080b61a59f69 Author: Thomas Gleixner Date: Sun Jul 15 23:41:20 2007 -0700 FUTEX: Tidy up the code The recent PRIVATE and REQUEUE_PI changes to the futex code made it hard to read. Tidy it up. Signed-off-by: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0746aec3c75f23de0148774ac50cf73161f09d68 Author: Borislav Petkov Date: Sun Jul 15 23:41:19 2007 -0700 update description in Documentation/filesystems/vfs.txt Update the description of struct file_system_type and get_sb() in Documentation/filesystems/vfs.txt to match the current code. Signed-off-by: Borislav Petkov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 132e4b0a049c39337c535501561b8301c7f2b202 Author: Robert P. J. Day Date: Sun Jul 15 23:41:19 2007 -0700 cdrom: replace hard-coded constants by kernel.h macro. Signed-off-by: Robert P. J. Day Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e44f3497d41db4c3b9051c61410dee8ae4fb49c Author: Ingo Molnar Date: Sun Jul 15 23:41:18 2007 -0700 sys_time() speedup Improve performance of sys_time(). sys_time() returns time in seconds, but it does so by calling do_gettimeofday() and then returning the tv_sec portion of the GTOD time. But the data structure "xtime", which is updated by every timer/scheduler tick, already offers HZ granularity time. The patch improves the sysbench OLTP macrobenchmark significantly: 2.6.22-rc6: #threads 1: transactions: 3733 (373.21 per sec.) 2: transactions: 6676 (667.46 per sec.) 3: transactions: 6957 (695.50 per sec.) 4: transactions: 7055 (705.48 per sec.) 5: transactions: 6596 (659.33 per sec.) 2.6.22-rc6 + sys_time.patch: 1: transactions: 4005 (400.47 per sec.) 2: transactions: 7379 (737.77 per sec.) 3: transactions: 7347 (734.49 per sec.) 4: transactions: 7468 (746.65 per sec.) 5: transactions: 7428 (742.47 per sec.) Mixed API uses of gettimeofday() and time() are guaranteed to be coherent via the use of a at-most-once-per-second slowpath that updates xtime. [akpm@linux-foundation.org: build fixes] Signed-off-by: Ingo Molnar Cc: John Stultz Cc: Thomas Gleixner Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f482394ccbca7234d29cc146d4a2b94f976ce5a1 Author: vignesh babu Date: Sun Jul 15 23:41:17 2007 -0700 is_power_of_2(): jbd Replace (n & (n-1)) in the context of power of 2 checks with is_power_of_2(). Signed-off-by: vignesh babu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3fc74269c8910573a0e9a7bc303752194ce5cae0 Author: vignesh babu Date: Sun Jul 15 23:41:17 2007 -0700 is_power_of_2: ext3/super.c Replace (n & (n-1)) in the context of power of 2 checks with is_power_of_2() Signed-off-by: vignesh babu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 681dcd95431e2258c1174602fcd69393e4139959 Author: Christoph Hellwig Date: Sun Jul 15 23:41:16 2007 -0700 drop obsolete sys_ioctl export sys_ioctl() was only exported for our first version of compat ioctl handling. Now that the whole compat ioctl handling mess is more or less sorted out there are no more modular users left and we can kill it. There's one exception and that's sparc64's solaris compat module, but sparc64 has it's own export predating the generic one by years for that which this patch leaves untouched. Signed-off-by: Christoph Hellwig Acked-by: David S. Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcecc6c70013e3a5fa81b3081480c03e10670a23 Author: Randy Dunlap Date: Sun Jul 15 23:41:15 2007 -0700 doc/oops-tracing: add Code: decode info Add info that the Code: bytes line contains or (wxyz) in some architecture oops reports and what that means. Add a script by Andi Kleen that reads the Code: line from an Oops report file and generates assembly code from the hex bytes. Signed-off-by: Randy Dunlap Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 213dd266d48af90c1eec8688c1ff31aa34d21de2 Author: Eric W. Biederman Date: Sun Jul 15 23:41:15 2007 -0700 namespace: ensure clone_flags are always stored in an unsigned long While working on unshare support for the network namespace I noticed we were putting clone flags in an int. Which is weird because the syscall uses unsigned long and we at least need an unsigned to properly hold all of the unshare flags. So to make the code consistent, this patch updates the code to use unsigned long instead of int for the clone flags in those places where we get it wrong today. Signed-off-by: Eric W. Biederman Acked-by: Cedric Le Goater Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3a68e30d28dbc6981dfc3d6ceddbfa2f885fe4e Author: Dave Hansen Date: Sun Jul 15 23:41:14 2007 -0700 ext3: remove extra IS_RDONLY() check ext3_change_inode_journal_flag() is only called from one location: ext3_ioctl(EXT3_IOC_SETFLAGS). That ioctl case already has a IS_RDONLY() call in it so this one is superfluous. Signed-off-by: Dave Hansen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6b86e854f71600c809536502a0efa9d4e384fb23 Author: C. Scott Ananian Date: Sun Jul 15 23:41:13 2007 -0700 update procfs-guide doc of read_func The procfs-guide claims that 'the parameter start doesn't seem to be used anywhere in the kernel'. This is out of date. In linux/fs/proc/generic.c we find a very nice description of the parameters to read_func. The appended patch replaces the bogus description with this (as far as I know) accurate one. Cc: "Randy.Dunlap" Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4895925976977aaeda26ee2a603a99f17db500b Author: Robert P. J. Day Date: Sun Jul 15 23:41:13 2007 -0700 Remove final two references to "__obsolete_setup" macro Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b716395e2b8e450e294537de0c91476ded2f0395 Author: Vasily Tarasov Date: Sun Jul 15 23:41:12 2007 -0700 diskquota: 32bit quota tools on 64bit architectures OpenVZ Linux kernel team has discovered the problem with 32bit quota tools working on 64bit architectures. In 2.6.10 kernel sys32_quotactl() function was replaced by sys_quotactl() with the comment "sys_quotactl seems to be 32/64bit clean, enable it for 32bit" However this isn't right. Look at if_dqblk structure: struct if_dqblk { __u64 dqb_bhardlimit; __u64 dqb_bsoftlimit; __u64 dqb_curspace; __u64 dqb_ihardlimit; __u64 dqb_isoftlimit; __u64 dqb_curinodes; __u64 dqb_btime; __u64 dqb_itime; __u32 dqb_valid; }; For 32 bit quota tools sizeof(if_dqblk) == 0x44. But for 64 bit kernel its size is 0x48, 'cause of alignment! Thus we got a problem. Attached patch reintroduce sys32_quotactl() function, that handles this and related situations. [michal.k.k.piotrowski@gmail.com: build fix] [akpm@linux-foundation.org: Make it link with CONFIG_QUOTA=n] Signed-off-by: Vasily Tarasov Cc: Andi Kleen Cc: "Luck, Tony" Cc: Jan Kara Cc: Signed-off-by: Michal Piotrowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b7775870b69129e640ed583c9b362d5cd66159d Author: Arnd Bergmann Date: Sun Jul 15 23:41:11 2007 -0700 Introduce compat_u64 and compat_s64 types One common problem with 32 bit system call and ioctl emulation is the different alignment rules between i386 and 64 bit machines. A number of drivers work around this by marking the compat structures as 'attribute((packed))', which is not the right solution because it breaks all the non-x86 architectures that want to use the same compat code. Hopefully, this patch improves the situation, it introduces two new types, compat_u64 and compat_s64. These are defined on all architectures to have the same size and alignment as the 32 bit version of u64 and s64. Signed-off-by: Arnd Bergmann Acked-by: David S. Miller Cc: David Woodhouse Cc: Andi Kleen Cc: Benjamin Herrenschmidt Cc: Vasily Tarasov Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d9525b52aecd11b14c4ec982add01c11157172f Author: Henrik Kretzschmar Date: Sun Jul 15 23:41:10 2007 -0700 kerneldoc fix in audit_core_dumps Fix parameter name in audit_core_dumps for kerneldoc. Signed-off-by: Henrik Kretzschmar Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcf5008db171211e3c34c060cacfd788306b034b Author: Nathan Lynch Date: Sun Jul 15 23:41:09 2007 -0700 remove unused lock_cpu_hotplug_interruptible definition aa95387774039096c11803c04011f1aa42d85758 removed the implementation of lock_cpu_hotplug_interruptible and all users of it. This stub definition for !CONFIG_HOTPLUG_CPU was left over -- kill it now. Signed-off-by: Nathan Lynch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32c3773011a9b3522bd4abadc7fad8c27417119f Author: Jan Kara Date: Sun Jul 15 23:41:09 2007 -0700 ext4: fix deadlock in ext4_remount() and orphan list handling ext4_orphan_add() and ext4_orphan_del() functions lock sb->s_lock with a transaction started with ext4_mark_recovery_complete() waits for a transaction holding sb->s_lock, thus leading to a possible deadlock. At the moment we call ext4_mark_recovery_complete() from ext4_remount() we have done all the work needed for remounting and thus we are safe to drop sb->s_lock before we wait for transactions to commit. Note that at this moment we are still guarded by s_umount lock against other remounts/umounts. Signed-off-by: Jan Kara Cc: Eric Sandeen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 030703e49d4966bd348660e0fdc2699507efb82b Author: Jan Kara Date: Sun Jul 15 23:41:08 2007 -0700 ext3: fix deadlock in ext3_remount() and orphan list handling ext3_orphan_add() and ext3_orphan_del() functions lock sb->s_lock with a transaction started with ext3_mark_recovery_complete() waits for a transaction holding sb->s_lock, thus leading to a possible deadlock. At the moment we call ext3_mark_recovery_complete() from ext3_remount() we have done all the work needed for remounting and thus we are safe to drop sb->s_lock before we wait for transactions to commit. Note that at this moment we are still guarded by s_umount lock against other remounts/umounts. Signed-off-by: Jan Kara Cc: Eric Sandeen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b3b295502444340dd0701855ac422fbf32e161d Author: Jan Beulich Date: Sun Jul 15 23:41:07 2007 -0700 adjust nosmp handling Especially when !CONFIG_HOTPLUG_CPU, avoid needlessy allocating resources for CPUs that can never become available. Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 98c0d07cbf2a8582a0341b05ad564247e608f6f9 Author: Cedric Le Goater Date: Sun Jul 15 23:41:07 2007 -0700 add a kmem_cache for nsproxy objects It should improve performance in some scenarii where a lot of these nsproxy objects are created by unsharing namespaces. This is a typical use of virtual servers that are being created or entered. This is also a good tool to find leaks and gather statistics on namespace usage. Signed-off-by: Cedric Le Goater Cc: Herbert Poetzl Cc: Pavel Emelianov Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 467e9f4b5086a60a5cb2e032ccaf4a31abadc4c2 Author: Cedric Le Goater Date: Sun Jul 15 23:41:06 2007 -0700 fix create_new_namespaces() return value dup_mnt_ns() and clone_uts_ns() return NULL on failure. This is wrong, create_new_namespaces() uses ERR_PTR() to catch an error. This means that the subsequent create_new_namespaces() will hit BUG_ON() in copy_mnt_ns() or copy_utsname(). Modify create_new_namespaces() to also use the errors returned by the copy_*_ns routines and not to systematically return ENOMEM. [oleg@tv-sign.ru: better changelog] Signed-off-by: Cedric Le Goater Cc: Serge E. Hallyn Cc: Badari Pulavarty Cc: Pavel Emelianov Cc: Herbert Poetzl Cc: Eric W. Biederman Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3e733f071e16bdad13a75eedb102e8941b09927e Author: Andrew Morton Date: Sun Jul 15 23:41:05 2007 -0700 dirty_writeback_centisecs_handler() cleanup Repair indenting bustage. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97842216b8400fe9d1a20468959e2989180f8f79 Author: Dave Jones Date: Sun Jul 15 23:41:05 2007 -0700 Allow softlockup to be runtime disabled It's useful sometimes to disable the softlockup checker at boottime. Especially if it triggers during a distro install. Signed-off-by: Dave Jones Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea5a3dcfda1c9140228f2842ea9b01e1713c559a Author: Robert P. J. Day Date: Sun Jul 15 23:41:04 2007 -0700 COBALT: remove all references to Cobalt NVRAM Remove not only the references to Cobalt NVRAM, but the header file as well. Signed-off-by: Robert P. J. Day Acked-by: Tim Hockin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ef48bd246124ccdef0e1fa5b03b62d69cbf71fa7 Author: Paul E. McKenney Date: Sun Jul 15 23:41:03 2007 -0700 Document the fact that RCU callbacks can run in parallel Add an item to the RCU documentation checklist noting that RCU callbacks can run in parallel. Signed-off-by: Paul E. McKenney Cc: Steven Rostedt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d3b573ad9af85b6df104044f6fff05f04349db2 Author: Andrew Morton Date: Sun Jul 15 23:41:03 2007 -0700 binfmt_elf warning fix fs/binfmt_elf.c: In function 'load_elf_binary': fs/binfmt_elf.c:1002: warning: 'interp_map_addr' may be used uninitialized in this function The compiler (gcc-4.1.0) is correct, but it failed to notice that we didn't use the resulting value. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 64d67d21773f1946ddc04aedc201f6c2f3ee1bfb Author: Andrew Morton Date: Sun Jul 15 23:41:02 2007 -0700 revert "vanishing ioctl handler debugging" Revert my do_ioctl() debugging patch: Paul fixed the bug. Cc: Paul Fulghum Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77ec739d8d0979477fc91f530403805afa2581a4 Author: Serge E. Hallyn Date: Sun Jul 15 23:41:01 2007 -0700 user namespace: add unshare This patch enables the unshare of user namespaces. It adds a new clone flag CLONE_NEWUSER and implements copy_user_ns() which resets the current user_struct and adds a new root user (uid == 0) For now, unsharing the user namespace allows a process to reset its user_struct accounting and uid 0 in the new user namespace should be contained using appropriate means, for instance selinux The plan, when the full support is complete (all uid checks covered), is to keep the original user's rights in the original namespace, and let a process become uid 0 in the new namespace, with full capabilities to the new namespace. Signed-off-by: Serge E. Hallyn Signed-off-by: Cedric Le Goater Acked-by: Pavel Emelianov Cc: Herbert Poetzl Cc: Kirill Korotaev Cc: Eric W. Biederman Cc: Chris Wright Cc: Stephen Smalley Cc: James Morris Cc: Andrew Morgan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit acce292c82d4d82d35553b928df2b0597c3a9c78 Author: Cedric Le Goater Date: Sun Jul 15 23:40:59 2007 -0700 user namespace: add the framework Basically, it will allow a process to unshare its user_struct table, resetting at the same time its own user_struct and all the associated accounting. A new root user (uid == 0) is added to the user namespace upon creation. Such root users have full privileges and it seems that theses privileges should be controlled through some means (process capabilities ?) The unshare is not included in this patch. Changes since [try #4]: - Updated get_user_ns and put_user_ns to accept NULL, and get_user_ns to return the namespace. Changes since [try #3]: - moved struct user_namespace to files user_namespace.{c,h} Changes since [try #2]: - removed struct user_namespace* argument from find_user() Changes since [try #1]: - removed struct user_namespace* argument from find_user() - added a root_user per user namespace Signed-off-by: Cedric Le Goater Signed-off-by: Serge E. Hallyn Acked-by: Pavel Emelianov Cc: Herbert Poetzl Cc: Kirill Korotaev Cc: Eric W. Biederman Cc: Chris Wright Cc: Stephen Smalley Cc: James Morris Cc: Andrew Morgan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7d69a1f4a72b18876c99c697692b78339d491568 Author: Cedric Le Goater Date: Sun Jul 15 23:40:58 2007 -0700 remove CONFIG_UTS_NS and CONFIG_IPC_NS CONFIG_UTS_NS and CONFIG_IPC_NS have very little value as they only deactivate the unshare of the uts and ipc namespaces and do not improve performance. Signed-off-by: Cedric Le Goater Acked-by: "Serge E. Hallyn" Cc: Eric W. Biederman Cc: Herbert Poetzl Cc: Pavel Emelianov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 522ed7767e800cff6c650ec64b0ee0677303119c Author: Miloslav Trmac Date: Sun Jul 15 23:40:56 2007 -0700 Audit: add TTY input auditing Add TTY input auditing, used to audit system administrator's actions. This is required by various security standards such as DCID 6/3 and PCI to provide non-repudiation of administrator's actions and to allow a review of past actions if the administrator seems to overstep their duties or if the system becomes misconfigured for unknown reasons. These requirements do not make it necessary to audit TTY output as well. Compared to an user-space keylogger, this approach records TTY input using the audit subsystem, correlated with other audit events, and it is completely transparent to the user-space application (e.g. the console ioctls still work). TTY input auditing works on a higher level than auditing all system calls within the session, which would produce an overwhelming amount of mostly useless audit events. Add an "audit_tty" attribute, inherited across fork (). Data read from TTYs by process with the attribute is sent to the audit subsystem by the kernel. The audit netlink interface is extended to allow modifying the audit_tty attribute, and to allow sending explanatory audit events from user-space (for example, a shell might send an event containing the final command, after the interactive command-line editing and history expansion is performed, which might be difficult to decipher from the TTY input alone). Because the "audit_tty" attribute is inherited across fork (), it would be set e.g. for sshd restarted within an audited session. To prevent this, the audit_tty attribute is cleared when a process with no open TTY file descriptors (e.g. after daemon startup) opens a TTY. See https://www.redhat.com/archives/linux-audit/2007-June/msg00000.html for a more detailed rationale document for an older version of this patch. [akpm@linux-foundation.org: build fix] Signed-off-by: Miloslav Trmac Cc: Al Viro Cc: Alan Cox Cc: Paul Fulghum Cc: Casey Schaufler Cc: Steve Grubb Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4f27c00bf80f122513d3a5be16ed851573164534 Author: Alan Cox Date: Sun Jul 15 23:40:55 2007 -0700 Improve behaviour of spurious IRQ detect Currently we handle spurious IRQ activity based upon seeing a lot of invalid interrupts, and we clear things back on the base of lots of valid interrupts. Unfortunately in some cases you get legitimate invalid interrupts caused by timing asynchronicity between the PCI bus and the APIC bus when disabling interrupts and pulling other tricks. In this case although the spurious IRQs are not a problem our unhandled counters didn't clear and they act as a slow running timebomb. (This is effectively what the serial port/tty problem that was fixed by clearing counters when registering a handler showed up) It's easy enough to add a second parameter - time. This means that if we see a regular stream of harmless spurious interrupts which are not harming processing we don't go off and do something stupid like disable the IRQ after a month of running. OTOH lockups and performance killers show up a lot more than 10/second [akpm@linux-foundation.org: cleanup] Signed-off-by: Alan Cox Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3dc8c189a20dc5d115b8f0d07ac620e69eff05c Author: Alan Cox Date: Sun Jul 15 23:40:54 2007 -0700 intel-rng: undo mess made by an 80 column extremist The intel-rng printed a nice well formatted message when the port was disabled. Someone then came along and blindly trashed it by screwing up a trim down to 80 columns. Put it back into the right format and keep the overlong lines as the result is also MUCH easier to read in this specific case. Signed-off-by: Alan Cox Cc: Michael Buesch Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4c07bce796833401317519e44075889c5fd4d5f Author: Lee Schermerhorn Date: Sun Jul 15 23:40:54 2007 -0700 hugetlbfs: handle empty options string I was seeing a null pointer deref in fs/super.c:vfs_kern_mount(). Some file system get_sb() handler was returning NULL mnt_sb with a non-negative return value. I also noticed a "hugetlbfs: Bad mount option:" message in the log. Turns out that hugetlbfs_parse_options() was not checking for an empty option string after call to strsep(). On failure, hugetlbfs_parse_options() returns 1. hugetlbfs_fill_super() just passed this return code back up the call stack where vfs_kern_mount() missed the error and proceeded with a NULL mnt_sb. Apparently introduced by patch: hugetlbfs-use-lib-parser-fix-docs.patch The problem was exposed by this line in my fstab: none /huge hugetlbfs defaults 0 0 It can also be demonstrated by invoking mount of hugetlbfs directly with no options or a bogus option. This patch: 1) adds the check for empty option to hugetlbfs_parse_options(), 2) enhances the error message to bracket any unrecognized option with quotes , 3) modifies hugetlbfs_parse_options() to return -EINVAL on any unrecognized option, 4) adds a BUG_ON() to vfs_kern_mount() to catch any get_sb() handler that returns a NULL mnt->mnt_sb with a return value >= 0. Signed-off-by: Lee Schermerhorn Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e73a75fa7f062b52d015f1c961685dcaac57f710 Author: Randy Dunlap Date: Sun Jul 15 23:40:52 2007 -0700 hugetlbfs: use lib/parser, fix docs Use lib/parser.c to parse hugetlbfs mount options. Correct docs in hugetlbpage.txt. old size of hugetlbfs_fill_super: 675 bytes new size of hugetlbfs_fill_super: 686 bytes (hugetlbfs_parse_options() is inlined) Signed-off-by: Randy Dunlap Cc: Hugh Dickins Cc: David Gibson Cc: Adam Litke Acked-by: William Lee Irwin III Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5216184571946b8bbf06f0cd630c7754190fdd1a Author: Dave Jones Date: Sun Jul 15 23:40:51 2007 -0700 fix typo in prefetch.h Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b7ecb113eb884bed126c44513aeecdbbfa6fee3 Author: Jesper Juhl Date: Sun Jul 15 23:40:51 2007 -0700 SubmitChecklist update, fix spelling error Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5001a27802723d6de50d9d8a446d594116524b0 Author: Wyatt Banks Date: Sun Jul 15 23:40:50 2007 -0700 HFSPlus: change kmalloc/memset to kzalloc Removed kmalloc and memset in favor of kzalloc. To explain the HFSPLUS_SB() macro in the removed memset call: hfsplus_fs.h:#define HFSPLUS_SB(super) (*(struct hfsplus_sb_info *)(super)->s_fs_info) Signed-off-by: Wyatt Banks Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit abd4aa5a97ebc0efb9a7fbc98ef0bcf39266fadf Author: Dave Jones Date: Sun Jul 15 23:40:49 2007 -0700 undeprecate raw driver Despite repeated attempts over the last two and half years, this driver seems somewhat persistant. Remove its deprecated status as it has existing users who may not be in a position to migrate their apps to O_DIRECT. Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3a740c5fb792098d7e7a24cd194a6d8c710ea94 Author: Randy Dunlap Date: Sun Jul 15 23:40:49 2007 -0700 sony-laptop: use NULL for pointer Use NULL instead of 0 for pointer: drivers/misc/sony-laptop.c:1920:6: warning: Using plain integer as NULL pointer Signed-off-by: Randy Dunlap Acked-by: Mattia Dongili Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b663a79c191508f27cd885224b592a878c0ba0f6 Author: Maxim Uvarov Date: Sun Jul 15 23:40:48 2007 -0700 taskstats: add context-switch counters Make available to the user the following task and process performance statistics: * Involuntary Context Switches (task_struct->nivcsw) * Voluntary Context Switches (task_struct->nvcsw) Statistics information is available from: 1. taskstats interface (Documentation/accounting/) 2. /proc/PID/status (task only). This data is useful for detecting hyperactivity patterns between processes. [akpm@linux-foundation.org: cleanup] Signed-off-by: Maxim Uvarov Cc: Shailabh Nagar Cc: Balbir Singh Cc: Jay Lan Cc: Jonathan Lim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6c15c2b0fbfd5c0a84f5f0e1e3f20f85d2b8692 Author: Vasily Averin Date: Sun Jul 15 23:40:46 2007 -0700 ext3/ext4: orphan list corruption due bad inode After ext3 orphan list check has been added into ext3_destroy_inode() (please see my previous patch) the following situation has been detected: EXT3-fs warning (device sda6): ext3_unlink: Deleting nonexistent file (37901290), 0 Inode 00000101a15b7840: orphan list check failed! 00000773 6f665f00 74616d72 00000573 65725f00 06737270 66000000 616d726f ... Call Trace: [] ext3_destroy_inode+0x79/0x90 [] sys_unlink+0x126/0x1a0 [] error_exit+0x0/0x81 [] system_call+0x7e/0x83 First messages said that unlinked inode has i_nlink=0, then ext3_unlink() adds this inode into orphan list. Second message means that this inode has not been removed from orphan list. Inode dump has showed that i_fop = &bad_file_ops and it can be set in make_bad_inode() only. Then I've found that ext3_read_inode() can call make_bad_inode() without any error/warning messages, for example in the following case: ... if (inode->i_nlink == 0) { if (inode->i_mode == 0 || !(EXT3_SB(inode->i_sb)->s_mount_state & EXT3_ORPHAN_FS)) { /* this inode is deleted */ brelse (bh); goto bad_inode; ... Bad inode can live some time, ext3_unlink can add it to orphan list, but ext3_delete_inode() do not deleted this inode from orphan list. As result we can have orphan list corruption detected in ext3_destroy_inode(). However it is not clear for me how to fix this issue correctly. As far as i see is_bad_inode() is called after iget() in all places excluding ext3_lookup() and ext3_get_parent(). I believe it makes sense to add bad inode check to these functions too and call iput if bad inode detected. Signed-off-by: Vasily Averin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9f7dd93de07420b423336d5d0028959e94778ddb Author: Vasily Averin Date: Sun Jul 15 23:40:45 2007 -0700 ext3/ext4: orphan list check on destroy_inode Customers claims to ext3-related errors, investigation showed that ext3 orphan list has been corrupted and have the reference to non-ext3 inode. The following debug helps to understand the reasons of this issue. [akpm@linux-foundation.org: update for print_hex_dump() changes] Signed-off-by: Vasily Averin Cc: "Randy.Dunlap" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcae56ea661e13d8f904b584bbe4c1e50c7ee548 Author: Robert P. J. Day Date: Sun Jul 15 23:40:45 2007 -0700 Drop an empty isicom.h from being exported to user space. Drop from being exported to user space since it would be only an empty file. Signed-off-by: Robert P. J. Day Acked-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c289dca37917338fc8ab2e0d7e202a1c927e229e Author: Adrian Bunk Date: Sun Jul 15 23:40:42 2007 -0700 remove sonypi_camera_command() Remove the no longer used sonypi_camera_command(). Signed-off-by: Adrian Bunk Acked-by: Mattia Dongili Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 759448f459234bfcf34b82471f0dba77a9aca498 Author: Jan Engelhardt Date: Sun Jul 15 23:40:40 2007 -0700 Kernel utf-8 handling This patch fixes dead keys and copy/paste of non-ASCII characters in UTF-8 mode on Linux console. See more details about the original patch at: http://chris.heathens.co.nz/linux/utf8.html Already posted on (Oldest) http://lkml.org/lkml/2003/5/31/148 http://lkml.org/lkml/2005/12/24/69 (Recent) http://lkml.org/lkml/2006/8/7/75 [bunk@stusta.de: make drivers/char/selection.c:store_utf8() static] Signed-off-by: Jan Engelhardt Cc: Alexander E. Patrakov Cc: Dmitry Torokhov Cc: "Antonino A. Daplas" Signed-off-by: Adrian Bunk Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa0ac36518be648dda3a32f0b37a8b2b546e1b24 Author: Alexey Dobriyan Date: Sun Jul 15 23:40:39 2007 -0700 Remove capability.h from mm.h I forgot to remove capability.h from mm.h while removing sched.h! This patch remedies that, because the only inline function which was using CAP_something was made out of line. Cross-compile tested without regressions on: all powerpc defconfigs all mips defconfigs all m68k defconfigs all arm defconfigs all ia64 defconfigs alpha alpha-allnoconfig alpha-defconfig alpha-up arm i386 i386-allnoconfig i386-defconfig i386-up ia64 ia64-allnoconfig ia64-defconfig ia64-up m68k mips parisc parisc-allnoconfig parisc-defconfig parisc-up powerpc powerpc-up s390 s390-allnoconfig s390-defconfig s390-up sparc sparc-allnoconfig sparc-defconfig sparc-up sparc64 sparc64-allnoconfig sparc64-defconfig sparc64-up um-x86_64 x86_64 x86_64-allnoconfig x86_64-defconfig x86_64-up as well as my two usual configs. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb510b8172602a66467f3551b4be1911f5a7c8c2 Author: Alexey Dobriyan Date: Sun Jul 15 23:40:39 2007 -0700 seq_file: more atomicity in traverse() Original problem: in some circumstances seq_file interface can present infinite proc file to the following script when normally said proc file is finite: while read line; do [do something with $line] done index'es being 0 and 1. Current one is 1, as bash prints second object line by line. Imagine first object being removed right before lseek(). traverse() will be called, because there is negative offset. traverse() will reset ->index to 0 (!). traverse() will call ->next() and get NULL in any usual iterate-over-list code using list_for_each_entry_continue() and such. There is one object in list now after all... traverse() will return 0, lseek() will update file position and pretend everything is OK. So, what we have now: ->f_pos points to place where second object will be printed, but ->index is 0. seq_read() instead of returning EOF, will start printing first line of first object every time it's called, until enough objects are added to ->f_pos return in bounds. Fix is to update ->index only after we're sure we saw enough objects down the road. Signed-off-by: Alexey Dobriyan Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 18d96779d92902d2113b6f39bd2d42e805fa05e7 Author: Kees Cook Date: Sun Jul 15 23:40:38 2007 -0700 Documentation: /proc/$pid/stat files Documentation for the /proc/$pid/stat file. Signed-off-by: Kees Cook Cc: Rob Landley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e6077bd84a7bffa73b59d9704682aeab5781fa0 Author: Haavard Skinnemoen Date: Sun Jul 15 23:40:36 2007 -0700 atmel_serial: fix break handling The RXBRK field in the AT91/AT32 USART status register has the following definition according to e.g. the AT32AP7000 data sheet: RXBRK: Break Received/End of Break 0: No Break received or End of Break detected since the last RSTSTA. 1: Break Received or End of Break detected since the last RSTSTA. Thus, for each break, the USART sets the RXBRK bit twice. This patch modifies the driver to report the break event to the serial core only once by keeping track of whether a break condition is currently active. The break_active flag is reset as soon as a character is received, so even if we miss the start-of-break interrupt this should do the right thing. Signed-off-by: Haavard Skinnemoen Cc: Andrew Victor Cc: Russell King Cc: Ivan Kuten Cc: Nicolas Ferre Cc: Patrice Vilchez Cc: Andrew Morton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc1ed7542c8c26af0f501da8006b9fce03e9aaca Author: Pierre Ossman Date: Sun Jul 15 23:40:35 2007 -0700 init: wait for asynchronously scanned block devices Some buses (e.g. USB and MMC) do their scanning of devices in the background, causing a race between them and prepare_namespace(). In order to be able to use these buses without an initrd, we now wait for the device specified in root= to actually show up. If the device never shows up than we will hang in an infinite loop. In order to not mess with setups that reboot on panic, the feature must be turned on via the command line option "rootwait". [bunk@stusta.de: root_wait can become static] Signed-off-by: Pierre Ossman Cc: Al Viro Cc: Christoph Hellwig Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a19542e5f694cd408a32c3d9dc593ba9366e2d7 Author: Ulrich Drepper Date: Sun Jul 15 23:40:34 2007 -0700 O_CLOEXEC for SCM_RIGHTS Part two in the O_CLOEXEC saga: adding support for file descriptors received through Unix domain sockets. The patch is once again pretty minimal, it introduces a new flag for recvmsg and passes it just like the existing MSG_CMSG_COMPAT flag. I think this bit is not used otherwise but the networking people will know better. This new flag is not recognized by recvfrom and recv. These functions cannot be used for that purpose and the asymmetry this introduces is not worse than the already existing MSG_CMSG_COMPAT situations. The patch must be applied on the patch which introduced O_CLOEXEC. It has to remove static from the new get_unused_fd_flags function but since scm.c cannot live in a module the function still hasn't to be exported. Here's a test program to make sure the code works. It's so much longer than the actual patch... #include #include #include #include #include #include #include #include #ifndef O_CLOEXEC # define O_CLOEXEC 02000000 #endif #ifndef MSG_CMSG_CLOEXEC # define MSG_CMSG_CLOEXEC 0x40000000 #endif int main (int argc, char *argv[]) { if (argc > 1) { int fd = atol (argv[1]); printf ("child: fd = %d\n", fd); if (fcntl (fd, F_GETFD) == 0 || errno != EBADF) { puts ("file descriptor valid in child"); return 1; } return 0; } struct sockaddr_un sun; strcpy (sun.sun_path, "./testsocket"); sun.sun_family = AF_UNIX; char databuf[] = "hello"; struct iovec iov[1]; iov[0].iov_base = databuf; iov[0].iov_len = sizeof (databuf); union { struct cmsghdr hdr; char bytes[CMSG_SPACE (sizeof (int))]; } buf; struct msghdr msg = { .msg_iov = iov, .msg_iovlen = 1, .msg_control = buf.bytes, .msg_controllen = sizeof (buf) }; struct cmsghdr *cmsg = CMSG_FIRSTHDR (&msg); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; cmsg->cmsg_len = CMSG_LEN (sizeof (int)); msg.msg_controllen = cmsg->cmsg_len; pid_t child = fork (); if (child == -1) error (1, errno, "fork"); if (child == 0) { int sock = socket (PF_UNIX, SOCK_STREAM, 0); if (sock < 0) error (1, errno, "socket"); if (bind (sock, (struct sockaddr *) &sun, sizeof (sun)) < 0) error (1, errno, "bind"); if (listen (sock, SOMAXCONN) < 0) error (1, errno, "listen"); int conn = accept (sock, NULL, NULL); if (conn == -1) error (1, errno, "accept"); *(int *) CMSG_DATA (cmsg) = sock; if (sendmsg (conn, &msg, MSG_NOSIGNAL) < 0) error (1, errno, "sendmsg"); return 0; } /* For a test suite this should be more robust like a barrier in shared memory. */ sleep (1); int sock = socket (PF_UNIX, SOCK_STREAM, 0); if (sock < 0) error (1, errno, "socket"); if (connect (sock, (struct sockaddr *) &sun, sizeof (sun)) < 0) error (1, errno, "connect"); unlink (sun.sun_path); *(int *) CMSG_DATA (cmsg) = -1; if (recvmsg (sock, &msg, MSG_CMSG_CLOEXEC) < 0) error (1, errno, "recvmsg"); int fd = *(int *) CMSG_DATA (cmsg); if (fd == -1) error (1, 0, "no descriptor received"); char fdname[20]; snprintf (fdname, sizeof (fdname), "%d", fd); execl ("/proc/self/exe", argv[0], fdname, NULL); puts ("execl failed"); return 1; } [akpm@linux-foundation.org: Fix fastcall inconsistency noted by Michael Buesch] [akpm@linux-foundation.org: build fix] Signed-off-by: Ulrich Drepper Cc: Ingo Molnar Cc: Michael Buesch Cc: Michael Kerrisk Acked-by: David S. Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f23513e8d96cf5e6cf8d2ff0cb5dd6bbc33995e4 Author: Ulrich Drepper Date: Sun Jul 15 23:40:32 2007 -0700 Introduce O_CLOEXEC The problem is as follows: in multi-threaded code (or more correctly: all code using clone() with CLONE_FILES) we have a race when exec'ing. thread #1 thread #2 fd=open() fork + exec fcntl(fd,F_SETFD,FD_CLOEXEC) In some applications this can happen frequently. Take a web browser. One thread opens a file and another thread starts, say, an external PDF viewer. The result can even be a security issue if that open file descriptor refers to a sensitive file and the external program can somehow be tricked into using that descriptor. Just adding O_CLOEXEC support to open() doesn't solve the whole set of problems. There are other ways to create file descriptors (socket, epoll_create, Unix domain socket transfer, etc). These can and should be addressed separately though. open() is such an easy case that it makes not much sense putting the fix off. The test program: #include #include #include #include #ifndef O_CLOEXEC # define O_CLOEXEC 02000000 #endif int main (int argc, char *argv[]) { int fd; if (argc > 1) { fd = atol (argv[1]); printf ("child: fd = %d\n", fd); if (fcntl (fd, F_GETFD) == 0 || errno != EBADF) { puts ("file descriptor valid in child"); return 1; } return 0; } fd = open ("/proc/self/exe", O_RDONLY | O_CLOEXEC); printf ("in parent: new fd = %d\n", fd); char buf[20]; snprintf (buf, sizeof (buf), "%d", fd); execl ("/proc/self/exe", argv[0], buf, NULL); puts ("execl failed"); return 1; } [kyle@parisc-linux.org: parisc fix] Signed-off-by: Ulrich Drepper Acked-by: Ingo Molnar Cc: Davide Libenzi Cc: Michael Kerrisk Cc: Chris Zankel Signed-off-by: Kyle McMartin Acked-by: David S. Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a2d44590a603be292addce9c263982043416666 Author: Eric W. Biederman Date: Sun Jul 15 23:40:31 2007 -0700 buffer: kill old incorrect comment Signed-off-by: Eric W. Biederman Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c5c061b8f9726bc2c25e19dec227933a13d1e6b7 Author: Venki Pallipadi Date: Sun Jul 15 23:40:30 2007 -0700 Add a flag to indicate deferrable timers in /proc/timer_stats Add a flag in /proc/timer_stats to indicate deferrable timers. This will let developers/users to differentiate between types of tiemrs in /proc/timer_stats. Deferrable timer and normal timer will appear in /proc/timer_stats as below. 10D, 1 swapper queue_delayed_work_on (delayed_work_timer_fn) 10, 1 swapper queue_delayed_work_on (delayed_work_timer_fn) Also version of timer_stats changes from v0.1 to v0.2 Signed-off-by: Venkatesh Pallipadi Acked-by: Ingo Molnar Cc: Thomas Gleixner Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0807061908a7a9441d0f745deb444f7216904cb Author: Christoph Hellwig Date: Sun Jul 15 23:40:30 2007 -0700 remove odd and misleading comments from uio.h Signed-off-by: Christoph Hellwig Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b0fac45878bb88759eec347c273285195649ff7 Author: Dan Williams Date: Sun Jul 15 23:40:26 2007 -0700 dma-mapping: prevent dma dependent code from linking on !HAS_DMA archs Continuing the work started in 411f0f3edc141a582190d3605cadd1d993abb6df ... This enables code with a dma path, that compiles away, to build without requiring additional code factoring. It also prevents code that calls dma_alloc_coherent and dma_free_coherent from linking whereas previously the code would hit a BUG() at run time. Finally, it allows archs that set !HAS_DMA to delete their asm/dma-mapping.h file. Cc: Cornelia Huck Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: John W. Linville Cc: Kyle McMartin Cc: James Bottomley Cc: Tejun Heo Cc: Jeff Garzik Cc: Cc: Cc: Cc: Signed-off-by: Dan Williams Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e7bf24b1b979db256ddc84d0d4ac6040d706da6 Author: Stefan Richter Date: Sun Jul 15 23:40:25 2007 -0700 fs: clarify "dummy" member in struct inodes_stat_t Signed-off-by: Stefan Richter Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e84845c4bf9a00533352e5805b35f42acdb04a1e Author: Randy Dunlap Date: Sun Jul 15 23:40:25 2007 -0700 add printk.time option, deprecate 'time' Allow printk_time to be enabled or disabled at boot time. Previously it could be enabled only, but not disabled. Change printk_time from an int to a bool since that's what it is. Make its logical (exposed) name just be "time" (was "printk_time"). Note: Changes kernel boot option syntax from "time" to "printk.time=value". Since printk_time is declared as a module_param, it can also be changed at run-time by modifying /sys/module/printk/parameters/time to a value of 1/Y/y to enabled it or 0/N/n to disable it. Since printk_time is declared as a module_param, its value can also be set at boot-time by using linux printk.time= If the "time" boot option is used, print a message that it is deprecated and will be removed. Note its planned removal in feature-removal-schedule.txt. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 185848707e73382ba930857502a0b80ff6039967 Author: Akinobu Mita Date: Sun Jul 15 23:40:24 2007 -0700 fault-injection: fix example scripts in documentation Fix and cleanup example scripts in fault injection documentation. 1. Eliminate broken oops() shell function. 2. Fold failcmd.sh and failmodule.sh into example scripts. It makes the example scripts work independent of current working directory. 3. Set "space" parameter to 0 to start injecting errors immediately. 4. Use /sys/module//sections/.data as upper bound of .text section. Because some module doesn't have .exit.text section. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 54114994f4de7e8076fc250e44501e55e19b75b5 Author: Akinobu Mita Date: Sun Jul 15 23:40:23 2007 -0700 fault-injection: add min-order parameter to fail_page_alloc Limiting smaller allocation failures by fault injection helps to find real possible bugs. Because higher order allocations are likely to fail and zero-order allocations are not likely to fail. This patch adds min-order parameter to fail_page_alloc. It specifies the minimum page allocation order to be injected failures. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 203a2935c734c054bfd4665fb5d8835498af50a8 Author: Matthias Kaehlcke Date: Sun Jul 15 23:40:23 2007 -0700 fs/block_dev.c: use list_for_each_entry() fs/block_dev.c: Use list_for_each_entry() instead of list_for_each() in nr_blockdev_pages() Signed-off-by: Matthias Kaehlcke Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00c5746da9fc6a793b9d94a8001ded5929f3a773 Author: Alexey Dobriyan Date: Sun Jul 15 23:40:22 2007 -0700 mutex_unlock() later in seq_lseek() All manipulations with struct seq_file::version are done under struct seq_file::lock except one introduced in commit d6b7a781c51c91dd054e5c437885205592faac21 aka "[PATCH] Speed up /proc/pid/maps" Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6739af8b9e8bf0fd1fb3f4f8406a9f650cb733a Author: Jan Kara Date: Sun Jul 15 23:40:22 2007 -0700 ext2: fix a comment when ext2_release_file() is called Signed-off-by: Jan Kara Acked-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da58a1617343e345d435953a0f32024997a95164 Author: Alexey Dobriyan Date: Sun Jul 15 23:40:21 2007 -0700 /proc/*/environ: wrong placing of ptrace_may_attach() check It's a bit dopey-looking and can permit a task to cause a pagefault in an mm which it doesn't have permission to read from. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7126dd0562c78fa393a53120155e9b265cc68f9d Author: Jiri Slaby Date: Sun Jul 15 23:40:20 2007 -0700 Char: ip2, use msleep for sleeping Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6defec139a0fb0fb36c41a441f8417360da81ea1 Author: Jiri Slaby Date: Sun Jul 15 23:40:20 2007 -0700 Char: n_r3964, use wait_event_interruptible Signed-off-by: Jiri Slaby Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0955e14f72dd1f561dc8b7c4434a253914ddfd4 Author: Jiri Slaby Date: Sun Jul 15 23:40:19 2007 -0700 Char: genrtc, use wait_event_interruptible genrtc, use wait_event_interruptible Signed-off-by: Jiri Slaby Cc: Alessandro Zummo Cc: Roman Zippel Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6804396f1b66c504bac1267d71a857f7a1d1e9dd Author: Jiri Slaby Date: Sun Jul 15 23:40:18 2007 -0700 Char: tty_ioctl, little whitespace cleanup tty_ioctl, little whitespace cleanup the point is to make while (++i < n_baud_table); clear and assign it to the do { } loop Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a52bd4a2dcb570333ce6fe2e16cd311650dbdc8 Author: Jiri Slaby Date: Sun Jul 15 23:40:18 2007 -0700 Char: tty_ioctl, use wait_event_interruptible_timeout tty_ioctl, use wait_event_interruptible_timeout Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b770b4b29c741bbcbb77d2618955897765a81bf Author: Jiri Slaby Date: Sun Jul 15 23:40:17 2007 -0700 Char: mxser_new, fix sparse warning Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f17e121fd055ba60d57a992702e59ae495faba76 Author: young dave Date: Sun Jul 15 23:40:17 2007 -0700 remove useless tolower in isofs Remove useless tolower in isofs Signed-off-by: dave young Acked-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 03a9c30c231a61dd7457681aef51cc38ee01f766 Author: Randy Dunlap Date: Sun Jul 15 23:40:16 2007 -0700 AFS: drop explicit extern Don't use explicit extern specifier and quieten sparse warning: fs/afs/vnode.c:564:12: warning: function 'afs_vnode_link' with external linkage has definition Signed-off-by: Randy Dunlap Acked-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bf1fc4329aa2c31a80a882d695fbdded92036ca Author: Randy Dunlap Date: Sun Jul 15 23:40:15 2007 -0700 kconfig: no STRANGE misc. devices This config symbol name is confusing and unneeded/unwanted, so just change it to MISC_DEVICES. * * Misc devices * Misc devices (MISC_STRANGE_DEV) [Y/n] (NEW) Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78c1b0657475dbafa008c71e3ccdc32141d8c7c7 Author: Andi Kleen Date: Sun Jul 15 23:40:15 2007 -0700 Remove clockevents_{release,request}_device Not called by anything in tree. Signed-off-by: Andi Kleen Acked-by: Ingo Molnar Cc: Thomas Gleixner Cc: john stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 506eb99a26e7af8b649faa135f648d1a2f1e4cdc Author: Jean Delvare Date: Sun Jul 15 23:40:14 2007 -0700 tty_io: Use kzalloc Also remove needless casts. Signed-off-by: Jean Delvare Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8d6c554126b830217c5e9f549e0e21f865a0a8a Author: David Howells Date: Sun Jul 15 23:40:12 2007 -0700 AFS: implement file locking Implement file locking for AFS. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0fed3140f57c435d2783b698c5090f325c22bad Author: Jiri Slaby Date: Sun Jul 15 23:40:12 2007 -0700 Char: n_hdlc, allow RESTARTSYS retval of tty write Acked-by: Paul Fulghum Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c2aef333c98b41eeb0f0d55b7faa7d4625a6160b Author: Paul Menage Date: Sun Jul 15 23:40:11 2007 -0700 Reduce cpuset.c write_lock_irq() to read_lock() cpuset.c:update_nodemask() uses a write_lock_irq() on tasklist_lock to block concurrent forks; a read_lock() suffices and is less intrusive. Signed-off-by: Paul Menage Acked-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2ff457b09554813a7df9e0cd30d5a169a257419 Author: Ben Collins Date: Sun Jul 15 23:40:11 2007 -0700 RTC: Ratelimit "lost interrupts" message We gets lots of these when the kernel is running on a hypervisor. Zach says "a guest kernel trying to get high frequency RTC will also be inaccurate, and inevitably will have unhidable interrupt lateness." Signed-off-by: Ben Collins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45807a1df9f51d28d0ff0c6bcf900c210411d7c9 Author: Ingo Molnar Date: Sun Jul 15 23:40:10 2007 -0700 vdso: print fatal signals Add the print-fatal-signals=1 boot option and the /proc/sys/kernel/print-fatal-signals runtime switch. This feature prints some minimal information about userspace segfaults to the kernel console. This is useful to find early bootup bugs where userspace debugging is very hard. Defaults to off. [akpm@linux-foundation.org: Don't add new sysctl numbers] Signed-off-by: Ingo Molnar Signed-off-by: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 99fc06df72fe1c9ad3ec274720dcb5658c40bfd2 Author: Changli Gao Date: Sun Jul 15 23:40:09 2007 -0700 procfs directory entry cleanup Function proc_register() will assign proc_dir_operations and proc_dir_inode_operations to ent's members proc_fops and proc_iops correctly if ent is a directory. So the early assignment isn't necessary. Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17973f5af741f1758ed57c5115ca394c22bee159 Author: Micah Cowan Date: Sun Jul 15 23:40:08 2007 -0700 Only send SIGXFSZ when exceeding rlimits. Some users have been having problems with utilities like cp or dd dumping core when they try to copy a file that's too large for the destination filesystem (typically, > 4gb). Apparently, some defunct standards required SIGXFSZ to be sent in such circumstances, but SUS only requires/allows it for when a written file exceeds the process's resource limits. I'd like to limit SIGXFSZs to the bare minimum required by SUS. Patch sent per http://lkml.org/lkml/2007/4/10/302 Signed-off-by: Micah Cowan Acked-by: Alan Cox Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e3e8d91fee56e1ab598b265466dc38033f1b915 Author: Satyam Sharma Date: Sun Jul 15 23:40:07 2007 -0700 rocket.c: fix unchecked mutex_lock_interruptible() Check the return of mutex_lock_interruptible() in drivers/char/rocket.c and return ERESTARTSYS if we were interrupted. Signed-off-by: Satyam Sharma Cc: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60bfba7e85f88fe834e623ead799cf580de20971 Author: Jan Kratochvil Date: Sun Jul 15 23:40:06 2007 -0700 PIE randomization This patch is using mmap()'s randomization functionality in such a way that it maps the main executable of (specially compiled/linked -pie/-fpie) ET_DYN binaries onto a random address (in cases in which mmap() is allowed to perform a randomization). Origin of this patch is in exec-shield (http://people.redhat.com/mingo/exec-shield/) [jkosina@suse.cz: pie randomization: fix BAD_ADDR macro] Signed-off-by: Jan Kratochvil Signed-off-by: Jiri Kosina Cc: Ingo Molnar Cc: Roland McGrath Cc: Jakub Jelinek Signed-off-by: Jiri Kosina Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f057eac0d7ad967138390a9dd7fd8267e1e39d19 Author: Stephen Rothwell Date: Sun Jul 15 23:40:05 2007 -0700 Introduce CONFIG_VIRT_TO_BUS Make some offending drivers depend on it and set CONFIG_ARCH_NO_VIRT_TO_BUS for ppc64 so that we don't build those drivers. This gets PowerPC allmodconfig and allyesconfig much closer to building. Signed-off-by: Stephen Rothwell Cc: Al Viro Acked-by: David Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 693783817a79d8619335e2bf1a33de73cf189864 Author: Andrew Morton Date: Sun Jul 15 23:40:04 2007 -0700 mpu401 warning fixes Fix these: sound/oss/mpu401.c: In function 'attach_mpu401': sound/oss/mpu401.c:1006: warning: cast to pointer from integer of different size sound/oss/mpu401.c:1115: warning: cast to pointer from integer of different size sound/oss/mpu401.c: In function 'unload_mpu401': sound/oss/mpu401.c:1230: warning: cast to pointer from integer of different size by making it implement the request_irq()/free_irq() cookies correctly. Cc: Jaroslav Kysela Cc: Takashi Iwai Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c3ed85a36ff5b01f340db67ac5ae6e699d3b8a2b Author: Dave Jones Date: Sun Jul 15 23:40:03 2007 -0700 isofs: fix up CodingStyle fs/isofs/* had a bunch of CodingStyle issues. * Indentation was a mix of spaces and tabs * "int * foo" instead of "int *foo" * "while ( foo )" instead of "while (foo)" * if (foo) blah; on one line instead of two * Missing printk KERN_ levels * lots of trailing whitespace * lines >80 columns changed to wrap. * Unnecessary prototype removed by shuffling code order in C file. Should be no functional changes other than slight size increase due to printk changes. Further improvement possible, but this is a start.. Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b28f22a87a5a2f0ab39f2549441bbe5eb2e369f Author: Alan Cox Date: Sun Jul 15 23:40:02 2007 -0700 edd: switch to pci_get based API Signed-off-by: Alan Cox Cc: Matt Domsch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1fbac447993b275f90e118826a5edca1ec508da Author: Thiemo Seufer Date: Sun Jul 15 23:39:59 2007 -0700 Update zilog timeout Update zilog timeout, thanks Peter Fuerst. Signed-off-by: Thiemo Seufer Cc: Martin Michlmayr Cc: Peter Fuerst Cc: Russell King Cc: Alan Cox Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d05e96fe4664c0398f1d060c0f6a8ff8fc74a449 Author: Denver Gingerich Date: Sun Jul 15 23:39:59 2007 -0700 fix compiler warnings in acorn.c warning: 'adfs_partition' defined but not used warning: 'riscix_partition' defined but not used warning: 'linux_partition' defined but not used Signed-off-by: Denver Gingerich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21eb92025e5768fb54120e2f2745a41c36f3aa69 Author: Richard Knutsson Date: Sun Jul 15 23:39:57 2007 -0700 drivers/block/z2ram: Remove TRUE/FALSE defines Remove defines of TRUE and FALSE * not used in the file * the file is not included somewhere else Signed-off-by: Richard Knutsson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a3021f4e249fbdb5f30d614707b5e02022e4c9b Author: Robert P. J. Day Date: Sun Jul 15 23:39:57 2007 -0700 Remove unnecessary includes of spinlock.h under include/linux Remove the obviously unnecessary includes of under the include/linux/ directory, and fix the couple errors that are introduced as a result of that. Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9aacd599342fdfc1fb9422f37e900609b7a46249 Author: OGAWA Hirofumi Date: Sun Jul 15 23:39:56 2007 -0700 fat: gcc 4.3 warning fix This patch fixes the following warnings. fs/fat/dir.c: In function 'fat_parse_long': include/linux/msdos_fs.h:294: warning: array subscript is above array bounds include/linux/msdos_fs.h:295: warning: array subscript is above array bounds include/linux/msdos_fs.h:295: warning: array subscript is above array bounds The ->name is defined as "name[8], ext[3]", but fat_checksum() uses those as name[11]. There is no actual problem, but it's not a good manner. Signed-off-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 259902ea951008bcbd31a49f667062ff8012ef55 Author: Pavel Emelianov Date: Sun Jul 15 23:39:56 2007 -0700 Make NFS client use seq_list_xxx helpers This includes /proc/fs/nfsfs/servers and /proc/fs/nfsfs/volumes entries. Both need to show the header and use the list_head. Signed-off-by: Pavel Emelianov Acked-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0765fb85782da9dca98482ebb1ae0d8c1a5e0f7 Author: Pavel Emelianov Date: Sun Jul 15 23:39:55 2007 -0700 Make /proc/self/mounts(tats) use seq_list_xxx helpers One more simple and stupid switching to the new API. Signed-off-by: Pavel Emelianov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25216b00395dfb52bfe06e4886a6ad831ede7b4b Author: Pavel Emelianov Date: Sun Jul 15 23:39:54 2007 -0700 Make /proc/tty/drivers use seq_list_xxx helpers Simple and stupid like some previous ones. Just use new API. Signed-off-by: Pavel Emelianov Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 708f4b522371da5e6c615a49e1844195aff84cb4 Author: Pavel Emelianov Date: Sun Jul 15 23:39:54 2007 -0700 Make /proc/modules use seq_list_xxx helpers Here there is not need even in .show callback altering. The original code passes list_head in *v. Signed-off-by: Pavel Emelianov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46c65b71e6122b89cd7b2bb36c1ba26d07e84fcd Author: Pavel Emelianov Date: Sun Jul 15 23:39:53 2007 -0700 Make /proc/misc use seq_list_xxx helpers Simple and stupid - just use the helpers. Signed-off-by: Pavel Emelianov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13d31894b3c459805303325aa5b91f9cd4ed70bc Author: Pavel Emelianov Date: Sun Jul 15 23:39:53 2007 -0700 Make crypto API use seq_list_xxx helpers Simple and stupid - just use the same code from another place in the kernel. Signed-off-by: Pavel Emelianov Acked-by: Herbert Xu Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6a8bd6d2839f7134f191c6e13e2fd2e9e8c91a6 Author: Pavel Emelianov Date: Sun Jul 15 23:39:52 2007 -0700 Make AFS use seq_list_xxx helpers These proc files show some header before dumping the list, so the seq_list_start_head() is used. Signed-off-by: Pavel Emelianov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4ef0296f214a1e0e65f161f88663b0ca1acca31 Author: Andrew Morton Date: Sun Jul 15 23:39:51 2007 -0700 percpu_counters: use for_each_online_cpu() Now that we have implemented hotunplug-time counter spilling, percpu_counter_sum() only needs to look at online CPUs. Cc: Gautham R Shenoy Cc: Oleg Nesterov Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c67ad917cbf21b2862e2cf8e8b28339872ef7927 Author: Andrew Morton Date: Sun Jul 15 23:39:51 2007 -0700 percpu_counters(): use cpu notifiers per-cpu counters presently must iterate over all possible CPUs in the exhaustive percpu_counter_sum(). But it can be much better to only iterate over the presently-online CPUs. To do this, we must arrange for an offlined CPU's count to be spilled into the counter's central count. We can do this for all percpu_counters in the machine by linking them into a single global list and walking that list at CPU_DEAD time. (I hope. Might have race windows in which the percpu_counter_sum() count is inaccurate?) Cc: Gautham R Shenoy Cc: Oleg Nesterov Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85420ccad1610f123365eec89848ef25641bc6b7 Author: Andrew Morton Date: Sun Jul 15 23:39:50 2007 -0700 vxfs warning fixes gcc-4.3: fs/freevxfs/vxfs_lookup.c: In function 'vxfs_find_entry': fs/freevxfs/vxfs_lookup.c:139: warning: cast from pointer to integer of different size fs/freevxfs/vxfs_lookup.c: In function 'vxfs_readdir': fs/freevxfs/vxfs_lookup.c:294: warning: cast from pointer to integer of different size Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21f3da95daed2d0f0c28cc4ef8b1103fbfb7bded Author: Andrew Morton Date: Sun Jul 15 23:39:50 2007 -0700 fuse warning fix gcc-4.3: fs/fuse/dir.c: In function 'parse_dirfile': fs/fuse/dir.c:833: warning: cast from pointer to integer of different size fs/fuse/dir.c:835: warning: cast from pointer to integer of different size [miklos@szeredi.hu: use offsetof] Acked-by: Miklos Szeredi Signed-off-by: Andrew Morton