commit a531a141089714efe39eca89593524fdf05104f2 Merge: 5e6ddf9... b1967d0... Author: Linus Torvalds Date: Tue Nov 27 18:54:17 2007 -0800 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: ocfs2: reverse inline-data truncate args ocfs2: Fix comparison in ocfs2_size_fits_inline_data() ocfs2: Remove bug statement in ocfs2_dentry_iput() [PATCH] ocfs2: Remove expensive bitmap scanning ocfs2: log valid inode # on bad inode ocfs2: Filter -ENOSPC in mlog_errno() [PATCH] fs/ocfs2: Add missing "space" ocfs2: Reset journal parameters after s_mount_opt update commit 5e6ddf9aaa0f2b16fc503626c70bb19832b22b8b Merge: 7749c90... c37a330... Author: Linus Torvalds Date: Tue Nov 27 18:54:08 2007 -0800 Merge branch 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev * 'for-linus' of git://www.linux-m32r.org/git/takata/linux-2.6_dev: m32r: Update sys_rt_sigsuspend m32r: Ignore warnings for unused syscalls m32r: Add missing syscalls commit b1967d0eddeef4869ee283e692735cb994f3745a Author: Mark Fasheh Date: Tue Nov 20 11:56:39 2007 -0800 ocfs2: reverse inline-data truncate args ocfs2_truncate() and ocfs2_remove_inode_range() had reversed their "set i_size" arguments to ocfs2_truncate_inline(). Fix things so that truncate sets i_size, and punching a hole ignores it. This exposed a problem where punching a hole in an inline-data file wasn't updating the page cache, so fix that too. Signed-off-by: Mark Fasheh commit 0d8a4e0cd688ad0de6430ce3425c7849cfec1c2d Author: Mark Fasheh Date: Tue Nov 20 11:48:41 2007 -0800 ocfs2: Fix comparison in ocfs2_size_fits_inline_data() This was causing us to prematurely push out inline data by one byte. Signed-off-by: Mark Fasheh commit bccb9dad8949cd0df1d3d2188a1fdb4b1936d537 Author: Mark Fasheh Date: Wed Nov 7 16:35:14 2007 -0800 ocfs2: Remove bug statement in ocfs2_dentry_iput() The existing bug statement didn't take into account unhashed dentries which might not have a cluster lock on them. This could happen if a node exporting the file system via NFS is rebooted, re-exported to nfs clients and then unmounted. It's fine in this case to not have a dentry cluster lock. Just remove the bug statement and replace it with an error print, which does the proper checks. Though we want to know if something has happened which might have prevented a cluster lock from being created, it's definitely not necessary to panic the machine for this. Signed-off-by: Mark Fasheh commit 5a58c3ef22d6e5b84ff651a7d27ae2cbea9f9870 Author: Jan Kara Date: Tue Nov 13 19:59:33 2007 +0100 [PATCH] ocfs2: Remove expensive bitmap scanning Enable expensive bitmap scanning only if DEBUG option is enabled. The bitmap scanning quite loads the CPU and on my machine the write throughput of dd if=/dev/zero of=/ocfs2/file bs=1M count=500 conv=sync improves from 37 MB/s to 45.4 MB/s in local mode... Signed-off-by: Jan Kara Signed-off-by: Mark Fasheh commit a46043e08f300982c51df317e2f8fb919dedadcd Author: Mark Fasheh Date: Mon Nov 19 18:40:16 2007 -0800 ocfs2: log valid inode # on bad inode If the inode block isn't valid then we don't want to print the value from that, instead print the block number which was passed in (which should always be correct). Also, turn this into a debug print for now - folks who hit an actual problem always have other logs indicating what the source is. Signed-off-by: Mark Fasheh commit ef9f86ceb63f2803c9aada249986b84d2f99c635 Author: Mark Fasheh Date: Mon Nov 19 18:31:17 2007 -0800 ocfs2: Filter -ENOSPC in mlog_errno() It's almost never worth printing in that situation and we keep forgetting to manually filter it out. Signed-off-by: Mark Fasheh commit 2759236f8415ccc0f275b57bd8142c2c81fd2177 Author: Joe Perches Date: Mon Nov 19 17:53:34 2007 -0800 [PATCH] fs/ocfs2: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Mark Fasheh commit e001e796e47d29c470de6c2cd36400e03c66118b Author: Mark Fasheh Date: Wed Nov 7 14:21:45 2007 -0800 ocfs2: Reset journal parameters after s_mount_opt update Right now we're just setting them from the existing parameters, not the new ones that a remount specified. Signed-off-by: Mark Fasheh commit 7749c902592f610dc448830210174ab922f54be9 Merge: 2ea0718... 6413f08... Author: Linus Torvalds Date: Tue Nov 27 14:29:03 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ide-scsi: use print_hex_dump from ide: More TSST drives with broken cable detection ali14xx: constify __initdata ide: remove bogus ide_fix_driveid() comment trm290: remove bogus init_hwif_trm290() comment piix: add HP compaq laptop to short cable list alim15x3: add Mitac 8317 and derivatives to ali_cable_override() ide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist amd74xx: arm hack drivers/ide: Add missing "space" ide-cris: don't override ide_register_hw() result ide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig ide: add CONFIG_IDE_H8300 config option ide/Kconfig: fix mpc8xx host driver dependencies macide/q40ide: add missing __init tag to {macide,q40ide}_init() aec62xx: Fix kernel oops in driver's probe function ide: skip ide_wait_not_busy() on noprobe-disks siimage: remove resetproc() method ide: don't set PIO mode on pre-EIDE drives sis5513.c: Add Packard Bell EasyNote K5305 to laptops commit 2ea0718884c520f85c869c3bfef57477316ea91f Merge: 9c8ff4f... 404fb88... Author: Linus Torvalds Date: Tue Nov 27 14:27:56 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: KVM: SVM: Fix FPU leak while emulating clts KVM: SVM: Unload guest fpu on vcpu_put() KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std KVM: x86 emulator: fix the saving of of the eip value KVM: x86 emulator: fix JMP_REL commit 9c8ff4f4dac189e4111238d54c2b12e7837f4818 Merge: 86e67a0... 645a8d9... Author: Linus Torvalds Date: Tue Nov 27 14:21:19 2007 -0800 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: scatterlist: add more safeguards Revert "ll_rw_blk: temporarily enable max_segments tweaking" mmc: Add missing sg_init_table() call block: Fix memory leak in alloc_disk_node() alpha: fix sg_page breakage blktrace: Make sure BLKTRACETEARDOWN does the full cleanup. commit 86e67a07d4dc8cd40454698f2abb972fced06910 Merge: febb187... a316b79... Author: Linus Torvalds Date: Tue Nov 27 14:20:51 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/iser: Add missing counter increment in iser_data_buf_aligned_len() IB/ehca: Fix static rate regression mlx4_core: Fix state check in mlx4_qp_modify() IB/ipath: Normalize error return codes for posting work requests IB/ipath: Fix offset returned to ibv_modify_srq() IB/ipath: Fix error path in QP creation IB/ipath: Fix offset returned to ibv_resize_cq() commit febb187761b02fce7d61b9c897d0e701f672b5ee Merge: 8c27eba... 35baef2... Author: Linus Torvalds Date: Tue Nov 27 14:20:35 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: adds the context menu key (HUT GenDesc 0x84) Input: add definitions for frame forward and frame back keys Input: bf54x-keys - keypad does not exist on BF544 parts Input: gpio-keys - request and configure GPIOs Input: i8042 - add i8042.noloop quirk for MS Virtual Machine Sonypi: use synchronize_irq instead of sycnronize_sched sonypi: fit input devices into sysfs tree sony-laptop: fit input devices into sysfs tree commit 6413f08666830afec21e41e50c28a2c5105ede69 Author: Denis Cheng Date: Tue Nov 27 21:35:58 2007 +0100 ide-scsi: use print_hex_dump from these utilities implemented in lib/hexdump.c are more handy, please use this. Bart: - s/KERN_DEBUG/KERN_CONT/ as pointed out by Randy - s/DUMP_PREFIX_OFFSET/DUMP_PREFIX_NONE/ - don't include ASCII dump - respect 80-columns limit Signed-off-by: Denis Cheng Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit e97564f362a93f8c248246c19828895950341252 Author: Peter Missel Date: Tue Nov 27 21:35:57 2007 +0100 ide: More TSST drives with broken cable detection Add more TSST (Toshiba/Samsung) drives to the 'broken cable detection' blacklist. Signed-off-by: Peter Missel (peter.missel@onlinehome.de) Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 498f26b45cfc2e16d15f0416a40bc01156c43e92 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:57 2007 +0100 ali14xx: constify __initdata Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 0546cb045ea487d8702c5ae4da6e0eab7baa17ba Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:57 2007 +0100 ide: remove bogus ide_fix_driveid() comment Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 8a82387cd235d5251890d53c57bf953d24a76831 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 trm290: remove bogus init_hwif_trm290() comment Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit dd0fd40d5488aadfc54a50919471469a31407322 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 piix: add HP compaq laptop to short cable list Port of Jeff's libata commit 54174db300ee1bac632d62e4ac37fe02e47d1f18 ("[libata] ata_piix: add HP compaq laptop to short cable list"). Cc: Jeff Garzik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit d151456a71e2757da4169a6be2eb68ac115b05b0 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 alim15x3: add Mitac 8317 and derivatives to ali_cable_override() Port of Alan's patch for pata_ali.c. Cc: Alan Cox Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit b0bc65b9aa7d9eb8af4895ed772ef7fe2c10687c Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:56 2007 +0100 ide: add TORiSAN model: CD-ROM CDR_U200 fw: 1.09 to DMA blacklist Based on the report from snowbat@gmail.com. Fixes kernel bugzilla bug #9195. Tested-by: snowbat@gmail.com Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 9130201003cf3a9f3afe830fe8e544018beab61b Author: Andrew Morton Date: Tue Nov 27 21:35:56 2007 +0100 amd74xx: arm hack drivers/ide/pci/amd74xx.c: In function `init_hwif_amd74xx': drivers/ide/pci/amd74xx.c:387: error: implicit declaration of function `pci_get_legacy_ide_irq' Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit aca38a5157dec0090ad800d52c138fb83674481f Author: Joe Perches Date: Tue Nov 27 21:35:55 2007 +0100 drivers/ide: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Bartlomiej Zolnierkiewicz commit e816056210941e9886e447e331b7fdbe133cb5f0 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:55 2007 +0100 ide-cris: don't override ide_register_hw() result * Don't override ide_register_hw() result and check if there is a hwif available to use. * MAX_HWIFS is user configurable nowadays so replace it by hard-coded value. * Remove the comment about ide_hwifs[]. Acked-by: Mikael Starvik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit c03a9278ad96e1e7d144f5f626c6794f050c0ae7 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:55 2007 +0100 ide: move CONFIG_IDE_ETRAX to drivers/ide/Kconfig * Move ETRAX_IDE and friends from arch/cris/arch-{v10,v32}/drivers/Kconfig to drivers/ide/Kconfig. * Don't force selecting ide-disk and ide-cd device drivers (please handle this through defconfig if necessary). * Make ETRAX_IDE depend on BROKEN for the time being (it doesn't even compile currently). Cc: Mikael Starvik Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit acfad6e186664fa8521662bb7992ff6508f9357b Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 ide: add CONFIG_IDE_H8300 config option Add a separate config option for ide-8300 host driver instead of depending on CONFIG_H8300. This change is a preparation for the future changes and also allows ide-h8300 to be disabled if needed. Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit c5d252cbe9044054476498df163d99cb5a6d0ba8 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 ide/Kconfig: fix mpc8xx host driver dependencies Only LWMON, IVMS8, IVML24 and TQM8xxL platforms have the needed defines (IDE0_BASE_OFFSET and friends) in the platform header file. Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 355bd12f4aba2f6acaf5e8dd9c85e0cc7dbae965 Author: Bartlomiej Zolnierkiewicz Date: Tue Nov 27 21:35:54 2007 +0100 macide/q40ide: add missing __init tag to {macide,q40ide}_init() Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit b48d08177fe635a549aaf63eef508be1de069ebf Author: Aleksandar Radovanovic Date: Tue Nov 27 21:35:53 2007 +0100 aec62xx: Fix kernel oops in driver's probe function Add pci_enable_device() to aec62xx probe function before doing any I/O. Original probe function tries to read from device's PCI region 4 before calling ide_setup_pci_device(). Since the device is not enabled at this point, on machines that have no firmware PCI initialization (e.g. ASUS WL-700gE router), corresponding PCI BAR is 0 and the following inb() causes a kernel oops. Signed-off-by: Aleksandar Radovanovic Cc: Linus Torvalds , Signed-off-by: Bartlomiej Zolnierkiewicz commit 8266105b15192177ac732ab8a27b315dc9291100 Author: Jonas Stare Date: Tue Nov 27 21:35:53 2007 +0100 ide: skip ide_wait_not_busy() on noprobe-disks There is a problem in some hardware where the kernel will stall for 35 seconds waiting for disks that don't exist. This patch will skip waiting for the BSY-bit on IDE drives to go away if you set "hdx=noprobe" as a kernel option and the disk is not marked as 'present' (like when you set the geometry by hand). If no noprobe-option is set the code will work (more or less) as the original but if set the code will skip the ide_wait_not_busy() for that drive. Even if there would be a drive there and it is still busy afterwards it should not matter since it isn't probed for later. The code also honors the MAX_DRIVES variable instead of assuming that there will be two harddrives on the bus. Bart: minor cleanups Signed-off-by: Jonas Stare CC: Andrew Morton , Cc: Linus Torvalds Cc: Alan Cox Cc: Benjamin Herrenschmidt Signed-off-by: Bartlomiej Zolnierkiewicz commit 8ac98ce17cf318f6ceb1eb88053917001f5ca60a Author: Sergei Shtylyov Date: Tue Nov 27 21:35:53 2007 +0100 siimage: remove resetproc() method The intent behind siimage_reset() was probably to hard reset the interface and the SATA PHY but as the code writes to two reserved bits instead, it obviously has been ineffective from the start. So, just remove it. Signed-off-by: Sergei Shtylyov Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 89613e667f7539defb053795f18653003179cf7e Author: Sergei Shtylyov Date: Tue Nov 27 21:35:52 2007 +0100 ide: don't set PIO mode on pre-EIDE drives Fix handling of the PIO modes for the pre-EIDE drives that did not support the PIO Flow Control Transfer Mode value (00001 nnn) of the Set Transfer Mode feature by skipping the actual mode programming. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit a1d85864d30181a71243193ed01d322dc0618dc6 Author: Gabriel Craciunescu Date: Tue Nov 27 21:35:52 2007 +0100 sis5513.c: Add Packard Bell EasyNote K5305 to laptops With newer kernels HDD in my old laptop is limited to UDMA 33. With this patch I get UDMA 100 again. Signed-off-by: Gabriel Craciunescu Signed-off-by: Bartlomiej Zolnierkiewicz commit c37a33035720a0faf1f609dc7c2c07080ed83629 Author: Hirokazu Takata Date: Wed Sep 12 17:51:35 2007 +0900 m32r: Update sys_rt_sigsuspend Update sys_rt_sigsuspend() of arch/m32r/signal.c. This modification is derived from generic one of kernel/signal.c. Signed-off-by: Hirokazu Takata commit 52fda4870e74b43fa5ef5171cc89ac40e5b53ed1 Author: Hirokazu Takata Date: Thu Sep 13 18:31:34 2007 +0900 m32r: Ignore warnings for unused syscalls checksyscalls.sh reports warnings for missing syscalls. But, on m32r, some legacy syscalls were removed elaborately. This patch kills warnings for obsolete syscalls, which are no longer used in the m32r kernel. Signed-off-by: Hirokazu Takata commit 59ce3df3e107f80c5c849f06bb9da149b1ceb349 Author: Hirokazu Takata Date: Wed Sep 12 17:46:53 2007 +0900 m32r: Add missing syscalls Add the following 39 syscalls for m32r: sys_add_key, sys_request_key, sys_keyctl, sys_ioprio_set, sys_ioprio_get, sys_inotify_init, sys_inotify_add_watch, sys_inotify_rm_watch, sys_migrate_pages, sys_openat, sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64, sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat, sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare, sys_set_robust_list, sys_get_robust_list, sys_splice, sys_sync_file_range, sys_tee, sys_vmsplice, sys_move_pages, sys_getcpu, sys_epoll_pwait, sys_utimensat, sys_signalfd, sys_timerfd, sys_eventfd, sys_fallocate Signed-off-by: Hirokazu Takata commit 404fb881b82cf0cf6981832f8d31a7484e4dee81 Author: Amit Shah Date: Mon Nov 19 17:57:35 2007 +0200 KVM: SVM: Fix FPU leak while emulating clts The clts code didn't use set_cr0 properly, so our lazy FPU processing wasn't being done by the clts instruction at all. (this isn't called on Intel as the hardware does the decode for us) Signed-off-by: Amit Shah Signed-off-by: Avi Kivity commit 8d379a7c069179a98616c9cac6bb2a06a500de49 Author: Avi Kivity Date: Tue Nov 27 15:33:10 2007 +0200 KVM: SVM: Unload guest fpu on vcpu_put() Not unloading the guest fpu can cause fpu leaks from guest to guest (or host to guest). Signed-off-by: Avi Kivity commit 00b2ef475d4728ca53a2bc788c7978042907e354 Author: Amit Shah Date: Sun Nov 18 22:25:40 2007 +0530 KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std emulator_write_std() is not implemented, and calling write_emulated should work just as well in place of write_std. Fixes emulator failures with the push r/m instruction. Signed-off-by: Amit Shah Signed-off-by: Avi Kivity commit 2a738e20a11b44219aa83073d625ff1a7004e463 Author: Izik Eidus Date: Sun Nov 11 14:46:34 2007 +0200 KVM: x86 emulator: fix the saving of of the eip value this make sure that no matter what is the operand size, all the value of the eip will be saved Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit e826ec9ae2baf9980402e85f0bbe1dac53ceb110 Author: Izik Eidus Date: Sun Nov 11 14:40:48 2007 +0200 KVM: x86 emulator: fix JMP_REL Change JMP_REL to call to register_address_increment(): the operands size should not effect the calculation of the eip, instead the ad_bytes should affect it. Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit 645a8d94629fd812a220d54876339a1ddafd9bc2 Author: Tejun Heo Date: Tue Nov 27 09:30:39 2007 +0100 scatterlist: add more safeguards Add more safeguards to protect against misinterpreting a chain entry as a normal scatterlist and vice-versa. * Make sure the entry isn't a chain when assigning and reading a normal sg. * Clear offset and length when chaining. Signed-off-by: Tejun Heo Signed-off-by: Jens Axboe commit 7c9f29b128aab5ac95af553e8d8e0e372647f1d5 Author: Jens Axboe Date: Tue Nov 27 09:23:51 2007 +0100 Revert "ll_rw_blk: temporarily enable max_segments tweaking" This was a temporary debugging thing for sg chaining testing, revert it now as it has served its purpose. This reverts commit 563063a808de6b2004d5b8a09ddcb6125481f4b2. Signed-off-by: Jens Axboe commit 05e5b136459b11cd9559370d5756719e08074fe0 Author: Haavard Skinnemoen Date: Fri Nov 23 10:19:00 2007 +0100 mmc: Add missing sg_init_table() call mmc_init_queue only initializes the scatterlists with sg_init_table() when using a bounce buffer. This leads to a BUG() when CONFIG_DEBUG_SG is set. Signed-off-by: Haavard Skinnemoen Signed-off-by: Jens Axboe commit c7674030e5eb83d9ba29318fb9b3ccedf84d583e Author: Jerome Marchand Date: Fri Nov 23 09:17:53 2007 +0100 block: Fix memory leak in alloc_disk_node() Fix a memory leak in alloc_disk_node(). Don't forget to free 'dkstats' when the allocation of 'part' failed. Signed-off-by: Jerome Marchand Signed-off-by: Jens Axboe commit 8c8d7214d1b35726e950db1f73317e28e827f1cd Author: FUJITA Tomonori Date: Wed Nov 21 12:26:31 2007 +0100 alpha: fix sg_page breakage Signed-off-by: FUJITA Tomonori Signed-off-by: Jens Axboe commit 35fc51e7a5056889421270c1fb63d8ec45fbccf4 Author: Aneesh Kumar K.V Date: Wed Nov 21 12:25:41 2007 +0100 blktrace: Make sure BLKTRACETEARDOWN does the full cleanup. if blktrace program segfault it will not be able to call BLKTRACETEARDOWN. Now if we run the blktrace again that would result in a failure to create the block/ debugfs directory.This will result in blk_remove_root() to be called which will set blk_tree_root to NULL. But the debugfs block dir still exist because it contain subdirectory. Now if we try to fix it using BLKTRACETEARDOWN it won't work because blk_tree_root is NULL. Fix the same. Tested as below root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc Segmentation fault root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc BLKTRACESETUP: No such file or directory Failed to start trace on /dev/hdc root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -k /dev/hdc root@qemu-image:/home/kvaneesh/blktrace# ./blktrace -d /dev/hdc Signed-off-by: Aneesh Kumar K.V Signed-off-by: Jens Axboe commit 35baef2afb6270ff731b4d766f0b163c3912304f Author: Aristeu Rozanski Date: Tue Nov 27 00:47:04 2007 -0500 Input: adds the context menu key (HUT GenDesc 0x84) Signed-off-by: Aristeu Rozanski Signed-off-by: Dmitry Torokhov commit c23f1f9c40647971e673b5454c22c76b9ae9c5f5 Author: Aristeu Rozanski Date: Tue Nov 27 00:46:57 2007 -0500 Input: add definitions for frame forward and frame back keys Signed-off-by: Aristeu Rozanski Signed-off-by: Dmitry Torokhov commit 6957c8280080d985518133eab3a57d715a57be78 Author: Mike Frysinger Date: Tue Nov 27 00:46:42 2007 -0500 Input: bf54x-keys - keypad does not exist on BF544 parts Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Dmitry Torokhov commit 8c27eba54970c6ebbb408186e5baa2274435e869 Merge: 8912858... 5dba479... Author: Linus Torvalds Date: Mon Nov 26 20:09:07 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6: (41 commits) [XFRM]: Fix leak of expired xfrm_states [ATM]: [he] initialize lock and tasklet earlier [IPV4]: Remove bogus ifdef mess in arp_process [SKBUFF]: Free old skb properly in skb_morph [IPV4]: Fix memory leak in inet_hashtables.h when NUMA is on [IPSEC]: Temporarily remove locks around copying of non-atomic fields [TCP] MTUprobe: Cleanup send queue check (no need to loop) [TCP]: MTUprobe: receiver window & data available checks fixed [MAINTAINERS]: tlan list is subscribers-only [SUNRPC]: Remove SPIN_LOCK_UNLOCKED [SUNRPC]: Make xprtsock.c:xs_setup_{udp,tcp}() static [PFKEY]: Sending an SADB_GET responds with an SADB_GET [IRDA]: Compilation for CONFIG_INET=n case [IPVS]: Fix compiler warning about unused register_ip_vs_protocol [ARP]: Fix arp reply when sender ip 0 [IPV6] TCPMD5: Fix deleting key operation. [IPV6] TCPMD5: Check return value of tcp_alloc_md5sig_pool(). [IPV4] TCPMD5: Use memmove() instead of memcpy() because we have overlaps. [IPV4] TCPMD5: Omit redundant NULL check for kfree() argument. ieee80211: Stop net_ratelimit/IEEE80211_DEBUG_DROP log pollution ... commit 8912858bcb9e314549a4abc15db6b5841a96fa2c Merge: 423eaf8... 38cb241... Author: Linus Torvalds Date: Mon Nov 26 20:08:42 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: [CRYPTO] api: Fix potential race in crypto_remove_spawn [CRYPTO] authenc: Move initialisations up to shut up gcc commit 423eaf8f00d89ca79bb2c9d4d22e92c9774e2d8a Merge: 0685ab4... 02fe494... Author: Linus Torvalds Date: Mon Nov 26 19:42:59 2007 -0800 Merge git://git.linux-nfs.org/pub/linux/nfs-2.6 * git://git.linux-nfs.org/pub/linux/nfs-2.6: NFS: Clean up new multi-segment direct I/O changes NFS: Ensure we return zero if applications attempt to write zero bytes NFS: Support multiple segment iovecs in the NFS direct I/O path NFS: Introduce iovec I/O helpers to fs/nfs/direct.c SUNRPC: Add missing "space" to net/sunrpc/auth_gss.c SUNRPC: make sunrpc/xprtsock.c:xs_setup_{udp,tcp}() static NFS: fs/nfs/dir.c should #include "internal.h" NFS: make nfs_wb_page_priority() static NFS: mount failure causes bad page state SUNRPC: remove NFS/RDMA client's binary sysctls kernel BUG at fs/nfs/namespace.c:108! - can be triggered by bad server sunrpc: rpc_pipe_poll may miss available data in some cases sunrpc: return error if unsupported enctype or cksumtype is encountered sunrpc: gss_pipe_downcall(), don't assume all errors are transient NFS: Fix the ustat() regression commit 0685ab4fb8e527639d9867df60d49dccba85d842 Merge: ff1ea52... f7b9329... Author: Linus Torvalds Date: Mon Nov 26 19:42:08 2007 -0800 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: sched: bump version of kernel/sched_debug.c sched: fix minimum granularity tunings sched: fix RLIMIT_CPU comment sched: fix kernel/acct.c comment sched: fix prev_stime calculation sched: don't forget to unlock uids_mutex on error paths commit ff1ea52fa317a5658b6415b25169c5e531f54876 Merge: b5faa4b... f44d9ef... Author: Linus Torvalds Date: Mon Nov 26 19:41:28 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: fix APIC related bootup crash on Athlon XP CPUs time: add ADJ_OFFSET_SS_READ x86: export the symbol empty_zero_page on the 32-bit x86 architecture x86: fix kprobes_64.c inlining borkage pci: use pci=bfsort for HP DL385 G2, DL585 G2 x86: correctly set UTS_MACHINE for "make ARCH=x86" lockdep: annotate do_debug() trap handler x86: turn off iommu merge by default x86: fix ACPI compile for LOCAL_APIC=n x86: printk kernel version in WARN_ON and other dump_stack users ACPI: Set max_cstate to 1 for early Opterons. x86: fix NMI watchdog & 'stopped time' problem commit b5faa4b89e4d83203b1f44f143a351b518f7cda2 Merge: a039767... 233b28a... Author: Linus Torvalds Date: Mon Nov 26 19:40:27 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (56 commits) Blackfin arch: fix bug when enable uart1 with uart0 disabled => no initial console Blackfin arch: split apart dump_bfin_regs and merge/remove show_regs from process.c, which was largely duplicated Blackfin arch: use common __INIT/__FINIT defines rather than setting the .section ourselves to .init.text Blackfin arch: fix bug when sending signals with the wrong PC, cause gdb get confused Blackfin arch: Ensure we printk out strings with the proper loglevel Blackfin arch: Need to specify ax with the .init.text section, Blackfin arch: Update Kconfig to latest Blackfin silicon datasheets Blackfin arch: update defconfig files Blackfin arch: Fix typo, and add ENDPROC - no functional changes Blackfin arch: convert READY to DMA_READY as it causes build errors in common sound code otherwise Blackfin arch: add defines for the on-chip L1 ROM of BF54x Blackfin arch: cplb and map header file cleanup Blackfin arch: cleanup the cplb declares Blackfin arch: fix broken on BF52x, remove silly checks on processors for L1_SCRATCH defines Blackfin arch: add support for working around anomaly 05000312 Blackfin arch: cleanup BF54x header file and add BF547 definition Blackfin arch: fix building for BF542 processors which only have 1 TWI Blackfin arch: rename _return_from_exception to _bfin_return_from_exception and export it Blackfin arch: move EXPORT_SYMBOL() to C files where the symbol is actually defined Blackfin arch: fix bug NOR Flash MTD mount fail ... commit a039767f8d7eeb0731c4053d43c0d8caa27d69d0 Merge: cdb3270... 9a876d6... Author: Linus Torvalds Date: Mon Nov 26 19:39:55 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.24 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.24: sh: include ax88796 in the defconfig for r7785rp sh: include ax88796 in the defconfig for r7780mp sh: fix R2D-1 CF support fb: Orphan imsttfb. sh: Update mailing list info. sh: lockless UTLB miss fast-path. sh: Kill off UTLB flush in fast-path. sh: Fix copy_{to,from}_user_page() with cache disabled. commit cdb32706f6948238ed6d1d85473c64c27366e9e9 Author: Mikulas Patocka Date: Thu Nov 22 21:26:01 2007 +0100 plip: fix parport_register_device name parameter Plip passes a string "name" that is allocated on stack to parport_register_device. parport_register_device holds the pointer to "name" and when the registering function exits, it points nowhere. On some machine, this bug causes bad names to appear in /proc, such as /proc/sys/dev/parport/parport0/devices/T^/�X^/�, on others, the plip proc node is completely missing. The patch also fixes documentation to note this requirement. Signed-off-by: Mikulas Patocka Signed-off-by: Linus Torvalds commit f6ce5cca74b8681fdf1d7307edc66a7213b43f6f Author: Mikulas Patocka Date: Thu Nov 22 21:19:39 2007 +0100 plip: use netif_rx_ni() for packet receive netif_rx is meant to be called from interrupts because it doesn't wake up ksoftirqd. For calling from outside interrupts, netif_rx_ni exists. This fixes plip to use netif_rx_ni. It fixes the infamous error "NOHZ: local_softirq_panding 08" that happens on some machines with NOHZ and plip --- it is caused by the fact that softirq is pending and ksoftirqd is sleeping. Signed-off-by: Mikulas Patocka Signed-off-by: Linus Torvalds commit 64d0793109a98abcc2f4bf0c7d8b000fd220cdcd Merge: bb40784... 1dff314... Author: Linus Torvalds Date: Mon Nov 26 19:25:23 2007 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: mmc: Avoid re-using minor numbers before the original device is closed. tifm_sd: handle non-power-of-2 block sizes mmc_block: check card state after write commit bb40784f4aeae7b9d70c49b422f78ffdfc539739 Merge: 3050d45... 2b83457... Author: Linus Torvalds Date: Mon Nov 26 19:20:37 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Fix check after use error in ACL code [CIFS] Fix potential data corruption when writing out cached dirty pages [CIFS] Fix spurious reconnect on 2nd peek from read of SMB length [CIFS] remove build warning [CIFS] Have CIFS_SessSetup build correct SPNEGO SessionSetup request [CIFS] minor checkpatch cleanup [CIFS] have cifs_get_spnego_key get the hostname from TCP_Server_Info [CIFS] add hostname field to TCP_Server_Info struct [CIFS] clean up error handling in cifs_mount [CIFS] add ver= prefix to upcall format version [CIFS] Fix buffer overflow if server sends corrupt response to small commit 3050d45caded2d9fb8170547d08c389122c6c5d5 Author: Andreas Herrmann Date: Mon Nov 19 09:28:22 2007 +0100 radeonfb: add chip definition for RV370 5b63 ... which I've found on a Sapphire X550 (Silent). Acked-by: Benjamin Herrenschmidt Signed-off-by: Andreas Herrmann Signed-off-by: Linus Torvalds commit 6d272940537e834848d88c11b428e9973b8fa2bc Merge: f4d53ce... e190222... Author: Linus Torvalds Date: Mon Nov 26 19:18:22 2007 -0800 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (21 commits) libata: bump transfer chunk size if it's odd libata: Return proper ATA INT status in pata_bf54x driver pata_ali: trim trailing whitespace (fix checkpatch complaints) pata_isapnp: Polled devices pata_hpt37x: Fix cable detect bug spotted by Sergei pata_ali: Lots of problems still showing up with small ATAPI DMA pata_ali: Add Mitac 8317 and derivatives libata-core: List more documentation sources for reference ata_piix: Invalid use of writel/readl with iomap sata_sil24: fix sg table sizing pata_jmicron: fix disabled port handling in jmicron_pre_reset() pata_sil680: kill bogus reset code (take 2) ata_piix: port enable for the first SATA controller of ICH8 is 0xf not 0x3 ata_piix: only enable the first port on apple macbook pro ata_piix: reorganize controller IDs pata_sis.c: Add Packard Bell EasyNote K5305 to laptops libata-scsi: be tolerant of 12-byte ATAPI commands in 16-byte CDBs libata: use ATA_HORKAGE_STUCK_ERR for ATAPI tape drives libata: workaround DRQ=1 ERR=1 for ATAPI tape drives libata: remove unused functions ... commit f4d53cedce872fe1439818d15e067b497b5d466f Merge: 9bb9f22... 8329d98... Author: Linus Torvalds Date: Mon Nov 26 19:17:19 2007 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: virtio: fix net driver loop case where we fail to restart module: fix and elaborate comments virtio: fix module/device unloading lguest: Fix uninitialized members in example launcher commit 9bb9f2220e6d904f60f9f72209b5313d0808f0c2 Author: Finn Thain Date: Sun Nov 18 11:10:05 2007 +0100 mac68k: mailing list addresss The mail service for the mac.linux-m68k.org domain is defunct. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 2f9b0b5e46f0381fd41af8cb9ed4daffee59d4f3 Author: Geert Uytterhoeven Date: Sun Nov 18 11:10:04 2007 +0100 Amiga zorro bus: Add missing zorro_device_remove() Amiga zorro bus: Add missing zorro_device_remove(). Without this ifconfig and /proc/net/dev oops after unloading a Zorro network device driver module. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 9e893bb8530d9c09b1eb8da8734eebf4182bb8b7 Author: Adrian Bunk Date: Sun Nov 18 11:10:03 2007 +0100 m68k: export atari_keyb_init m68k: export atari_keyb_init This patch fixes the following build error: .. MODPOST 25 modules ERROR: "atari_keyb_init" [drivers/input/mouse/atarimouse.ko] undefined! ERROR: "atari_keyb_init" [drivers/input/keyboard/atakbd.ko] undefined! make[2]: *** [__modpost] Error 1 Signed-off-by: Adrian Bunk Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 5dba4797115c8fa05c1a4d12927a6ae0b33ffc41 Author: Patrick McHardy Date: Tue Nov 27 11:10:07 2007 +0800 [XFRM]: Fix leak of expired xfrm_states The xfrm_timer calls __xfrm_state_delete, which drops the final reference manually without triggering destruction of the state. Change it to use xfrm_state_put to add the state to the gc list when we're dropping the last reference. The timer function may still continue to use the state safely since the final destruction does a del_timer_sync(). Signed-off-by: Patrick McHardy Signed-off-by: Herbert Xu commit 6b41016032accca5a0ca8bbd35ec5fd7f7bc3aeb Merge: 9ccc236... a3f095a... Author: Linus Torvalds Date: Mon Nov 26 19:09:58 2007 -0800 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (39 commits) ACPI: EC: Workaround for optimized controllers (version 3) ACPI: EC: use printk_ratelimit(), add some DEBUG mode messages Revert "ACPI: EC: Workaround for optimized controllers" ACPI: fix two IRQ8 issues in IOAPIC mode ACPI: Add missing spaces to printk format cpuidle: fix HP nx6125 regression cpuidle: add sched_clock_idle_[sleep|wakeup]_event() hooks cpuidle: fix C3 for no bus-master control case ACPI: thinkpad-acpi: fix oops when a module parameter has no value Revert "Fix very high interrupt rate for IRQ8 (rtc) unless pnpacpi=off" ACPI: EC: Don't init EC early if it has no _INI Revert "acpi: make ACPI_PROCFS default to y" Revert "ACPI: add documentation for deprecated /proc/acpi/battery in ACPI_PROCFS" ACPI: Split out control for /proc/acpi entries from battery, ac, and sbs. ACPI: Video: Increase buffer size for writes to brightness proc file. ACPI: EC: Workaround for optimized controllers ACPI: SBS: Fix retval warning ACPI: Enable MSR (FixedHW) support for T-States ACPI: Get throttling info from BIOS only after evaluating _PDC ACPI: Use _TSS for throttling control, when present. Add error checks. ... commit 9ccc236269c1a838b58148c94ac0eeeca885b836 Merge: da457d4... c5d4a99... Author: Linus Torvalds Date: Mon Nov 26 19:09:22 2007 -0800 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] cio: Register/unregister subchannels only from kslowcrw. [S390] Add missing die_notifier() call to die(). [S390] Fix memory detection. [S390] Explicitly code allocpercpu calls in iucv [S390] Dont overwrite lowcores on smp_send_stop(). [S390] Optimize storage key handling for anonymous pages [S390] Fix kernel preemption. [S390] appldata: remove unused binary sysctls. [S390] cmm: remove unused binary sysctls. [S390] Fix irq tracing and lockdep_sys_exit calls. [S390] magic sysrq: check for in_atomic before doing an console_unblank [S390] cio: change device sense procedure to work with pav aliases commit da457d4b93f9d746b0afd4aa65c94759f190d642 Merge: 0f13864... ad639b9... Author: Linus Torvalds Date: Mon Nov 26 19:08:35 2007 -0800 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (27 commits) [POWERPC] 83xx: Update mpc8349emitx(gp) defconfig for USB [POWERPC] 83xx: Update mpc832x_rdb_defconfig to enable MMC-over-SPI [POWERPC] 83xx: MPC832x RDB - remove spidev stub, use mmc_spi [POWERPC] 8xxx: MDS board RTC fixes [POWERPC] Fix 8xx build breakage due to _tlbie changes [POWERPC] Fix device tree interrupt map for Freescale ULI1575 boards [POWERPC] Fix possible division by zero in scaled time accounting [POWERPC] spufs: Fix context destroy vs /spu readdir race [POWERPC] Fix RTAS os-term usage on kernel panic [POWERPC] 83xx: Handle mpc8360 rev. 2.1 RGMII timing erratum [POWERPC] Document rgmii-rxid and rgmii-txid phy-connection-types [POWERPC] 83xx: Fix 2nd UCC entry in mpc832x_mds.dts [POWERPC] 83xx: mpc832x mds: Fix board PHY reset code [POWERPC] Fix potential NULL dereference [POWERPC] vdso: Fixes for cache block sizes [POWERPC] pasemi: Don't reset mpic at boot [POWERPC] Fix kmalloc alignment on non-coherent DMA platforms [POWERPC] Fix build failure on legacy iSeries [POWERPC] 4xx: Use virtual PVR value to init FPU on arch/ppc 440EP [POWERPC] 4xx: UIC add mask_ack callback ... commit 0f13864e5b24d9cbe18d125d41bfa4b726a82e40 Author: Karsten Keil Date: Thu Nov 22 12:43:13 2007 +0100 isdn: avoid copying overly-long strings Addresses http://bugzilla.kernel.org/show_bug.cgi?id=9416 Signed-off-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 552d2f841e3f0f45eac86ff93e230db0b0a67a99 Merge: 09cfd92... b1e3afa... Author: Linus Torvalds Date: Mon Nov 26 19:05:19 2007 -0800 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] vpe: Add missing "space" [MIPS] Compliment va_start() with va_end(). [MIPS] IP22: Fix broken eeprom access by using __raw_readl/__raw_writel [MIPS] IP22: Fix broken EISA interrupt setup by switching to generic i8259 [MIPS] 64-bit Sibyte kernels need DMA32. [MIPS] Only build r4k clocksource for systems that work ok with it. [MIPS] Handle R4000/R4400 mfc0 from count register. [MIPS] Fix possible hang in LL/SC futex loops. [MIPS] Fix context DSP context / TLS pointer switching bug for new threads. [MIPS] IP32: More interrupt renumbering fixes. [MIPS] time: MIPSsim's plat_time_init doesn't need to be irq safe. [MIPS] time: Fix negated condition in cevt-r4k driver. [MIPS] Fix pcspeaker build. commit 09cfd929860532f95c9944d39abbb043b8082f36 Merge: 8c6531f... 7cb41c6... Author: Linus Torvalds Date: Mon Nov 26 19:04:24 2007 -0800 Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa: [ALSA] version 1.0.15 [ALSA] emu10k1 - Check value ranges in ctl callbacks [ALSA] emu10k1: Add mixer controls parameter checking. [ALSA] fix private data pointer calculation in CS4270 driver [ALSA] portman2x4 - Fix probe error [ALSA] ca0106 - Fix write proc assignment [ALSA] s3c2443-ac97: compilation fix [ALSA] hda-codec - Revert volume knob controls in STAC codecs [ALSA] ca0106 - Check value range in ctl callbacks [ALSA] hda-codec - Check PINCAP only for PIN widgets [ALSA] mpu401: fix recursive locking in timer [ALSA] cmipci: fix FLINKON/OFF bits [ALSA] hda-codec - Disable shared stream on AD1986A commit 8a8037ac9dbe4eb20ce50aa20244faf77444f4a3 Author: chas williams Date: Tue Nov 27 11:03:16 2007 +0800 [ATM]: [he] initialize lock and tasklet earlier if you are lucky (unlucky?) enough to have shared interrupts, the interrupt handler can be called before the tasklet and lock are ready for use. Signed-off-by: chas williams Signed-off-by: Herbert Xu commit 8c6531f7a99f29ba8817ffb12cc9ecf190049bd6 Author: Andreas Herrmann Date: Mon Nov 19 23:58:57 2007 +0100 x86: correctly set UTS_MACHINE for "make ARCH=x86" For a kernel built with "make ARCH=x86" the following system information is displayed when running the new kernel $ uname -m x86 On some i386 systems (e.g. K7) we even have the following information $ uname -m x66 This is weird. The usual information for "uname -m" should be "x86_64" on 64-bit and "i386" or "i686" on 32-bit. This patch fixes the issue by setting UTS_MACHINE to "i386" for 32-bit kernel builds and to "x86_64" for 64-bit kernel builds. I.e., "x86" won't be used for UTS_MACHINE anymore. Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Acked-by: Sam Ravnborg Signed-off-by: Andreas Herrmann Signed-off-by: Linus Torvalds commit 02fe494619d525ea803ab1f4f671186dc8a52f7a Author: Chuck Lever Date: Mon Nov 12 12:17:03 2007 -0500 NFS: Clean up new multi-segment direct I/O changes Simplify calling sequence of nfs_direct_{read,write}_schedule(), and rename them to reflect their new role. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit b9148c6b80d802dbc2a7530b29915a80432e50c7 Author: Chuck Lever Date: Mon Nov 12 12:16:58 2007 -0500 NFS: Ensure we return zero if applications attempt to write zero bytes A zero byte count direct write request should be a successful no-op, not an error. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit c216fd708e1a97431925ecffd6d1896cff61df0a Author: Chuck Lever Date: Mon Nov 12 12:16:52 2007 -0500 NFS: Support multiple segment iovecs in the NFS direct I/O path Allow applications to perform asynchronous scatter-gather direct I/O to NFS files. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 19f737879cc623c3aa73e655465faa3bff121768 Author: Chuck Lever Date: Mon Nov 12 12:16:47 2007 -0500 NFS: Introduce iovec I/O helpers to fs/nfs/direct.c Add helpers that iterate over multi-segment iovecs. These will be used to support multi-segment scatter/gather direct I/O in a later patch. Signed-off-by: Chuck Lever Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 014313a9d66272ed37b9ebd64c3f30b596a4c8e1 Author: Joe Perches Date: Mon Nov 19 17:53:43 2007 -0800 SUNRPC: Add missing "space" to net/sunrpc/auth_gss.c Signed-off-by: Joe Perches Signed-off-by: Trond Myklebust commit 483066d62ec583fb6379377a9bfa8d5645b91c75 Author: Adrian Bunk Date: Wed Oct 24 18:24:02 2007 +0200 SUNRPC: make sunrpc/xprtsock.c:xs_setup_{udp,tcp}() static xs_setup_{udp,tcp}() can now become static. Signed-off-by: Adrian Bunk Signed-off-by: Trond Myklebust commit 4c30d56edcaaa0446370189e8ab5c5393dc20ca3 Author: Adrian Bunk Date: Wed Nov 21 15:04:31 2007 -0800 NFS: fs/nfs/dir.c should #include "internal.h" Every file should include the headers containing the prototypes for its global functions (in this case nfs_access_cache_shrinker()). Signed-off-by: Adrian Bunk Cc: Trond Myklebust Cc: "J. Bruce Fields" Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit 5334eb13d455dd26b7064980b118e3c957929701 Author: Adrian Bunk Date: Wed Nov 21 15:04:31 2007 -0800 NFS: make nfs_wb_page_priority() static nfs_wb_page_priority() can now become static. Signed-off-by: Adrian Bunk Cc: Trond Myklebust Cc: "J. Bruce Fields" Signed-off-by: Andrew Morton Signed-off-by: Trond Myklebust commit f16c960332b125491178fc2da7ea7893b0d65d05 Author: Russell King Date: Fri Nov 16 22:13:24 2007 +0000 NFS: mount failure causes bad page state While testing a kernel based upon ecd744eec3aa8bbc949ec04ed3fbf7ecb2958a0e (with wrong boot arguments), I got the following bad page state entry while NFS was trying to mount it's rootfs: IP-Config: Complete: device=eth0, addr=192.168.1.101, mask=255.255.255.0, gw=255.255.255.255, host=192.168.1.101, domain=, nis-domain=(none), bootserver=192.168.1.100, rootserver=192.168.1.100, rootpath= Looking up port of RPC 100003/2 on 192.168.1.100 rpcbind: server 192.168.1.100 not responding, timed out Root-NFS: Unable to get nfsd port number from server, using default Looking up port of RPC 100005/1 on 192.168.1.100 rpcbind: server 192.168.1.100 not responding, timed out Root-NFS: Unable to get mountd port number from server, using default mount: server 192.168.1.100 not responding, timed out Root-NFS: Server returned error -5 while mounting /nfs/rootfs/ VFS: Unable to mount root fs via NFS, trying floppy. Bad page state in process 'swapper' page:c02b1260 flags:0x00000400 mapping:00000000 mapcount:0 count:0 Trying to fix it up, but a reboot is needed Backtrace: [] (dump_stack+0x0/0x14) from [] (bad_page+0x70/0xac) [] (bad_page+0x0/0xac) from [] (free_hot_cold_page+0x80/0x178) [] (free_hot_cold_page+0x0/0x178) from [] (free_hot_page+0x14/0x18) [] (free_hot_page+0x0/0x18) from [] (put_page+0xf8/0x154) [] (put_page+0x0/0x154) from [] (kfree+0xc8/0xd0) [] (kfree+0x0/0xd0) from [] (nfs_get_sb+0x230/0x710) [] (nfs_get_sb+0x0/0x710) from [] (vfs_kern_mount+0x58/0xac)[] (vfs_kern_mount+0x0/0xac) from [] (do_kern_mount+0x38/0xf4) [] (do_kern_mount+0x0/0xf4) from [] (do_mount+0x1e8/0x614) ... This seems to be caused by use of an uninitialised structure due to NULL options being passed to nfs_validate_mount_data(). Ensure that the parsed mount data is always initialised. Signed-off-by: Russell King (Trond: added fix for the same bug in nfs4_validate_mount_data()). Signed-off-by: Trond Myklebust commit cfcb43ff7ce28f347a39e1a7519e01850b588718 Author: James Lentini Date: Mon Nov 26 12:42:44 2007 -0500 SUNRPC: remove NFS/RDMA client's binary sysctls Support for binary sysctls is being deprecated in 2.6.24. Since there are no applications using the NFS/RDMA client's binary sysctls, it makes sense to remove them. The patch below does this while leaving the /proc/sys interface unchanged. Please consider this for 2.6.24. Signed-off-by: James Lentini Signed-off-by: Trond Myklebust commit f7b9329e556a8bdb9e07292cddbbe484c7a2b8c5 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: bump version of kernel/sched_debug.c bump version of kernel/sched_debug.c and remove CFS version information from it. Signed-off-by: Ingo Molnar commit 722aab0c3bbd7648d66790515c14d95d10a15bf3 Author: Zou Nan hai Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix minimum granularity tunings increase the default minimum granularity some more - this gives us more performance in aim7 benchmarks. also correct some comments: we scale with ilog(ncpus) + 1. Signed-off-by: Zou Nan hai Signed-off-by: Ingo Molnar commit 58e1010da3c15e7bdf426b0a3d4b13dba1b7d055 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix RLIMIT_CPU comment Devan Lippman noticed that the RLIMIT_CPU comment in resource.h is incorrect: the field is in seconds, not msecs. We used msecs in earlier versions of the patch but that got changed. Found-by: Devan Lippman Signed-off-by: Ingo Molnar commit bcbe4a076609e15ea84cbebd9cd8f317ed70ce92 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix kernel/acct.c comment fix kernel/acct.c comment. noticed by Lin Tan. Comment suggested by Olaf Kirch. also see: http://bugzilla.kernel.org/show_bug.cgi?id=8220 Reported-by: tammy000@gmail.com Signed-off-by: Ingo Molnar commit 08e4570a4a393bcc241f78dfc444cb0b07995fc0 Author: Ingo Molnar Date: Mon Nov 26 21:21:49 2007 +0100 sched: fix prev_stime calculation Srivatsa Vaddagiri noticed occasionally incorrect CPU usage values in top and tracked it down to stime going below 0 in task_stime(). Negative values are possible there due to the sampled nature of stime/utime. Fix suggested by Balbir Singh. Signed-off-by: Ingo Molnar Tested-by: Srivatsa Vaddagiri Reviewed-by: Balbir Singh commit 5e8869bb699d50be5c0733edfc71cfcd5b43e10a Author: Pavel Emelyanov Date: Mon Nov 26 21:21:49 2007 +0100 sched: don't forget to unlock uids_mutex on error paths The commit commit 5cb350baf580017da38199625b7365b1763d7180 Author: Dhaval Giani Date: Mon Oct 15 17:00:14 2007 +0200 sched: group scheduling, sysfs tunables introduced the uids_mutex and the helpers to lock/unlock it. Unfortunately, the error paths of alloc_uid() were not patched to unlock it. Signed-off-by: Pavel Emelyanov Acked-by: Dhaval Giani Signed-off-by: Ingo Molnar commit f44d9efd3510776216938fef84adc99cc0e12412 Author: Ingo Molnar Date: Mon Nov 26 20:42:20 2007 +0100 x86: fix APIC related bootup crash on Athlon XP CPUs warmbloodedcreature@gmail.com reported that an APIC-enabled Asus a7v8x-x with an Athlon XP reboots early in the bootup: http://bugzilla.kernel.org/show_bug.cgi?id=8723 after a long marathon of spontaneous-reboot debugging, it turns out to be caused by sync_Arb_ids(). AMD CPUs never really needed this sequence anyway, so just return early if we meet an AMD CPU. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 52bfb36050c8529d9031d2c2513b281a360922ec Author: John Stultz Date: Mon Nov 26 20:42:19 2007 +0100 time: add ADJ_OFFSET_SS_READ Michael Kerrisk reported that a long standing bug in the adjtimex() system call causes glibc's adjtime(3) function to deliver the wrong results if 'delta' is NULL. add the ADJ_OFFSET_SS_READ API detail, which will be used by glibc to fix this API compatibility bug. Also see: http://bugzilla.kernel.org/show_bug.cgi?id=6761 [ mingo@elte.hu: added patch description and made it backwards compatible ] NOTE: the new flag is defined 0xa001 so that it returns -EINVAL on older kernels - this way glibc can use it safely. Suggested by Ulrich Drepper. Acked-by: Ulrich Drepper Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 8232fd625217dc641ed05dd238a8bb5c82828082 Author: Theodore Ts'o Date: Mon Nov 26 20:42:19 2007 +0100 x86: export the symbol empty_zero_page on the 32-bit x86 architecture The latest KVM driver wants to use the empty_zero_page symbol, and it's not exported in 32-bit x86 (although it is exported by x86_64, s390, and uml architectures). Signed-off-by: "Theodore Ts'o" Cc: tglx@linutronix.de Cc: linux-kernel@vger.kernel.com Cc: kvm-devel@lists.sourceforge.net Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 8645419cdb588a743060175c1efbe23f6e44b29b Author: Andrew Morton Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix kprobes_64.c inlining borkage fix: arch/x86/kernel/kprobes_64.c: In function 'set_current_kprobe': arch/x86/kernel/kprobes_64.c:152: sorry, unimplemented: inlining failed in call to 'is_IF_modifier': recursive inlining arch/x86/kernel/kprobes_64.c:166: sorry, unimplemented: called from here Cc: Thomas Gleixner Signed-off-by: Andrew Morton Cc: mingo@elte.hu Cc: akpm@linux-foundation.org Cc: tglx@linutronix.de Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit c82bc5ad5411ccd61d26355088e2f5c9e95ef54b Author: Michal Schmidt Date: Mon Nov 26 20:42:19 2007 +0100 pci: use pci=bfsort for HP DL385 G2, DL585 G2 HP ProLiant systems DL385 G2 and DL585 G2 need pci=bfsort to enumerate PCI devices in the expected order. Matt sayeth: biosdevname is a userspace app I wrote to help solve this so we don't need to patch the kernel for future systems. It's not integrated into any distributions properly yet, but is included in openSUSE 10.3 and Fedora 8 for people who want to download and install it there. It acts as a udev helper. For the time being, patching the kernel is necessary. I really hope biosdevname eliminates that need in future distributions. http://linux.dell.com/biosdevname/ Signed-off-by: Michal Schmidt Acked-by: Andy Gospodarek Cc: mingo@elte.hu Cc: andy@greyhouse.net Cc: john.cagle@hp.com Cc: Matt Domsch Cc: Greg KH Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 43517854da512ae7daf15e7044e040edb15b8b23 Author: Andreas Herrmann Date: Mon Nov 26 20:42:19 2007 +0100 x86: correctly set UTS_MACHINE for "make ARCH=x86" x86: correctly set UTS_MACHINE for "make ARCH=x86" For a kernel built with "make ARCH=x86" the following system information is displayed when running the new kernel $ uname -m x86 On some i386 systems (e.g. K7) we even have the following information $ uname -m x66 This is weird. The usual information for "uname -m" should be "x86_64" on 64-bit and "i386" or "i686" on 32-bit. This patch fixes the issue by setting UTS_MACHINE to "i386" for 32-bit kernel builds and to "x86_64" for 64-bit kernel builds. I.e., "x86" won't be used for UTS_MACHINE anymore. Acked-by: Sam Ravnborg Signed-off-by: Andreas Herrmann Cc: "H. Peter Anvin" Cc: Roman Zippel Cc: Andrew Morton Cc: Sam Ravnborg Cc: Linus Torvalds Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 000f4a9e718a665fd706500199a3f0c11fea30c1 Author: Peter Zijlstra Date: Mon Nov 26 20:42:19 2007 +0100 lockdep: annotate do_debug() trap handler Ensure the hardirq state is consistent before using locks. Use the rare trace_hardirqs_fixup() because the trap can happen in any context. resolves this rare lockdep warning: WARNING: at kernel/lockdep.c:2658 check_flags() [] check_flags+0x90/0x140 [] lock_release+0x4b/0x1d0 [] notifier_call_chain+0x2a/0x47 [] __atomic_notifier_call_chain+0x64/0x6d [] __atomic_notifier_call_chain+0x0/0x6d [] atomic_notifier_call_chain+0x17/0x1a [] notify_die+0x30/0x34 [] do_debug+0x3e/0xd4 [] debug_stack_correct+0x27/0x2c [] tcp_rcv_established+0x1/0x620 [] tcp_v4_do_rcv+0x2b/0x313 [] tcp_v4_rcv+0x467/0x85d [] _spin_lock_nested+0x27/0x32 [] tcp_v4_rcv+0x7fe/0x85d [] tcp_v4_rcv+0x3bf/0x85d [] ip_local_deliver_finish+0x11b/0x1b0 [] ip_local_deliver_finish+0x2e/0x1b0 [] ip_rcv_finish+0x27b/0x29a [] netif_receive_skb+0xfb/0x2a6 [] ip_rcv+0x0/0x1fb [] netif_receive_skb+0x26a/0x2a6 [] netif_receive_skb+0xfb/0x2a6 [] process_backlog+0x7f/0xc6 [] net_rx_action+0xb9/0x1ac [] net_rx_action+0x47/0x1ac [] trace_hardirqs_on+0x118/0x16b [] __do_softirq+0x49/0xa2 [] do_softirq+0x60/0xdd [] _spin_unlock_irq+0x20/0x2c [] restore_nocheck+0x12/0x15 [] handle_fasteoi_irq+0x0/0x9b [] do_IRQ+0x94/0xaa [] _spin_unlock_irq+0x20/0x2c [] common_interrupt+0x2e/0x34 [] native_safe_halt+0x2/0x3 [] default_idle+0x44/0x65 [] cpu_idle+0x42/0x50 [] start_kernel+0x26b/0x270 [] unknown_bootoption+0x0/0x196 ======================= irq event stamp: 559190 hardirqs last enabled at (559190): [] kprobe_exceptions_notify+0x299/0x305 hardirqs last disabled at (559189): [] do_int3+0x1d/0x95 softirqs last enabled at (559172): [] do_softirq+0x60/0xdd softirqs last disabled at (559181): [] do_softirq+0x60/0xdd Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit bc84cf17b50ca5b49bec0a5fef63c58c1526d46b Author: Ingo Molnar Date: Mon Nov 26 20:42:19 2007 +0100 x86: turn off iommu merge by default revert this commit for now: commit 948062683004d13ca21c8c05ac052d387978a449 Author: Andi Kleen Date: Fri Oct 19 20:35:03 2007 +0200 x86: enable iommu_merge by default it's causing regressions: http://bugzilla.kernel.org/show_bug.cgi?id=9412 Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit aafab10d3f6b68150ec9fe75b1462764fd45b728 Author: Thomas Gleixner Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix ACPI compile for LOCAL_APIC=n ACPI processor idle code references local_apic_timer_c2_ok, which is not available when LOCAL_APIC is disabled. Define local_apic_timer_c2_ok as a constant, when LOCAL_APIC=n Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 57c351de715458f8fbee1e92e8cc65ddc00da04c Author: Arjan van de Ven Date: Mon Nov 26 20:42:19 2007 +0100 x86: printk kernel version in WARN_ON and other dump_stack users today, all oopses contain a version number of the kernel, which is nice because the people who actually do bother to read the oops get this vital bit of information always without having to ask the reporter in another round trip. However, WARN_ON() and many other dump_stack() users right now lack this information; the patch below adds this. This information is essential for getting people to use their time effectively when looking at these things; in addition, it's essential for tools that try to collect statistics about defects. Please consider, since its so simple and important for long term kernel quality processes. The code is identical between 32/64 bit; a lot of this code should be unified over time, the patch keeps the identical-ness intact. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c1c306344669ca40255e36192b101060ffbb1271 Author: Alexey Starikovskiy Date: Mon Nov 26 20:42:19 2007 +0100 ACPI: Set max_cstate to 1 for early Opterons. AMD Opteron processors before CG revision don't like C-states > 1. This solves the long standing bugzilla #5303 and probably some more on affected machines: http://bugzilla.kernel.org/show_bug.cgi?id=5303 [ tglx@linutronix.de: reworked the patch so it does not wreck ia64 ] Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit d4d25deca49ec2527a634557bf5a6cf449f85deb Author: Maciej W. Rozycki Date: Mon Nov 26 20:42:19 2007 +0100 x86: fix NMI watchdog & 'stopped time' problem More than 3 years ago Niclas Gustafsson reported a 'stopped time' problem: > Watching the /proc/interrupts with 10s apart after the "stop". > > [root@s151 root]# more /proc/interrupts > CPU0 > 0: 66413955 local-APIC-edge timer [...] > LOC: 67355837 > ERR: 0 > MIS: 0 > [root@s151 root]# more /proc/interrupts > CPU0 > 0: 66413955 local-APIC-edge timer [...] > LOC: 67379568 > ERR: 0 > MIS: 0 This may be because buggy SMM firmware messes with the 8259A (configured for a transparent mode -- yes that rare "local-APIC-edge" mode is tricky ;-) ) insanely. this should resolve: http://bugzilla.kernel.org/show_bug.cgi?id=2544 http://bugzilla.kernel.org/show_bug.cgi?id=6296 Patch-dusted-off-by: Ingo Molnar Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit b1e3afa001db8845eb60981f6ab925503ed94e53 Author: Joe Perches Date: Mon Nov 19 17:47:54 2007 -0800 [MIPS] vpe: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: Ralf Baechle commit 8142294dda12d5fd7615eed7986ad0d276793c03 Author: Richard Knutsson Date: Sat Nov 24 22:22:19 2007 +0100 [MIPS] Compliment va_start() with va_end(). Signed-off-by: Richard Knutsson Signed-off-by: Ralf Baechle commit 5b3af8f19fd3c61369da73476737fea058f1fccd Author: Thomas Bogendoerfer Date: Fri Nov 23 20:40:15 2007 +0100 [MIPS] IP22: Fix broken eeprom access by using __raw_readl/__raw_writel Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 68de4803726224a7cfe09c8052f0ce5e532c6847 Author: Thomas Bogendoerfer Date: Fri Nov 23 20:34:16 2007 +0100 [MIPS] IP22: Fix broken EISA interrupt setup by switching to generic i8259 Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit cce335ae47e231398269fb05fa48e0e9cbf289e0 Author: Ralf Baechle Date: Sat Nov 3 02:05:43 2007 +0000 [MIPS] 64-bit Sibyte kernels need DMA32. Sibyte SOCs only have 32-bit PCI. Due to the sparse use of the address space only the first 1GB of memory is mapped at physical addresses below 1GB. If a system has more than 1GB of memory 32-bit DMA will not be able to reach all of it. For now this patch is good enough to keep Sibyte users happy but it seems eventually something like swiotlb will be needed for Sibyte. Signed-off-by: Ralf Baechle commit 940f6b48a130e0a33cb8bd397dd0e277166470ad Author: Ralf Baechle Date: Sat Nov 24 22:33:28 2007 +0000 [MIPS] Only build r4k clocksource for systems that work ok with it. In particular as-is it's not suited for multicore and mutiprocessors systems where there is on guarantee that the counter are synchronized or running from the same clock at all. This broke Sibyte and probably others since the "[MIPS] Handle R4000/R4400 mfc0 from count register." commit. Signed-off-by: Ralf Baechle commit 5aa85c9fc49a6ce44dc10a42e2011bbde9dc445a Author: Ralf Baechle Date: Wed Nov 21 16:39:44 2007 +0000 [MIPS] Handle R4000/R4400 mfc0 from count register. The R4000 and R4400 have an errata where if the cp0 count register is read in the exact moment when it matches the compare register no interrupt will be generated. This bug may be triggered if the cp0 count register is being used as clocksource and the compare interrupt as clockevent. So a simple workaround is to avoid using the compare for both facilities on the affected CPUs. This is different from the workaround suggested in the old errata documents; at some opportunity probably the official version should be implemented and tested. Another thing to find out is which processor versions exactly are affected. I only have errata documents upto R4400 V3.0 available so for the moment the code treats all R4000 and R4400 as broken. This is potencially a problem for some machines that have no other decent clocksource available; this workaround will cause them to fall back to another clocksource, worst case the "jiffies" source. commit 0f67e90e1caea4a0a14d2c60102547bce29f7f08 Author: Ralf Baechle Date: Tue Nov 20 10:44:18 2007 +0000 [MIPS] Fix possible hang in LL/SC futex loops. The LL / SC loops in __futex_atomic_op() have the usual fixups necessary for memory acccesses to userspace from kernel space installed: __asm__ __volatile__( " .set push \n" " .set noat \n" " .set mips3 \n" "1: ll %1, %4 # __futex_atomic_op \n" " .set mips0 \n" " " insn " \n" " .set mips3 \n" "2: sc $1, %2 \n" " beqz $1, 1b \n" __WEAK_LLSC_MB "3: \n" " .set pop \n" " .set mips0 \n" " .section .fixup,\"ax\" \n" "4: li %0, %6 \n" " j 2b \n" <----- " .previous \n" " .section __ex_table,\"a\" \n" " "__UA_ADDR "\t1b, 4b \n" " "__UA_ADDR "\t2b, 4b \n" " .previous \n" : "=r" (ret), "=&r" (oldval), "=R" (*uaddr) : "0" (0), "R" (*uaddr), "Jr" (oparg), "i" (-EFAULT) : "memory"); The branch at the end of the fixup code, it goes back to the SC instruction, no matter if the fault was first taken by the LL or SC instruction resulting in an endless loop which will only terminate if the address become valid again due to another thread setting up an accessible mapping and the CPU happens to execute the SC instruction successfully which due to the preceeding ERET instruction of the fault handler would only happen if UNPREDICTABLE instruction behaviour of the SC instruction without a preceeding LL happens to favor that outcome. But normally processes are nice, pass valid arguments and we were just getting away with this. Thanks to Kaz Kylheku for providing the original report and a test case. Signed-off-by: Ralf Baechle commit 07500b0d855b7f3f47ca263b21b6397d743d45d2 Author: Ralf Baechle Date: Tue Oct 30 17:25:26 2007 +0000 [MIPS] Fix context DSP context / TLS pointer switching bug for new threads. A new born thread starts execution not in schedule but rather in ret_from_fork which results in it bypassing the part of the code to load a new context written in C which are the DSP context and the userlocal register which Linux uses for the TLS pointer. Frequently we were just getting away with this bug for a number of reasons: o Real world application scenarios are very unlikely to use clone or fork in blocks of DSP code. o Linux by default runs the child process right after the fork, so the child by luck will find all the right context in the DSP and userlocal registers. o So far the rdhwr instruction was emulated on all hardware so userlocal wasn't getting referenced at all and the emulation wasn't suffering from the issue since it gets it's value straight from the thread's thread_info. Fixed by moving the code to load the context from switch_to() to finish_arch_switch which will be called by newborn and old threads. Signed-off-by: Ralf Baechle commit 98ce472181e760a552314850c238b14bbf3f04ec Author: Ralf Baechle Date: Tue Oct 30 15:43:44 2007 +0000 [MIPS] IP32: More interrupt renumbering fixes. Signed-off-by: Ralf Baechle commit 526a6770692477ff258621b1b8838cce9304f8e4 Author: Ralf Baechle Date: Tue Oct 30 15:39:18 2007 +0000 [MIPS] time: MIPSsim's plat_time_init doesn't need to be irq safe. It's running early during the bootup process so interrupts are still off. Signed-off-by: Ralf Baechle commit aea6863944efdf42b7de96e71545e0ce4c317a1f Author: Ralf Baechle Date: Tue Oct 30 02:21:08 2007 +0000 [MIPS] time: Fix negated condition in cevt-r4k driver. Signed-off-by: Ralf Baechle commit cfb6f26035b17d5d280ce4a6ceb041438643ba63 Author: Ralf Baechle Date: Thu Nov 15 23:42:11 2007 +0000 [MIPS] Fix pcspeaker build. Signed-off-by: Ralf Baechle commit e190222d04cb1119c62876ac87cf9b9403ba3bd5 Author: Tejun Heo Date: Mon Nov 26 20:58:02 2007 +0900 libata: bump transfer chunk size if it's odd None of the drives I have follows what the standard says about transfer chunk size. Of the four SATA and six PATA ATAPI devices tested, four ignore transfer chunk size completely and the ones which honor it don't behave according to the spec when it's odd. According to the spec, transfer chunk size can be odd if the amount of data to transfer equals or is smaller than the chunk size and the device can indicate the same odd number and transfer the whole thing at one go with a pad byte appended. However, in reality, none of the drives I have does that. They all indicate and transfer even number of bytes one byte shorter than the chunk size first; then indicate and transfer two bytes, which is clearly out of spec. In addition to unnecessary second PIO data phase, this also creates a weird problem when combined with SATA controllers which perform PIO via DMA. Some of these controllers use actualy number of bytes received to update DMA pointer so chunks which are sized 4n + 2 makes DMA pointer off by two bytes. This causes data corruption and buffer overruns. This patch rounds nbytes up to the nearest even number such that ATAPI devices don't split data transfer for the last odd byte. This shouldn't confuse controllers which depend on transfer chunk size as devices will report the rounded-up number, actually transfer that much and padding buffer is there to receive them. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit dc86f6d4183c79a08fa01c08dd2191895c0c7eb0 Author: sonic zhang Date: Mon Nov 26 17:50:56 2007 +0800 libata: Return proper ATA INT status in pata_bf54x driver INT status can be OR. Signed-off-by: Sonic Zhang Signed-off-by: Jeff Garzik commit 3660019e5f96fd9a8b7d4214a96523c0bf7b676d Author: Adrian Bunk Date: Mon Nov 26 23:17:53 2007 +0800 [IPV4]: Remove bogus ifdef mess in arp_process The #ifdef's in arp_process() were not only a mess, they were also wrong in the CONFIG_NET_ETHERNET=n and (CONFIG_NETDEV_1000=y or CONFIG_NETDEV_10000=y) cases. Since they are not required this patch removes them. Also removed are some #ifdef's around #include's that caused compile errors after this change. Signed-off-by: Adrian Bunk Signed-off-by: Herbert Xu commit 2d4baff8da06f424a6fca10e26434c4926a7c3df Author: Herbert Xu Date: Mon Nov 26 23:11:19 2007 +0800 [SKBUFF]: Free old skb properly in skb_morph The skb_morph function only freed the data part of the dst skb, but leaked the auxiliary data such as the netfilter fields. This patch fixes this by moving the relevant parts from __kfree_skb to skb_release_all and calling it in skb_morph. It also makes kfree_skbmem static since it's no longer called anywhere else and it now no longer does skb_release_data. Thanks to Yasuyuki KOZAKAI for finding this problem and posting a patch for it. Signed-off-by: Herbert Xu commit 218ad12f42e0b6207105cde8fd13017d1ed449e4 Author: Pavel Emelyanov Date: Mon Nov 26 20:23:31 2007 +0800 [IPV4]: Fix memory leak in inet_hashtables.h when NUMA is on The inet_ehash_locks_alloc() looks like this: #ifdef CONFIG_NUMA if (size > PAGE_SIZE) x = vmalloc(...); else #endif x = kmalloc(...); Unlike it, the inet_ehash_locks_alloc() looks like this: #ifdef CONFIG_NUMA if (size > PAGE_SIZE) vfree(x); else #else kfree(x); #endif The error is obvious - if the NUMA is on and the size is less than the PAGE_SIZE we leak the pointer (kfree is inside the #else branch). Compiler doesn't warn us because after the kfree(x) there's a "x = NULL" assignment, so here's another (minor?) bug: we don't set x to NULL under certain circumstances. Boring explanation, I know... Patch explains it better. Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 8053fc3de720e1027d690f892ff7d7c1737fdd9d Author: Herbert Xu Date: Mon Nov 26 19:07:34 2007 +0800 [IPSEC]: Temporarily remove locks around copying of non-atomic fields The change 050f009e16f908932070313c1745d09dc69fd62b [IPSEC]: Lock state when copying non-atomic fields to user-space caused a regression. Ingo Molnar reports that it causes a potential dead-lock found by the lock validator as it tries to take x->lock within xfrm_state_lock while numerous other sites take the locks in opposite order. For 2.6.24, the best fix is to simply remove the added locks as that puts us back in the same state as we've been in for years. For later kernels a proper fix would be to reverse the locking order for every xfrm state user such that if x->lock is taken together with xfrm_state_lock then it is to be taken within it. Signed-off-by: Herbert Xu commit 2b83457bded19cb57c5bdd59ebe16fe1a919c088 Author: Steve French Date: Sun Nov 25 10:01:00 2007 +0000 [CIFS] Fix check after use error in ACL code Spotted by the coverity scanner. CC: Adrian Bunk Signed-off-by: Steve French commit 058250a0d5886b4d96a195ecc7e3a75e2df5e4b1 Merge: cea2180... 2ffbb83... Author: Steve French Date: Sun Nov 25 09:53:27 2007 +0000 Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6 commit a316b79c3306c59176d7ae04e4aad12374dfed37 Author: Erez Zilber Date: Wed Nov 21 13:11:37 2007 +0200 IB/iser: Add missing counter increment in iser_data_buf_aligned_len() While adding sg chaining support to iSER, a "for" loop was replaced with a "for_each_sg" loop. The "for" loop included the incrementation of 2 variables. Only one of them is incremented in the current "for_each_sg" loop. This caused iSER to think that all data is unaligned, and all data was copied to aligned buffers. This patch increments the missing counter inside the "for_each_sg" loop whenever necessary. Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 3fe2ed344d4b36e7489b1d0c7cf677312b0bf870 Author: Joachim Fenkes Date: Thu Nov 22 12:26:26 2007 +0200 IB/ehca: Fix static rate regression Wrong choice of port number caused modify_qp() to fail -- fixed. Signed-off-by: Joachim Fenkes Signed-off-by: Roland Dreier commit 2541d0ca7e4645d7e2d295eb241c318a7f875f3a Author: Jeff Garzik Date: Fri Nov 23 21:08:42 2007 -0500 pata_ali: trim trailing whitespace (fix checkpatch complaints) Signed-off-by: Jeff Garzik commit 91e33d31096a2b518ae5744c345af15c1ff06fd5 Author: Alan Cox Date: Mon Nov 19 14:41:05 2007 +0000 pata_isapnp: Polled devices If a card has no IRQ then pass no interrupt handler but allow polled usage. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 22d5c760c8bc2f146d5c31f69de7f52efd118992 Author: Alan Cox Date: Mon Nov 19 14:39:13 2007 +0000 pata_hpt37x: Fix cable detect bug spotted by Sergei Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 498222f323ab11331dc5cfedb97752477f0fe42a Author: Alan Cox Date: Mon Nov 19 14:37:58 2007 +0000 pata_ali: Lots of problems still showing up with small ATAPI DMA Hopefully there is a better long term solution but for now lets favour reliability. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 8f59a13accd78e9759548b40aa2a053938a01ec7 Author: Alan Cox Date: Mon Nov 19 14:36:28 2007 +0000 pata_ali: Add Mitac 8317 and derivatives Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 92c52c52e123e6fabb85392b16bcdbdb64cfdc1c Author: Alan Cox Date: Mon Nov 19 14:30:16 2007 +0000 libata-core: List more documentation sources for reference And next time I'll be able to find the ata tape spec easily... Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit c47a631f8bfad08a6001f8dd479004caa5059a75 Author: Alan Cox Date: Mon Nov 19 14:28:28 2007 +0000 ata_piix: Invalid use of writel/readl with iomap Should use ioread* as discussed previously Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 93e2618e0cee1f5b5a4cfc1b7521939318dbf5bb Author: Tejun Heo Date: Thu Nov 22 18:46:57 2007 +0900 sata_sil24: fix sg table sizing sil24 unnecessarily used LIBATA_MAX_PRD and ATAPI sg table was short by one entry which might cause very obscure problems. This patch updates sg table sizing such that * One full page is used for PRB + sg table. On 4k page, this results in 253 sg's. * Make ATAPI sg block properly sized. * Make build fail if command block size doesn't equal PAGE_SIZE. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 0706efd61edfcf958c2c19669aa65c2180ec3ba0 Author: Tejun Heo Date: Mon Nov 19 18:06:11 2007 +0900 pata_jmicron: fix disabled port handling in jmicron_pre_reset() There are two bugs in disabled port handling. * test in PORT_PATA0 is reversed * ->prereset should return -ENOENT for disabled ports not 0 The first bug makes the PATA channel considered disabled but the second bug saves the day by returning 0. The net result is that cable is always left at ATA_CBL_UNKNOWN. This results in false 80c configuration and thus transfer errors. This patch fixes both bugs. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit dd05c199cd02ffd2ac49eb29677f1468910996a8 Author: Sergei Shtylyov Date: Fri Nov 16 19:50:04 2007 +0300 pata_sil680: kill bogus reset code (take 2) Since writing to two reserved bits ain't much of a housekeeping, I think it's time we get rid of the custom error handler in this driver. ;-) Signed-off-by: Sergei Shtylyov Signed-off-by: Jeff Garzik commit 38cb2419f544ad413c7f7aa8c17fd7377610cdd8 Author: Herbert Xu Date: Sat Nov 17 22:09:38 2007 +0800 [CRYPTO] api: Fix potential race in crypto_remove_spawn As it is crypto_remove_spawn may try to unregister an instance which is yet to be registered. This patch fixes this by checking whether the instance has been registered before attempting to remove it. It also removes a bogus cra_destroy check in crypto_register_instance as 1) it's outside the mutex; 2) we have a check in __crypto_register_alg already. Signed-off-by: Herbert Xu commit f347c4facfee3d11eb9cd1c070ab471a8fb7401e Author: Herbert Xu Date: Thu Oct 11 16:45:17 2007 +0800 [CRYPTO] authenc: Move initialisations up to shut up gcc It seems that newer versions of gcc have regressed in their abilities to analyse initialisations. This patch moves the initialisations up to avoid the warnings. Signed-off-by: Herbert Xu commit 7f9c33e515353ea91afc62341161fead19e78567 Author: Ilpo Järvinen Date: Fri Nov 23 19:10:56 2007 +0800 [TCP] MTUprobe: Cleanup send queue check (no need to loop) The original code has striking complexity to perform a query which can be reduced to a very simple compare. FIN seqno may be included to write_seq but it should not make any significant difference here compared to skb->len which was used previously. One won't end up there with SYN still queued. Use of write_seq check guarantees that there's a valid skb in send_head so I removed the extra check. Signed-off-by: Ilpo Järvinen Acked-by: John Heffner Signed-off-by: Herbert Xu commit 91cc17c0e5e5ada156a8d5787a2509d263ea6bbf Author: Ilpo Järvinen Date: Fri Nov 23 19:08:16 2007 +0800 [TCP]: MTUprobe: receiver window & data available checks fixed It seems that the checked range for receiver window check should begin from the first rather than from the last skb that is going to be included to the probe. And that can be achieved without reference to skbs at all, snd_nxt and write_seq provides the correct seqno already. Plus, it SHOULD account packets that are necessary to trigger fast retransmit [RFC4821]. Location of snd_wnd < probe_size/size_needed check is bogus because it will cause the other if() match as well (due to snd_nxt >= snd_una invariant). Removed dead obvious comment. Signed-off-by: Ilpo Järvinen Signed-off-by: Herbert Xu commit 9a876d60a1cc1621708536b7f14e0f02c3e174ff Author: Magnus Damm Date: Fri Nov 23 14:39:55 2007 +0900 sh: include ax88796 in the defconfig for r7785rp This patch adds the ax88796 device driver to the r7785rp defconfig. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 9b145b1be44b9094d2600502744cc986b1cbbcb5 Author: Magnus Damm Date: Fri Nov 23 14:39:39 2007 +0900 sh: include ax88796 in the defconfig for r7780mp This patch adds the ax88796 device driver to the r7780mp defconfig. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit abac3f784f11cf8ccca0fc37ae4f5ff04cc245c4 Author: Magnus Damm Date: Fri Nov 23 14:39:13 2007 +0900 sh: fix R2D-1 CF support This patch fixes CF support for R2D-1 boards. Both R2D-1 and R2D-PLUS are equipped with CF IRQs, but the R2D-1 FPGA version seem to deliver IRQ spikes with certain CF cards during libata probing. This patch enables polling for R2D-1 as a workaround for this broken FGPA logic. R2D-1 CF support was recently introduced by commit: 43f4b8c7578b928892b6f01d374346ae14e5eb70. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 88c07ddec8c5e06aa331470076af27a397fc0993 Author: Gabriel Craciunescu Date: Thu Nov 22 19:43:36 2007 +0800 [MAINTAINERS]: tlan list is subscribers-only Your mail to 'Tlan-devel' with the subject drivers/net/tlan question Is being held until the list moderator can review it for approval. The reason it is being held: Post by non-member to a members-only list Signed-off-by: Gabriel Craciunescu Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 5ba03e82b3dac41bb1c5ca29060aa44b5e44b486 Author: Jiri Slaby Date: Thu Nov 22 19:40:22 2007 +0800 [SUNRPC]: Remove SPIN_LOCK_UNLOCKED SPIN_LOCK_UNLOCKED is deprecated, use DEFINE_SPINLOCK instead Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 5fe4a33430d90243ff93a77ea31e20f7557bca8a Author: Adrian Bunk Date: Thu Nov 22 19:38:25 2007 +0800 [SUNRPC]: Make xprtsock.c:xs_setup_{udp,tcp}() static xs_setup_{udp,tcp}() can now become static. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 435000bebd94aae3a7a50078d142d11683d3b193 Author: Charles Hardin Date: Thu Nov 22 19:35:15 2007 +0800 [PFKEY]: Sending an SADB_GET responds with an SADB_GET From: Charles Hardin Kernel needs to respond to an SADB_GET with the same message type to conform to the RFC 2367 Section 3.1.5 Signed-off-by: Andrew Morton Signed-off-by: Herbert Xu commit 8c92e6b0bf48a1735ddc61ebb08a0bb77c6bfa23 Author: Pavel Emelyanov Date: Thu Nov 22 19:15:56 2007 +0800 [IRDA]: Compilation for CONFIG_INET=n case Found this occasionally. The CONFIG_INET=n is hardly ever set, but if it is the irlan_eth_send_gratuitous_arp() compilation should produce a warning about unused variable in_dev. Too pedantic? :) Signed-off-by: Pavel Emelyanov Signed-off-by: Herbert Xu commit 6a2e391190b17f4fb895bd2d5e8b08c7c8f897a2 Author: Herbert Valerio Riedel Date: Wed Nov 21 14:42:33 2007 -0500 Input: gpio-keys - request and configure GPIOs Currently, gpio_keys.c assumes the GPIOs to be already properly configured; this patch changes gpio-keys to perform explicit calls to gpio_request() and gpio_configure_input(). This matches the behaviour of leds-gpio. Signed-off-by: Herbert Valerio Riedel Signed-off-by: Dmitry Torokhov commit 8bf4215e8a7f7416d7258af211488aabf65863c3 Author: Jiri Kosina Date: Wed Nov 21 14:17:38 2007 -0500 Input: i8042 - add i8042.noloop quirk for MS Virtual Machine When booting under Microsoft Virtual Machine, the noloop quirk is needed, otherwise PS/2 mouse is not properly detected. Reported-by: Lawrence Steeger Signed-off-by: Jiri Kosina Signed-off-by: Dmitry Torokhov commit 3cb93db6e89bdffeae1f001bd87c9e96f9b634df Author: Dmitry Torokhov Date: Wed Nov 21 14:16:38 2007 -0500 Sonypi: use synchronize_irq instead of sycnronize_sched We know exactly what IRQ we are using, so synchronize_irq() suits much better. Plus synchronize_sched() will not work for us in -rt kernels. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit dcf65cd41c980278f98b6fc0d9da52747e7d058f Author: Dmitry Torokhov Date: Wed Nov 21 14:16:16 2007 -0500 sonypi: fit input devices into sysfs tree Properly set up parent on input devices registered by sonypi. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit 2e4d242ce71e82d931b4deb184ff9d96c9845ac1 Author: Dmitry Torokhov Date: Wed Nov 21 14:15:53 2007 -0500 sony-laptop: fit input devices into sysfs tree Properly set up parent on input devices registered by sony-laptop. Signed-off-by: Dmitry Torokhov Acked-by: Mattia Dongili commit 1dff314451fa24d6b107aa05393d3169e56a7e0a Author: David Woodhouse Date: Wed Nov 21 18:45:12 2007 +0100 mmc: Avoid re-using minor numbers before the original device is closed. Move the code which marks the minor number as free to mmc_blk_put() so that it happens on the final close() (or removal), instead of doing it at removal even when the device is still logically open. Signed-off-by: David Woodhouse Signed-off-by: Pierre Ossman commit b37a05069b9ab9fb1e52393a3448d710c50c54d5 Author: Alex Dubov Date: Wed Nov 14 23:55:36 2007 +1100 tifm_sd: handle non-power-of-2 block sizes It is possible to handle arbitrary block sizes with tifm card reader by conditionally switching to PIO in case such block has to be delivered. At the beginning of each request, DMA is either disabled (non-power-of-2 block size) or set to load time user preference. Signed-off-by: Alex Dubov Signed-off-by: Pierre Ossman commit d198f101989d9bb950327f0d043f6203bb862343 Author: Pierre Ossman Date: Fri Nov 2 18:21:13 2007 +0100 mmc_block: check card state after write Some cards have been reported to signal that they're ready prematurely. Checking both the busy bit and card state solves the issue. Signed-off-by: Pierre Ossman commit 233b28a91caf7cff326e604c437a364eaf794106 Author: Sonic Zhang Date: Wed Nov 21 17:04:41 2007 +0800 Blackfin arch: fix bug when enable uart1 with uart0 disabled => no initial console Signed-off-by: Michael Hennerich Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 49dce9124b41984bf1e918847bc17929c2e8f80f Author: Mike Frysinger Date: Wed Nov 21 16:46:49 2007 +0800 Blackfin arch: split apart dump_bfin_regs and merge/remove show_regs from process.c, which was largely duplicated Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9cb07b23dbc1c4c6ded49ba31d51b639a13970e3 Author: Mike Frysinger Date: Wed Nov 21 16:45:08 2007 +0800 Blackfin arch: use common __INIT/__FINIT defines rather than setting the .section ourselves to .init.text Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit fb322915a05804a3a153f714f2f08e4c32ce84c7 Author: Robin Getz Date: Wed Nov 21 16:38:05 2007 +0800 Blackfin arch: fix bug when sending signals with the wrong PC, cause gdb get confused We need to send signals with the proper PC, or gdb gets confused, and lots of tests fail. This should fix that. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 569a50ca3f56cd69199733580e7ca0e81029473a Author: Robin Getz Date: Wed Nov 21 16:35:57 2007 +0800 Blackfin arch: Ensure we printk out strings with the proper loglevel Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 0bad33d93af85a445adeedc19c363ef4e492ddd3 Author: Bernd Schmidt Date: Wed Nov 21 16:33:47 2007 +0800 Blackfin arch: Need to specify ax with the .init.text section, Need to specify "ax" with the .init.text section, otherwise the linker will make unique .init.text.1 .. .init.text.3 sections to cope with the flags commit f72eecb97b5ab63c735548ed982a39db72f9d7d7 Author: Robin Getz Date: Wed Nov 21 16:29:20 2007 +0800 Blackfin arch: Update Kconfig to latest Blackfin silicon datasheets Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit eee1f15ce632910f8840d1cd982651d95225f18d Author: Mike Frysinger Date: Wed Nov 21 16:23:51 2007 +0800 Blackfin arch: update defconfig files Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 46c87c3ccec0d81a7b695fe9d5edc86a7e446962 Author: Mike Frysinger Date: Wed Nov 21 16:15:48 2007 +0800 Blackfin arch: Fix typo, and add ENDPROC - no functional changes Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit f26825de49d2e1a12eee54cd855b56b768f4d7bd Author: Mike Frysinger Date: Wed Nov 21 16:17:11 2007 +0800 Blackfin arch: convert READY to DMA_READY as it causes build errors in common sound code otherwise Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b0187854d902f897f98a1712fa9f097b13d7a554 Author: Mike Frysinger Date: Wed Nov 21 16:14:03 2007 +0800 Blackfin arch: add defines for the on-chip L1 ROM of BF54x Should not need separate cplb entry though as we cover L1 with a 4 meg page Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit c3a9f435ae1b1969736a6ca695dfbc508b917b65 Author: Mike Frysinger Date: Wed Nov 21 16:12:12 2007 +0800 Blackfin arch: cplb and map header file cleanup - remove duplicated defines for the BF561 - generalize L2 support (so that it works for BF54x) and mark it executable - add support for reading/executing the Boot ROM sections (since it has data/functions we may need at runtime) - and fixup names for each map Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 81a487a59f246a9eba24c3622e4c964e3347239d Author: Mike Frysinger Date: Wed Nov 21 15:55:45 2007 +0800 Blackfin arch: cleanup the cplb declares - no need to declare their sizes in the common header - no need to tack on the section attribute as only the definition matters, not references Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9f2ff54d7291d4386dc02d6a153e6cc621f32aa8 Author: Mike Frysinger Date: Wed Nov 21 15:57:53 2007 +0800 Blackfin arch: fix broken on BF52x, remove silly checks on processors for L1_SCRATCH defines Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9e83b98a79d25136282a1757f879c40ee929a28b Author: Mike Frysinger Date: Wed Nov 21 16:08:58 2007 +0800 Blackfin arch: add support for working around anomaly 05000312 Anomaly 05000312 - Errors When SSYNC, CSYNC, or Loads to LT, LB and LC Registers Are Interrupted: DESCRIPTION: When instruction cache is enabled, erroneous behavior may occur when any of the following instructions are interrupted: . CSYNC • SSYNC • LCx = • LTx = (only when LCx is non-zero) • LBx = (only when LCx is non-zero) When this problem occurs, a variety of incorrect things could happen, including an illegal instruction exception. Additional errors could show up as an exception, a hardware error, or an instruction that is valid but different than the one that was expected. WORKAROUND: Place a cli before all SSYNC, CSYNC, "LCx =", "LTx =", and "LBx =" instructions to disable interrupts, and place an sti after each of these instructions to re-enable interrupts. When these instructions are executed in code that is already non-interruptible, the problem will not occur. Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b5f87aa41db4d5cd64ca77f10b33fdfba61a47d7 Author: Mike Frysinger Date: Wed Nov 21 16:04:49 2007 +0800 Blackfin arch: cleanup BF54x header file and add BF547 definition Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 7160e9503ac912a079a18125113b6465939bab85 Author: Mike Frysinger Date: Wed Nov 21 16:03:07 2007 +0800 Blackfin arch: fix building for BF542 processors which only have 1 TWI Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8d6c242062b90ce1b339e32a12fe183fe9612dcb Author: Mike Frysinger Date: Wed Nov 21 15:53:49 2007 +0800 Blackfin arch: rename _return_from_exception to _bfin_return_from_exception and export it Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d0025e5edf0e593da599358d70fdade47c3b703e Author: Mike Frysinger Date: Wed Nov 21 15:34:51 2007 +0800 Blackfin arch: move EXPORT_SYMBOL() to C files where the symbol is actually defined Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit e40540b304d5d15c344585c4a7b3116e73add2db Author: Sonic Zhang Date: Wed Nov 21 23:49:52 2007 +0800 Blackfin arch: fix bug NOR Flash MTD mount fail Config EBIU flash mode properly. EBIU_MODE EBIU_FCTL EBIU_MBSCTL register should be configurd to Flash mode. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 28a44d4bd6bdc7d013405bfc2aa7f126d39a7b2b Author: Cliff Cai Date: Wed Nov 21 15:22:58 2007 +0800 Blackfin arch: export symbol get_dma_curr_desc_ptr for driver usage Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu commit d535a916cdb1620d936a0a6197194c458854bd71 Author: Pavel Emelyanov Date: Tue Nov 20 17:44:01 2007 -0800 [IPVS]: Fix compiler warning about unused register_ip_vs_protocol This is silly, but I have turned the CONFIG_IP_VS to m, to check the compilation of one (recently sent) fix and set all the CONFIG_IP_VS_PROTO_XXX options to n to speed up the compilation. In this configuration the compiler warns me about CC [M] net/ipv4/ipvs/ip_vs_proto.o net/ipv4/ipvs/ip_vs_proto.c:49: warning: 'register_ip_vs_protocol' defined but not used Indeed. With no protocols selected there are no calls to this function - all are compiled out with ifdefs. Maybe the best fix would be to surround this call with ifdef-s or tune the Kconfig dependences, but I think that marking this register function as __used is enough. No? Signed-off-by: Pavel Emelyanov Acked-by: Simon Horman Signed-off-by: David S. Miller commit b4a9811c42ecb70b2f0b375f6d4c77ab34d1f598 Author: Jonas Danielsson Date: Tue Nov 20 17:38:16 2007 -0800 [ARP]: Fix arp reply when sender ip 0 Fix arp reply when received arp probe with sender ip 0. Send arp reply with target ip address 0.0.0.0 and target hardware address set to hardware address of requester. Previously sent reply with target ip address and target hardware address set to same as source fields. Signed-off-by: Jonas Danielsson Acked-by: Alexey Kuznetov Signed-off-by: David S. Miller commit 77adefdc9863d63f8d8bdc6a9adcdf9a6b0e2410 Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:31:23 2007 -0800 [IPV6] TCPMD5: Fix deleting key operation. Due to the bug, refcnt for md5sig pool was leaked when an user try to delete a key if we have more than one key. In addition to the leakage, we returned incorrect return result value for userspace. This fix should close Bug #9418, reported by . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit aacbe8c8800adfea42eb754396c6ebcd992cb36a Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:56 2007 -0800 [IPV6] TCPMD5: Check return value of tcp_alloc_md5sig_pool(). Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 354faf0977397cea382e9e9c214fd028377d277b Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:31 2007 -0800 [IPV4] TCPMD5: Use memmove() instead of memcpy() because we have overlaps. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit a80cc20da492d9a00b0851a6632dc03fed5d2e30 Author: YOSHIFUJI Hideaki Date: Tue Nov 20 17:30:06 2007 -0800 [IPV4] TCPMD5: Omit redundant NULL check for kfree() argument. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 53438e5d04f156dc36ff5cf44740262205bfb206 Merge: 1f30532... 92468c5... Author: David S. Miller Date: Tue Nov 20 17:24:29 2007 -0800 Merge branch 'fixes-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit a3f095ade0f5fd2a09a7f523632d762314452871 Merge: e6532b8... e790cc8... Author: Len Brown Date: Tue Nov 20 20:07:49 2007 -0500 Pull bugzilla-9327 into release branch Conflicts: drivers/acpi/ec.c Signed-off-by: Len Brown commit e790cc8bbb990df900eabdda18a5a480d22a60c8 Author: Alexey Starikovskiy Date: Wed Nov 21 03:23:32 2007 +0300 ACPI: EC: Workaround for optimized controllers (version 3) Some controllers fail to send confirmation GPE after address or data write. Detect this and don't expect such confirmation in future. This is a generalization of previous workaround (66c5f4e7367b0085652931b2f3366de29e7ff5ec), which did only read address. Reference: http://bugzilla.kernel.org/show_bug.cgi?id=9327 Signed-off-by: Alexey Starikovskiy Tested-by: Romano Giannetti Tested-by: Mats Johannesson Signed-off-by: Len Brown commit 3ebe08a749a0971a5407818169dc16212ef562f9 Author: Márton Németh Date: Wed Nov 21 03:23:26 2007 +0300 ACPI: EC: use printk_ratelimit(), add some DEBUG mode messages Sometimes it is usefull to see raw protocol dump. Uncomment '#define DEBUG' at the beginning of file to make EC really verbose. Signed-off-by: Márton Németh Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 0af2f653c504d302d83d3a648c0408882ff62d4c Author: Len Brown Date: Tue Nov 20 19:59:08 2007 -0500 Revert "ACPI: EC: Workaround for optimized controllers" This reverts commit f2d68935ba08cf80f151bbdb5628381184e4a498. commit cea218054ad277d6c126890213afde07b4eb1602 Author: Jeff Layton Date: Tue Nov 20 23:19:03 2007 +0000 [CIFS] Fix potential data corruption when writing out cached dirty pages Fix RedHat bug 329431 The idea here is separate "conscious" from "unconscious" flushes. Conscious flushes are those due to a fsync() or close(). Unconscious ones are flushes that occur as a side effect of some other operation or due to memory pressure. Currently, when an error occurs during an unconscious flush (ENOSPC or EIO), we toss out the page and don't preserve that error to report to the user when a conscious flush occurs. If after the unconscious flush, there are no more dirty pages for the inode, the conscious flush will simply return success even though there were previous errors when writing out pages. This can lead to data corruption. The easiest way to reproduce this is to mount up a CIFS share that's very close to being full or where the user is very close to quota. mv a file to the share that's slightly larger than the quota allows. The writes will all succeed (since they go to pagecache). The mv will do a setattr to set the new file's attributes. This calls filemap_write_and_wait, which will return an error since all of the pages can't be written out. Then later, when the flush and release ops occur, there are no more dirty pages in pagecache for the file and those operations return 0. mv then assumes that the file was written out correctly and deletes the original. CIFS already has a write_behind_rc variable where it stores the results from earlier flushes, but that value is only reported in cifs_close. Since the VFS ignores the return value from the release operation, this isn't helpful. We should be reporting this error during the flush operation. This patch does the following: 1) changes cifs_fsync to use filemap_write_and_wait and cifs_flush and also sync to check its return code. If it returns successful, they then check the value of write_behind_rc to see if an earlier flush had reported any errors. If so, they return that error and clear write_behind_rc. 2) sets write_behind_rc in a few other places where pages are written out as a side effect of other operations and the code waits on them. 3) changes cifs_setattr to only call filemap_write_and_wait for ATTR_SIZE changes. 4) makes cifs_writepages accurately distinguish between EIO and ENOSPC errors when writing out pages. Some simple testing indicates that the patch works as expected and that it fixes the reproduceable known problem. Acked-by: Dave Kleikamp Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 92468c53cf5af0aea06caec7b7d416c18e973685 Author: Guillaume Chazarain Date: Mon Nov 19 10:07:00 2007 +0100 ieee80211: Stop net_ratelimit/IEEE80211_DEBUG_DROP log pollution if (net_ratelimit()) IEEE80211_DEBUG_DROP(...) can pollute the logs with messages like: printk: 1 messages suppressed. printk: 2 messages suppressed. printk: 7 messages suppressed. if debugging information is disabled. These messages are printed by net_ratelimit(). Add a wrapper to net_ratelimit() that takes into account the log level, so that net_ratelimit() is called only when we really want to print something. Signed-off-by: Guillaume Chazarain Signed-off-by: John W. Linville commit 4b50e388f88ab08f6c2f54f0a33e696ff2de269f Author: Bruno Randolf Date: Fri Nov 16 17:04:01 2007 +0900 mac80211: add missing space in error message Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit ad639b9f2ccb87815384bda4ed4609592a861b8b Author: Grant Likely Date: Wed Oct 17 17:41:00 2007 -0600 [POWERPC] 83xx: Update mpc8349emitx(gp) defconfig for USB USB support for the 8349itx got added a while back; but the defconfig never got updated. This patch adds the appropriate USB config options to the defconfigs Signed-off-by: Grant Likely CC: Scott Wood CC: Timur Tabi Signed-off-by: Kumar Gala commit 04ce7a9767fa75a5ea7704b88530adde64488152 Author: Anton Vorontsov Date: Tue Nov 13 20:00:43 2007 +0300 [POWERPC] 83xx: Update mpc832x_rdb_defconfig to enable MMC-over-SPI Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit ba3bdff54bdc4275b4ed68964bbfbcbda003715d Author: Anton Vorontsov Date: Tue Nov 13 20:00:11 2007 +0300 [POWERPC] 83xx: MPC832x RDB - remove spidev stub, use mmc_spi mmc_spi has hit the mainline, so we can start using it. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit 27f49807d79cf44642f98cb7854729836340d98d Author: Kim Phillips Date: Thu Nov 8 13:37:06 2007 -0600 [POWERPC] 8xxx: MDS board RTC fixes Now the rtc class ds1374 driver has been added, remove the old rtc driver hookup code, add rtc node to device trees, and turn on the new driver in the defconfigs. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit c1428b3f45d152a300e4f18638ebf30ceafda6c3 Author: Johannes Berg Date: Fri Nov 16 02:54:53 2007 +0100 mac80211: fix allmulti/promisc behaviour When an interface with promisc/allmulti bit is taken down, the mac80211 state can become confused. This fixes it by making mac80211 keep track of all *active* interfaces that have the promisc/allmulti bit set in the sdata, we sync the interface bit into sdata at set_multicast_list() time so this works. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b52f2198ac889561d341c6990d669a671f93f450 Author: Johannes Berg Date: Fri Nov 16 01:49:11 2007 +0100 mac80211: fix ieee80211_set_multicast_list I recently experienced unexplainable behaviour with the b43 driver when I had broken firmware uploaded. The cause may have been that promisc mode was not correctly enabled or disabled and this bug may have been the cause. Note how the values are compared later in the function so just doing the & will result in the wrong thing being compared and the test being false almost always. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9ed87fd34c97a998e63505718ce7e107a23c84c3 Author: Jack Morgenstein Date: Tue Nov 20 13:01:28 2007 -0800 mlx4_core: Fix state check in mlx4_qp_modify() When checking the states passed in, mlx4_qp_modify() accidentally checks cur_state twice rather than checking cur_state and new_state. Fix this to make sure that both values are in-bounds. Since these values may be passed in from userspace, this bug results in userspace being able to trigger an oops. Signed-off-by: Jack Morgenstein Cc: stable Signed-off-by: Roland Dreier commit 7cb41c65b3fc547da4050721445d07277768aa37 Author: Jaroslav Kysela Date: Tue Nov 20 20:16:43 2007 +0100 [ALSA] version 1.0.15 Signed-off-by: Jaroslav Kysela commit 4187b915a0f7eaa69707715e80d9fc253ff6167a Author: Ralph Campbell Date: Wed Nov 14 13:34:14 2007 -0800 IB/ipath: Normalize error return codes for posting work requests The error codes for ib_post_send(), ib_post_recv(), and ib_post_srq_recv() were inconsistent. Use EINVAL for too many SGEs and ENOMEM for too many WRs. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 14de986a0ba560b54340fd277a3579e95a2d3838 Author: Ralph Campbell Date: Fri Nov 9 15:22:31 2007 -0800 IB/ipath: Fix offset returned to ibv_modify_srq() The wrong offset was being returned to libipathverbs so that when ibv_modify_srq() calls mmap(), it always fails. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 8a278e6d571ebe10b96f2b53c74f01fd0a3f005a Author: Ralph Campbell Date: Wed Nov 14 12:09:05 2007 -0800 IB/ipath: Fix error path in QP creation This patch fixes the code which frees the partially allocated QP resources if there was an error while creating the QP. In particular, the QPN wasn't deallocated and the QP wasn't removed from the hash table. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit aa299d01f1c2e680e40813b63f8dfb46c79ea715 Author: Takashi Iwai Date: Thu Nov 15 13:16:02 2007 +0100 [ALSA] emu10k1 - Check value ranges in ctl callbacks Check value ranges in ctl callbacks properly. This fixes the unexpected crash due to wrong value assignment. Also, remove invalid comments in the last patch. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 74415a36767d99d3adf31b4a62e4e50725e6b66a Author: James Courtier-Dutton Date: Mon Nov 12 14:55:19 2007 +0000 [ALSA] emu10k1: Add mixer controls parameter checking. Signed-off-by: James Courtier-Dutton Signed-off-by: Jaroslav Kysela commit fb74dacb0f00dff851c78411773a5bd5d7128b81 Author: Ralph Campbell Date: Tue Nov 6 17:51:38 2007 -0800 IB/ipath: Fix offset returned to ibv_resize_cq() The wrong offset was being returned to libipathverbs so that when ibv_resize_cq() calls mmap(), it always fails. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 4df20535ec52fb7eba604eb1ba77148f92ab8edd Author: Timur Tabi Date: Wed Nov 14 12:07:58 2007 +0100 [ALSA] fix private data pointer calculation in CS4270 driver Fix the calculation of the private_data pointer in the CS4270 driver. Signed-off-by: Timur Tabi Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 37435446244958edc36b33cf2b87c2f5cd433ba4 Author: Takashi Iwai Date: Mon Oct 29 11:14:31 2007 +0100 [ALSA] portman2x4 - Fix probe error Reported by Ingo Molnar, when booting an allyesconfig bzImage kernel the bootup hangs in the portman2x4 driver (on a box that does not have this hardware), at: Pid: 1, comm: swapper EIP: 0060:[] CPU: 0 EIP is at parport_pc_read_status+0x4/0x8 EFLAGS: 00000202 Not tainted (2.6.23-rc9 #904) EAX: f7e57a7f EBX: 00000010 ECX: c2b808c0 EDX: 00000379 ESI: f7cb8230 EDI: 00000010 EBP: f7cb8230 DS: 007b ES: 007b FS: 0000 CR0: 8005003b CR2: fff9c000 CR3: 007ec000 CR4: 00000690 DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 DR6: ffff0ff0 DR7: 00000400 [] portman_flush_input+0xde/0x12c [] snd_portman_probe+0x368/0x484 [] __device_attach+0x0/0x8 [] platform_drv_probe+0xc/0x10 [] driver_probe_device+0x74/0x194 [] klist_next+0x38/0x70 [] __device_attach+0x0/0x8 [] bus_for_each_drv+0x35/0x68 [] device_attach+0x72/0x78 the reason is due to an inconsistent error return code of 1 or 2, while snd_portman_probe only realizes negative error codes. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 33712560285c9f7f5251508bcddeef0c57aa3329 Author: Takashi Iwai Date: Wed Oct 24 18:02:17 2007 +0200 [ALSA] ca0106 - Fix write proc assignment The driver assigns the write proc callback to read wrongly. Fixed now. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1700139acb2794df6f6ea17de3a6fc2f9c7510b1 Author: Krzysztof Helt Date: Fri Oct 19 08:23:00 2007 +0200 [ALSA] s3c2443-ac97: compilation fix The Samsung S3C24xx uses new architecture file layout in the post 2.6.23 kernel. This patch fixes include path for the s3c2443-ac97.c. Signed-off-by: Krzysztof Helt Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 6020c008dfe6b68626de7de7b4fa99982e345c86 Author: Takashi Iwai Date: Mon Nov 19 11:56:26 2007 +0100 [ALSA] hda-codec - Revert volume knob controls in STAC codecs Volume knob controls with STAC codecs seem to cause problems with some devices. Volumes change very slowly or silent suddenly. It's likely due to conflict between the software and the hardware volume knob setup. Since we'll have a virtual master control in future, it's safer to remove this control completely right now. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 1f305323ff5b9ddc1a4346d36072bcdb58f3f68a Author: Evgeniy Polyakov Date: Tue Nov 20 04:27:35 2007 -0800 [NETFILTER]: Fix kernel panic with REDIRECT target. When connection tracking entry (nf_conn) is about to copy itself it can have some of its extension users (like nat) as being already freed and thus not required to be copied. Actually looking at this function I suspect it was copied from nf_nat_setup_info() and thus bug was introduced. Report and testing from David . [ Patrick McHardy states: I now understand whats happening: - new connection is allocated without helper - connection is REDIRECTed to localhost - nf_nat_setup_info adds NAT extension, but doesn't initialize it yet - nf_conntrack_alter_reply performs a helper lookup based on the new tuple, finds the SIP helper and allocates a helper extension, causing reallocation because of too little space - nf_nat_move_storage is called with the uninitialized nat extension So your fix is entirely correct, thanks a lot :) ] Signed-off-by: Evgeniy Polyakov Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 0a06ea87185531705e4417e3a051f81b64f210c1 Author: David S. Miller Date: Tue Nov 20 03:29:53 2007 -0800 [WIRELESS] WEXT: Fix userspace corruption on 64-bit. On 64-bit systems sizeof(struct ifreq) is 8 bytes larger than sizeof(struct iwreq). For GET calls, the wireless extension code copies back into userspace using sizeof(struct ifreq) but userspace and elsewhere only allocates a "struct iwreq". Thus, this copy writes past the end of the iwreq object and corrupts whatever sits after it in memory. Fix the copy_to_user() length. This particularly hurts the compat case because the wireless compat code uses compat_alloc_userspace() and right after this allocated buffer is the current bottom of the user stack, and that's what gets overwritten by the copy_to_user() call. Signed-off-by: David S. Miller commit c5d4a9997b4b2ec71cff0b219f05c6bc51f3fc79 Author: Cornelia Huck Date: Tue Nov 20 11:13:41 2007 +0100 [S390] cio: Register/unregister subchannels only from kslowcrw. Make sure all subchannel handling is done on the slow path workqueue so that we don't have races between an old subchannel unregistering and a new subchannel with the same name registering. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 06770a6e7d26ba980055caff815b9b3f5322c9db Author: Heiko Carstens Date: Tue Nov 20 11:13:40 2007 +0100 [S390] Add missing die_notifier() call to die(). Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit a2cb07376e397e7e788551f14acd972e22b09efd Author: Heiko Carstens Date: Tue Nov 20 11:13:39 2007 +0100 [S390] Fix memory detection. Before we're getting short on memory detection fixes here is the next one: if neither sclp nor diag260 report the storage size the detection loop will return immediately without detecting anything. Fix this by breaking the detection loop only if the memory end is known. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 70cf5035dedaeddf8f6ae5c0a74ea65dcd7356ab Author: Christoph Lameter Date: Tue Nov 20 11:13:38 2007 +0100 [S390] Explicitly code allocpercpu calls in iucv The iucv is the only user of the various functions that are used to bring parts of cpus up and down. Its the only allocpercpu user that will do I/O on per cpu objects (which is difficult to do with virtually mapped memory). And its the only use of allocpercpu where a GFP_DMA allocation is done. Remove the allocpercpu calls from iucv and code the allocation and freeing manually. After this patch it is possible to remove a large part of the allocpercpu API. Signed-off-by: Christoph Lameter Signed-off-by: Martin Schwidefsky commit 677d762319facc20467243c6dd9487261e3515b0 Author: Heiko Carstens Date: Tue Nov 20 11:13:37 2007 +0100 [S390] Dont overwrite lowcores on smp_send_stop(). Don't perform a sigp store-status-at-address on smp_send_stop(). It will overwrite the lowcores of other cpus and destroys valueable debug informations. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ce7e9fae8db07af4080e868f4588f8f095f803dc Author: Christian Borntraeger Date: Tue Nov 20 11:13:36 2007 +0100 [S390] Optimize storage key handling for anonymous pages page_mkclean used to call page_clear_dirty for every given page. This is different to all other architectures, where the dirty bit in the PTEs is only resetted, if page_mapping() returns a non-NULL pointer. We can move the page_test_dirty/page_clear_dirty sequence into the 2nd if to avoid unnecessary iske/sske sequences, which are expensive. This change also helps kvm for s390 as the host must transfer the dirty bit into the guest status bits. By moving the page_clear_dirty operation into the 2nd if, the vm will only call page_clear_dirty for pages where it walks the mapping anyway. There it calls ptep_clear_flush for writable ptes, so we can transfer the dirty bit to the guest. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit b8e7a54cd06b0b0174029ef3a7f5a1415a2c28f2 Author: Heiko Carstens Date: Tue Nov 20 11:13:35 2007 +0100 [S390] Fix kernel preemption. When returning from IRQ handling and TIF_NEED_RESCHED is set we must call preempt_schedule_irq() instead of schedule(). Otherwise the BKL might be unlocked in schedule() and therfore everything that relies on the BKL is broken. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 37e3a6ac5a30468021a2f366e497d455bbcb5d21 Author: Heiko Carstens Date: Tue Nov 20 11:13:34 2007 +0100 [S390] appldata: remove unused binary sysctls. Remove binary sysctls that never worked due to missing strategy functions. Cc: "Eric W. Biederman" Cc: Christian Borntraeger Cc: Gerald Schaefer Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 43ebbf119a9670d8f08b9e57968e109c770f8636 Author: Heiko Carstens Date: Tue Nov 20 11:13:33 2007 +0100 [S390] cmm: remove unused binary sysctls. Remove binary sysctls that never worked due to missing strategy functions. Cc: Christian Borntraeger Signed-off-by: Heiko Carstens Signed-off-by: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Martin Schwidefsky commit 411788ea7fca01ee803af8225ac35807b4d02050 Author: Heiko Carstens Date: Tue Nov 20 11:13:32 2007 +0100 [S390] Fix irq tracing and lockdep_sys_exit calls. Current support for TRACE_IRQFLAGS and lockdep_sys_exit is broken. IRQ flag tracing is broken for program checks. Even worse is that the newly introduced calls to lockdep_sys_exit are in the critical section code which is not supposed to call any C functions. In addition the checks if locks are still held are also done when returning to kernel code which is broken as well. Fix all this by disabling interrupts and machine checks at the exit paths and then do the appropriate checks and calls. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 7aa8dac7ac68f5c2293e2ecf5ef542aa849f541f Author: Christian Borntraeger Date: Tue Nov 20 11:13:31 2007 +0100 [S390] magic sysrq: check for in_atomic before doing an console_unblank When doing an magic sysrq reboot on s390 the following bug message appears: SysRq : Resetting BUG: sleeping function called from invalid context at include/asm/semaphore.h:61 in_atomic():1, irqs_disabled():0 07000000004002a8 000000000fe6bc48 0000000000000002 0000000000000000 000000000fe6bce8 000000000fe6bc60 000000000fe6bc60 000000000012a79a 0000000000000000 07000000004002a8 0000000000000006 0000000000000000 0000000000000000 000000000fe6bc48 000000000000000d 000000000fe6bcb8 00000000004000c8 0000000000103234 000000000fe6bc48 000000000fe6bc90 Call Trace: (¬<00000000001031b2>| show_trace+0x12e/0x148) ¬<000000000011ffca>| __might_sleep+0x10a/0x118 ¬<0000000000129fba>| acquire_console_sem+0x92/0xf4 ¬<000000000012a2ca>| console_unblank+0xc2/0xc8 ¬<0000000000107bb4>| machine_restart+0x54/0x6c ¬<000000000028e806>| sysrq_handle_reboot+0x26/0x30 ¬<000000000028e52a>| __handle_sysrq+0xa6/0x180 ¬<0000000000140134>| run_workqueue+0xcc/0x18c ¬<000000000014029a>| worker_thread+0xa6/0x108 ¬<00000000001458e4>| kthread+0x64/0x9c ¬<0000000000106f0e>| kernel_thread_starter+0x6/0xc ¬<0000000000106f08>| kernel_thread_starter+0x0/0xc The only reason for doing a console_unblank on s390 is to flush the log buffer. We have to check for in_atomic before doing a console_unblank as the console is otherwise filled with an unrelated bug message. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 3b8c88993e3709b4d44f7ca4e886044a49605394 Author: Peter Oberparleiter Date: Tue Nov 20 11:13:30 2007 +0100 [S390] cio: change device sense procedure to work with pav aliases Modify the sense id channel program to allow device sensing of pav alias devices which belong to a base device with ungrouped paths. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit a572da43738f156a6c81034467da429903483687 Author: Joe Perches Date: Mon Nov 19 23:48:30 2007 -0800 [IRDA]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit c3c9d45828255dcb63d695a3229a25cba97a9bdf Author: Joe Perches Date: Mon Nov 19 23:48:08 2007 -0800 [SUNRPC]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 9ee46f1d31cf70b7e6375bc50b811f529b7bc82e Author: Joe Perches Date: Mon Nov 19 23:47:47 2007 -0800 [SCTP]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 3b6d821c4f06b4c25704bc11d05e68cdd16b4278 Author: Joe Perches Date: Mon Nov 19 23:47:25 2007 -0800 [IPV6]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 3a47a68b05ad4b2da54d8c77262459465436387b Author: Joe Perches Date: Mon Nov 19 23:46:55 2007 -0800 [BRIDGE]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 464c4f184ac671c6206d502a67034f9bfe9fe25c Author: Joe Perches Date: Mon Nov 19 23:46:29 2007 -0800 [IPV4]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4756daa3b63e806d8ef093c8b4b5f56ee34250a2 Author: Joe Perches Date: Mon Nov 19 23:46:02 2007 -0800 [DCCP]: Add missing "space" Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 0b47759db54f82df68ed179ddc5cb2becea56158 Author: Benjamin Herrenschmidt Date: Tue Nov 20 18:32:12 2007 +1100 [POWERPC] Fix 8xx build breakage due to _tlbie changes My changes to _tlbie to fix 4xx unfortunately broke 8xx build in a couple of places. This fixes it. Spotted by Olof Johansson. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 072ef40e08a71aae4ff2835e3c7f601b29daf227 Merge: 2b46b56... bebfa06... Author: Paul Mackerras Date: Tue Nov 20 18:40:23 2007 +1100 Merge branch 'for-2.6.24' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc into merge commit 5487796f0c9475586277a0a7a91211ce5746fa6a Author: Sam Jansen Date: Mon Nov 19 23:28:21 2007 -0800 [TCP]: Problem bug with sysctl_tcp_congestion_control function From: "Sam Jansen" sysctl_tcp_congestion_control seems to have a bug that prevents it from actually calling the tcp_set_default_congestion_control function. This is not so apparent because it does not return an error and generally the /proc interface is used to configure the default TCP congestion control algorithm. This is present in 2.6.18 onwards and probably earlier, though I have not inspected 2.6.15--2.6.17. sysctl_tcp_congestion_control calls sysctl_string and expects a successful return code of 0. In such a case it actually sets the congestion control algorithm with tcp_set_default_congestion_control. Otherwise, it returns the value returned by sysctl_string. This was correct in 2.6.14, as sysctl_string returned 0 on success. However, sysctl_string was updated to return 1 on success around about 2.6.15 and sysctl_tcp_congestion_control was not updated. Even though sysctl_tcp_congestion_control returns 1, do_sysctl_strategy converts this return code to '0', so the caller never notices the error. Signed-off-by: David S. Miller commit 6e42141009ff18297fe19d19296738b742f861db Author: Ilpo Järvinen Date: Mon Nov 19 23:24:09 2007 -0800 [TCP] MTUprobe: fix potential sk_send_head corruption When the abstraction functions got added, conversion here was made incorrectly. As a result, the skb may end up pointing to skb which got included to the probe skb and then was freed. For it to trigger, however, skb_transmit must fail sending as well. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 1f8170b0ecd8363847792b3b1f269e9d8e10391a Author: Pavel Emelyanov Date: Mon Nov 19 22:51:24 2007 -0800 [PKTGEN]: Fix double unlock of xfrm_state->lock The pktgen_output_ipsec() function can unlock this lock twice due to merged error and plain paths. Remove one of the calls to spin_unlock. Other possible solution would be to place "return 0" right after the first unlock, but at this place the err is known to be 0, so these solutions are the same except for this one makes the code shorter. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit e6532b8883760bdf9d251c669a3919fc9457aeca Merge: d89a9bd... 4fdb2a0... Author: Len Brown Date: Tue Nov 20 01:21:47 2007 -0500 Pull fluff into release branch Conflicts: drivers/acpi/ec.c Signed-off-by: Len Brown commit d89a9bda14204547f966ed1510a269a44c0b7f5d Merge: d12dbbf... c88c578... Author: Len Brown Date: Tue Nov 20 01:20:57 2007 -0500 Pull video-2.6.24 into release branch commit d12dbbfe948c89156ad1b0fe7c808ba4d6f00bc2 Merge: 614a6bb... 59f91ff... Author: Len Brown Date: Tue Nov 20 01:20:42 2007 -0500 Pull thinkpad-2.6.24 into release branch commit 614a6bbecceb97558819f18a676fd819ea61550b Merge: c2e46d2... f79f06a... Author: Len Brown Date: Tue Nov 20 01:20:31 2007 -0500 Pull thermal into release branch commit c2e46d2e2a8e6ed17fac6154ac7e5fa7fe4efb28 Merge: 95b0078... 65ea652... Author: Len Brown Date: Tue Nov 20 01:20:00 2007 -0500 Pull procfs-default into release branch Conflicts: drivers/acpi/sbs.c Signed-off-by: Len Brown commit 95b00786f3b8fa99f53931361beeb4c10504ad87 Merge: 22201f7... ddc081a... Author: Len Brown Date: Tue Nov 20 01:18:37 2007 -0500 Pull cpuidle into release branch commit 22201f7402851b9a47e64139ca589bd8555f7138 Merge: 5824b45... f2d6893... Author: Len Brown Date: Tue Nov 20 01:18:19 2007 -0500 Pull bugzilla-9327 into release branch commit 5824b4512650db90ddd5fdbea7f8aea3c7df3a94 Merge: 7833b4a... 5870a8c... Author: Len Brown Date: Tue Nov 20 01:18:07 2007 -0500 Pull bugzilla-9262 into release branch commit 7833b4ae466e084a865542c6fd83394a3d274144 Merge: 86533e8... 61fd47e... Author: Len Brown Date: Tue Nov 20 01:17:54 2007 -0500 Pull bugzilla-9153 into release branch commit 86533e80e0a20ed1a676f9eeb2dde0fa5ff23276 Merge: 2ffbb83... 037cbc6... Author: Len Brown Date: Tue Nov 20 01:17:42 2007 -0500 Pull battery into release branch commit 61fd47e0c84764f49b4e52bfd8170fac52636f00 Author: Shaohua Li Date: Sat Nov 17 01:05:28 2007 -0500 ACPI: fix two IRQ8 issues in IOAPIC mode Use mp_irqs[] to get PNP device's interrupt polarity and trigger. There are two reasons to do this: 1. BIOS bug for PNP interrupt 2. BIOS explictly does override mp_irqs[] should cover all the cases. http://bugzilla.kernel.org/show_bug.cgi?id=5243 http://bugzilla.kernel.org/show_bug.cgi?id=7679 http://bugzilla.kernel.org/show_bug.cgi?id=9153 [lenb: fixed !IOAPIC and 64-bit !SMP builds] Signed-off-by: Shaohua Li Signed-off-by: Len Brown commit 9055fa1f3ded5ad858a55ae18439ed55227ee7eb Author: Simon Horman Date: Mon Nov 19 21:51:13 2007 -0800 [IPVS]: Move remaining sysctl handlers over to CTL_UNNUMBERED Switch the remaining IPVS sysctl entries over to to use CTL_UNNUMBERED, I stronly doubt that anyone is using the sys_sysctl interface to these variables. Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit 9e103fa6bd53147e228e941256803a6b8927cdb9 Author: Simon Horman Date: Mon Nov 19 21:50:21 2007 -0800 [IPVS]: Fix sysctl warnings about missing strategy in schedulers sysctl table check failed: /net/ipv4/vs/lblc_expiration .3.5.21.19 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/lblcr_expiration .3.5.21.20 Missing strategy Switch these entried over to use CTL_UNNUMBERED as clearly the sys_syscal portion wasn't working. This is along the same lines as Christian Borntraeger's patch that fixes up entries with no stratergy in net/ipv4/ipvs/ip_vs_ctl.c Signed-off-by: Simon Horman Signed-off-by: David S. Miller commit bebfa06c61da6246d4aab38efa06a460eb3db4ed Author: Kumar Gala Date: Mon Nov 19 23:36:23 2007 -0600 [POWERPC] Fix device tree interrupt map for Freescale ULI1575 boards The interrupt map for the PCI PHB that had the ULI1575 was not correct on the boards that have it. * 8544 DS: - Fix interrupt mask - Be explicit about use of INTA for on chip peripherals * 8572 DS/8641 HPCN: - Fix interrupt mask - Expand interrupt map for PCI slots to cover all functions - Be explicit about use of INTA for on chip peripherals Signed-off-by: Kumar Gala commit 611cd55b155a89d9a0ce5f92a9cbabc5e284d0d4 Author: Christian Borntraeger Date: Mon Nov 19 21:49:25 2007 -0800 [IPVS]: Fix sysctl warnings about missing strategy Running the latest git code I get the following messages during boot: sysctl table check failed: /net/ipv4/vs/drop_entry .3.5.21.4 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/drop_packet .3.5.21.5 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/secure_tcp .3.5.21.6 Missing strategy [...] sysctl table check failed: /net/ipv4/vs/sync_threshold .3.5.21.24 Missing strategy I removed the binary sysctl handler for those messages and also removed the definitions in ip_vs.h. The alternative would be to implement a proper strategy handler, but syscall sysctl is deprecated. There are other sysctl definitions that are commented out or work with the default sysctl_data strategy. I did not touch these. Signed-off-by: Christian Borntraeger Acked-by: Simon Horman Signed-off-by: David S. Miller commit 2b46b5673ca67d23302c2afac045def988a3cade Author: Michael Neuling Date: Tue Nov 20 15:18:40 2007 +1100 [POWERPC] Fix possible division by zero in scaled time accounting If we get no user time and no system time allocated since the last account_system_vtime, the system to user time ratio estimate can end up dividing by zero. This was causing a problem noticed by Balbir Singh. Signed-off-by: Michael Neuling Signed-off-by: Paul Mackerras commit c443acab2eebf12dce7e78fe29e76786f55ad1be Author: Jeremy Kerr Date: Fri Nov 16 13:32:23 2007 +1100 [POWERPC] spufs: Fix context destroy vs /spu readdir race We can currently cause an oops by repeatedly creating and destroying contexts, while doing getdents() calls on the "/spu" directory. This is due to the context's top-level dentry remaining hashed while the context is being destroyed. Fix this by unhashing the context's dentry with the dentry->d_inode->i_mutex held. This way, we'll hit the check for d_unhashed in dentry_readdir, and won't be included in the list of subdirs for /spu. test: spufs-testsuite:tests/01-spu_create/07-destroy-vs-readdir-race Signed-off-by: Jeremy Kerr Signed-off-by: Paul Mackerras commit a2b51812a4dc5db09ab4d4638d4d8ed456e2457e Author: Linas Vepstas Date: Tue Nov 20 12:28:15 2007 +1100 [POWERPC] Fix RTAS os-term usage on kernel panic The rtas_os_term() routine was being called at the wrong time. The actual rtas call "os-term" will not ever return, and so calling it from the panic notifier is too early. Instead, call it from the machine_reset() call. This splits the rtas_os_term() routine into two: one part to capture the kernel panic message, invoked during the panic notifier, and another part that is invoked during machine_reset(). Prior to this patch, the os-term call was never being made, because panic_timeout was always non-zero. Calling os-term helps keep the hypervisor happy! We have to keep the hypervisor happy to avoid service, dump and error reporting problems. Signed-off-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 29a50a8bd04ce88efe530fad4d0e21d045c0f25a Author: Kim Phillips Date: Mon Nov 5 12:15:51 2007 -0600 [POWERPC] 83xx: Handle mpc8360 rev. 2.1 RGMII timing erratum If on a rev. 2.1, adjust UCC clock and data timing characteristics as specified in the rev.2.1 erratum #2. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 34be4561cd47bab1cd5796ea355dd373264da288 Author: Kim Phillips Date: Mon Nov 5 12:15:35 2007 -0600 [POWERPC] Document rgmii-rxid and rgmii-txid phy-connection-types A h/w bug requires we program the PHY in RGMII mode for internal delay on the receive or transmit side only; document the new property values. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 4a2adca95c6a0741b943e7b690b13d4e56c7adac Author: Kim Phillips Date: Tue Nov 13 17:26:31 2007 -0600 [POWERPC] 83xx: Fix 2nd UCC entry in mpc832x_mds.dts correct the reg property, remove duplicate io port entry, whitespace fixes. Thanks to Peter Van Ackeren for pointing this out. Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit d8ecbb93bece05df84e654c296c3c81b3d347c2d Author: Kim Phillips Date: Mon Nov 19 19:04:43 2007 -0600 [POWERPC] 83xx: mpc832x mds: Fix board PHY reset code currently the board-level PHY reset code for the mpc832x MDS messes with reset configuration words source settings which is plain wrong (it looks like this board code was cut-n-pasted from the mpc8360 mds code, which has the PHY reset bits in a different BCSR); this patch points the PHY reset code to the proper mpc832x mds PHY reset bits in the BCSR. Signed-off-by: Peter Van Ackeren Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 7ac33417ecf8c012df0e957cfa0628a6a4347c7d Author: Cyrill Gorcunov Date: Thu Nov 15 21:47:06 2007 +0300 [POWERPC] Fix potential NULL dereference This patch does fix potential NULL pointer dereference that could take place inside of strcmp() if of_get_property() call failed. Signed-off-by: Cyrill Gorcunov Signed-off-by: Kumar Gala commit fbe481756df57673b6acbcd2e139d0d2658f2188 Author: Olof Johansson Date: Tue Nov 20 12:24:45 2007 +1100 [POWERPC] vdso: Fixes for cache block sizes The current VDSO implementation is hardcoded to 128 byte cache blocks, which are only used on IBM's 64-bit processors. Convert it to get the cache block sizes out of vdso_data instead, similar to how the ppc64 in-kernel cache flush does it. Signed-off-by: Olof Johansson Signed-off-by: Paul Mackerras commit 92e21e79a85924ddda00f4678d60bbd8f891a553 Merge: b22da92... de0c74e... Author: Paul Mackerras Date: Tue Nov 20 13:54:46 2007 +1100 Merge branch 'for-2.6.24' of master.kernel.org:/pub/scm/linux/kernel/git/olof/pasemi into merge commit 4fdb2a05ef5703553fdd28f1b96ebdd79f173657 Author: Joe Perches Date: Mon Nov 19 17:48:02 2007 -0800 ACPI: Add missing spaces to printk format Signed-off-by: Joe Perches Signed-off-by: Len Brown commit ddc081a19585c8ba5aad437779950c2ef215360a Author: Venkatesh Pallipadi Date: Mon Nov 19 21:43:22 2007 -0500 cpuidle: fix HP nx6125 regression Fix for http://bugzilla.kernel.org/show_bug.cgi?id=9355 cpuidle always used to fallback to C2 if there is some bm activity while entering C3. But, presence of C2 is not always guaranteed. Change cpuidle algorithm to detect a safe_state to fallback in case of bm_activity and use that state instead of C2. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 5062911830a66df0c0ad28c387a8c0623cb0d28c Author: Venkatesh Pallipadi Date: Mon Nov 19 19:49:00 2007 -0500 cpuidle: add sched_clock_idle_[sleep|wakeup]_event() hooks Port 2aa44d0567ed21b47b87d68819415d48194cb923 (sched: sched_clock_idle_[sleep|wakeup]_event()) to cpuidle. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit c9c860e5349ef62cd9226694b3aa625ef66f504e Author: Venkatesh Pallipadi Date: Mon Nov 19 19:48:00 2007 -0500 cpuidle: fix C3 for no bus-master control case Port 18eab8550397f1f3d4b8b2c5257c88dae25d58ed (Enable C3 even when PM2_control is zero) to cpuidle. Without this patch, some systems will notice a regression when enabling CPU_IDLE -- C3 would no longer be available. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 2a97468024fb5b6eccee2a67a7796485c829343a Author: Petr Tesarik Date: Tue Nov 20 02:24:08 2007 +0000 [CIFS] Fix spurious reconnect on 2nd peek from read of SMB length When retrying kernel_recvmsg() because of a short read, check returned length against the remaining length, not against total length. This avoids unneeded session reconnects which would otherwise occur when kernel_recvmsg() finally returns zero when asked to read zero bytes. Signed-off-by: Petr Tesarik Signed-off-by: Jeff Layton Signed-off-by: Steve French commit de0c74e7f98d8a06b784e120103eb388da8194f6 Author: Olof Johansson Date: Mon Nov 5 20:35:33 2007 -0600 [POWERPC] pasemi: Don't reset mpic at boot Due to an erratum, we don't want to reset the mpic at boot time. It can sometimes cause problems with lost interrupts later on while running. Signed-off-by: Olof Johansson commit b22da92f2cf52b3c51dd9a45abb658b1414b0784 Merge: 52142e7... 3d1d662... Author: Paul Mackerras Date: Tue Nov 20 11:39:26 2007 +1100 Merge branch 'for-2.6.24' of master.kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx into merge commit 52142e756e9bf6485d3d53596e8aff2e816a7253 Author: Benjamin Herrenschmidt Date: Mon Nov 19 19:25:06 2007 +1100 [POWERPC] Fix kmalloc alignment on non-coherent DMA platforms On platforms doing non-coherent DMA (4xx, 8xx, ...), it's important that the kmalloc minimum alignment is set to the cache line size, to avoid sharing cache lines between different objects, so that DMA to one of the objects doesn't corrupt the other. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit f9b6c1de697f07dd0fb1c79bb3a6a8aa302f7476 Author: Kamalesh Babulal Date: Mon Nov 19 17:44:05 2007 +1100 [POWERPC] Fix build failure on legacy iSeries Include in arch/powerpc/mm/stab.c to fix the following compile error (found with randconfig): CC arch/powerpc/mm/stab.o arch/powerpc/mm/stab.c: In function "stab_initialize": arch/powerpc/mm/stab.c:282: error: implicit declaration of function "HvCall1" arch/powerpc/mm/stab.c:282: error: "HvCallBaseSetASR" undeclared (first use in this function) arch/powerpc/mm/stab.c:282: error: (Each undeclared identifier is reported only once arch/powerpc/mm/stab.c:282: error: for each function it appears in.) make[1]: *** [arch/powerpc/mm/stab.o] Error 1 make: *** [arch/powerpc/mm] Error 2 Signed-off-by: Kamalesh Babulal Acked-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 59f91ff11e594913a5b3c03a4707fdf02338c8df Author: Henrique de Moraes Holschuh Date: Sun Nov 18 09:18:29 2007 -0200 ACPI: thinkpad-acpi: fix oops when a module parameter has no value set_ibm_param() could OOPS with a NULL pointer derreference if one did not give any values for a module parameter it handles. This would, of course, cause all sort of trouble for future modprobing and require a reboot to clean up properly. Fix it by returning -EINVAL if no values are given for the parameter, and also avoid any nastyness from BUG_ON while at it. How to reproduce: modprobe thinkpad-acpi brightness Signed-off-by: Henrique de Moraes Holschuh Tested-by: Mike Kershaw Signed-off-by: Len Brown commit 5fe619f983d6c7c0a578fcaabf80edd30e7ce46c Author: Takashi Iwai Date: Thu Nov 15 14:42:34 2007 +0100 [ALSA] ca0106 - Check value range in ctl callbacks Check the value ranges in ctl put callbacks properly. Some callbacks may access a wrong pointer depending on the value passed. Also, fixed the access to the wrong field for enum values, and fixed some callbacks to return the proper error code. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 7eba5c9dc3735b14e3df7366671adc15e0c8a048 Author: Takashi Iwai Date: Wed Nov 14 14:53:42 2007 +0100 [ALSA] hda-codec - Check PINCAP only for PIN widgets The recent addition of checking PINCAP for EAPD seems to break some systems due to unexpected response from the codec chip. We shouldn't issue GET_PINCAP verb to non-PIN widgets. Now checks the widget type before checking EAPD bit. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 60fac85fffc74cdd2fbdae821f269594ca25b6b1 Author: Clemens Ladisch Date: Mon Nov 12 08:47:57 2007 +0100 [ALSA] mpu401: fix recursive locking in timer When the output and input ports are used at the same time, the timer can be interrupted by the hardware interrupt, so we have to disable interrupts when we take a lock in the timer. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit 56c36ca3b2df3ad8f2a3b7d3fba3670695163aaa Author: Clemens Ladisch Date: Tue Oct 30 08:59:14 2007 +0100 [ALSA] cmipci: fix FLINKON/OFF bits Fix the definitions of the CM_FLINKON/CM_FLINKOFF register bits that were garbled in the last 'update register definitions' patch. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela commit d29240ce57d96db7300360d1e6f18357810a5c2b Author: Takashi Iwai Date: Fri Oct 26 12:35:56 2007 +0200 [ALSA] hda-codec - Disable shared stream on AD1986A AD1986A has a hardware problem that it cannot share a stream with multiple pins properly. The problem occurs e.g. when a volume is changed during playback. So far, hda-intel driver unconditionally assigns the stream to multiple output pins in copy-front mode, and this should be avoided for AD1986A codec. The original fix patch was by zhejiang . Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f0714d20234062bd0a8f49a6b32f7d1d7f3c2943 Author: Len Brown Date: Mon Nov 19 12:23:59 2007 -0500 Revert "Fix very high interrupt rate for IRQ8 (rtc) unless pnpacpi=off" This reverts commit 9cd8047b463f213c294f756119ac353312e7a152. commit 5870a8cd23181703cc76f88f630372f8602c7648 Author: Alexey Starikovskiy Date: Thu Nov 15 21:52:47 2007 +0300 ACPI: EC: Don't init EC early if it has no _INI Option to init EC early inserted to handle #8598 ASUS problem, introduced several others. EC driver in this particular case has fake _INI method, not present on other machines, which don't need or break from this workaround, so lets use its presence as a flag for early init. http://bugzilla.kernel.org/show_bug.cgi?id=9262 http://bugzilla.kernel.org/show_bug.cgi?id=8598 https://bugzilla.novell.com/show_bug.cgi?id=334806 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 65ea6520375cc09d19ecb46f03ab7ef70bcf06dd Author: Len Brown Date: Mon Nov 19 11:22:44 2007 -0500 Revert "acpi: make ACPI_PROCFS default to y" This reverts commit cbff2fbf55c21f50298b1aef1263b11bf510e35f. commit 3539a901d60ae84f8b0748cd26c1c263c2b3ef5f Author: Len Brown Date: Mon Nov 19 11:22:35 2007 -0500 Revert "ACPI: add documentation for deprecated /proc/acpi/battery in ACPI_PROCFS" This reverts commit 6e800af233e0bdf108efb7bd23c11ea6fa34cdeb. commit fdcedbba2f98c94bfbac9f6e712ab765f997b8dc Author: Alexey Starikovskiy Date: Mon Nov 19 16:33:45 2007 +0300 ACPI: Split out control for /proc/acpi entries from battery, ac, and sbs. Introduce new ACPI_PROCFS_POWER (default Yes) config option and move procfs code in battery, ac, and sbs drivers under it. This is done to allow ACPI_PROCFS to be default No. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 3d1d662ef423adf6947a37e230f4d7e8ed7c9544 Author: Josh Boyer Date: Sat Nov 17 04:29:56 2007 +1100 [POWERPC] 4xx: Use virtual PVR value to init FPU on arch/ppc 440EP This fixes arch/ppc 440EP platforms to setup the FPU correctly. A virtual PVR is used, as 440GR platforms share an identical hardware PVR value and do not have an FPU. Signed-off-by: Josh Boyer commit b8b799a497e4a4bfd5fca8abc526e908b26c71e8 Author: Valentine Barshak Date: Wed Nov 14 07:25:21 2007 +1100 [POWERPC] 4xx: UIC add mask_ack callback This adds uic_mask_ack_irq() callback to PowerPC 4xx uic code to avoid kernel crash. It is used for edge-triggered interrupts by handle_uic_irq(). Signed-off-by: Valentine Barshak Acked-by: David Gibson Signed-off-by: Josh Boyer commit 2ae24c521a9793e36b1a2311fa64915c2e7b1b7b Author: Roel Kluin <12o3l@tiscali.nl> Date: Thu Nov 8 09:22:48 2007 +1100 [POWERPC] 4xx: balance ioremap/ioumap calls for Yucca Call iounmap before returning from an error case. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Josh Boyer commit 221fe3a4be6aa742693f3a82824235c82d41846f Author: Joachim Foerster Date: Thu Nov 8 03:14:15 2007 +1100 [POWERPC] Xilinx: Register AC97 Controller Reference with the platform bus Add AC97 platform bus registration for Xilinx Virtex platforms. Signed-off-by: Joachim Foerster Signed-off-by: Grant Likely Signed-off-by: Josh Boyer commit ed08aff7bb1a275525c024dcba2e7127e77d4edd Author: Jon Loeliger Date: Wed Nov 7 05:13:04 2007 +1100 [POWERPC] 4xx: Replace #includes of asm/of_platform.h with linux/of_platform.h. Signed-off-by: Jon Loeliger Acked-by: Stephen Rothwell Signed-off-by: Josh Boyer commit c88c5786d3df51ccfa4e2d111fc9c8fc0f5b2797 Author: Danny Baumann Date: Fri Nov 2 13:47:53 2007 +0100 ACPI: Video: Increase buffer size for writes to brightness proc file. In order to be able to write the value "100" to /proc/acpi/video/.../brightness, we have to allocate 5 bytes: 4 characters will be written (1, 0, 0 plus null byte), and 1 byte should be buffer for a terminating NULL character. http://bugzilla.kernel.org/show_bug.cgi?id=9278 Signed-off-by: Danny Baumann Acked-by: Zhang Rui Signed-off-by: Len Brown commit f2d68935ba08cf80f151bbdb5628381184e4a498 Author: Alexey Starikovskiy Date: Mon Nov 19 01:37:03 2007 +0300 ACPI: EC: Workaround for optimized controllers Some controllers fail to send confirmation GPE after address write. Detect this and don't expect such confirmation in future. This is a generalization of previous workaround (66c5f4e7367b0085652931b2f3366de29e7ff5ec), which did only read address. http://bugzilla.kernel.org/show_bug.cgi?id=9327 Signed-off-by: Alexey Starikovskiy Tested-by: Romano Giannetti Signed-off-by: Len Brown commit 5131d4d83858e208f634622dc4a2e7042f796950 Author: Benjamin Herrenschmidt Date: Fri Nov 16 18:42:18 2007 +1100 [POWERPC] Fix declaration of pcibios_free_controller pcibios_free_controller() is now available for both 32 and 64 bits but the header only declares it for 64 bits. This moves the declaration down next to the pcibios_alloc_controller() one. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 0961dbfbb89276281b47e80a46071d876aebe7a3 Author: Mark A. Greer Date: Thu Nov 15 06:04:02 2007 +1100 [POWERPC] prpmc2800: Enable L2 cache Turn on the L2 cache on the prpmc2800 platform. Signed-off-by: Mark A. Greer commit 86932082547cd47e5ba4d66b52bd138aa06baae8 Author: Stephen Rothwell Date: Wed Nov 14 15:07:39 2007 +1100 [POWERPC] pSeries: make pseries_defconfig minus PCI build again Signed-off-by: Stephen Rothwell Acked-by: Linas Vepstas Signed-off-by: Paul Mackerras commit 8f5c7579caba587a72ed91c7d76028efb8adb168 Author: Nathan Lynch Date: Wed Nov 14 03:15:13 2007 +1100 [POWERPC] Fix multiple bugs in rtas_ibm_suspend_me code There are several issues with the rtas_ibm_suspend_me code, which enables platform-assisted suspension of an LPAR as covered in PAPR 2.2. 1.) rtas_ibm_suspend_me uses on_each_cpu() to invoke rtas_percpu_suspend_me on all cpus via IPI: if (on_each_cpu(rtas_percpu_suspend_me, &data, 1, 0)) ... 'data' is on the calling task's stack, but rtas_ibm_suspend_me takes no measures to ensure that all instances of rtas_percpu_suspend_me are finished accessing 'data' before returning. This can result in the IPI'd cpus accessing random stack data and getting stuck in H_JOIN. This is addressed by using an atomic count of workers and a completion on the stack. 2.) rtas_percpu_suspend_me is needlessly calling H_JOIN in a loop. The only event that can cause a cpu to return from H_JOIN is an H_PROD from another cpu or a NMI/system reset. Each cpu need call H_JOIN only once per suspend operation. Remove the loop and the now unnecessary 'waiting' state variable. 3.) H_JOIN must be called with MSR[EE] off, but lazy interrupt disabling may cause the caller of rtas_ibm_suspend_me to call H_JOIN with it on; the local_irq_disable() in on_each_cpu() is not sufficient. Fix this by explicitly saving the MSR and clearing the EE bit before calling H_JOIN. 4.) H_PROD is being called with the Linux logical cpu number as the parameter, not the platform interrupt server value. (It's also being called for all possible cpus, which is harmless, but unnecessary.) This is fixed by calling H_PROD for each online cpu using get_hard_smp_processor_id(cpu) for the argument. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit 843393d304ef4d44a8a5106e68dcd4eb1102437a Author: Paul Mundt Date: Mon Nov 19 13:11:04 2007 +0900 fb: Orphan imsttfb. I haven't had this hardware in years, so kill off my MAINTAINERS entry for this and flag it as orphaned. Signed-off-by: Paul Mundt commit a0ce9aca97ccf71dc969b44a4c9b3c36da0be362 Author: Tejun Heo Date: Mon Nov 19 12:06:37 2007 +0900 ata_piix: port enable for the first SATA controller of ICH8 is 0xf not 0x3 ICH8 and 9 use two SFF controllers to show 6 SATA ports. The first controllre hosts the first 4 ports while the second one hosts the last 2. The PCS register of the first controller encompasses the first four ports or all six ports depending on configuration while PCS of the second controller controls the last two ports. Using 0xf for the first controller and 0x3 for the second controller always result in the correct configuration. Signed-off-by: Tejun Heo commit 2cbb12a4ee0881a63f3c09178d4ac386d5073f64 Author: Paul Mundt Date: Mon Nov 19 13:08:37 2007 +0900 sh: Update mailing list info. DaveM has provided a vger list, update MAINTAINERS to reflect this. Also, rip out the sh64 entry (as this can just be rolled in to the general sh case), and add the git path. Signed-off-by: Paul Mundt commit 0f1a394ba68c4bbdedb1dbfdf6784ba54c07bbe4 Author: Paul Mundt Date: Mon Nov 19 13:05:18 2007 +0900 sh: lockless UTLB miss fast-path. With the refactored update_mmu_cache() introduced in older kernels, there's no longer any need to take the page_table_lock in this path, so simply drop it completely. Without this, performance degradation is seen on SMP on heavily threaded workloads that don't use the split ptlock, and ultimately we have no reason to contend for the lock in the first place. Signed-off-by: Paul Mundt commit 1c6b2ca5e0939bf8b5d1a11f1646f25189ecd447 Author: Paul Mundt Date: Mon Nov 19 13:00:32 2007 +0900 sh: Kill off UTLB flush in fast-path. The __do_page_fault() fast-path contains a UTLB flush in order to force an ITLB reload, this isn't needed in practice as the ITLB is auto-reloaded from the UTLB anyways, which is already displaced by the manual 'ldtlb' in the update_mmu_cache() path. This provides a measurable speed up in the TLB miss fast-path. Signed-off-by: Paul Mundt commit 0349337467dc6039dcfb225074944ae944e7b34e Author: Heiko Schocher Date: Sun Nov 11 13:17:44 2007 +0900 sh: Fix copy_{to,from}_user_page() with cache disabled. Signed-off-by: Heiko Schocher Signed-off-by: Paul Mundt commit 8d8ef2fb931d1035e1f02095086cfd3f78eafe3f Author: Thomas Rohwer Date: Mon Nov 19 11:54:24 2007 +0900 ata_piix: only enable the first port on apple macbook pro ICH8M on apple macbook pro occasionally locks up completely during PCS initialization if ports other than the first one are enabled. Add a separate controller ID and only enable the first port. tj: commit description added and patch updated to fit with the previous controller ID update. Signed-off-by: Thomas Rohwer Signed-off-by: Tejun Heo commit 00242ec87608d7a0ed989e54333f3fc8f3d665b0 Author: Tejun Heo Date: Mon Nov 19 11:24:25 2007 +0900 ata_piix: reorganize controller IDs Move piix_pata_mwdma to top, rename ich9_2port_sata to ich8_2port_sata for consistency and use automatically incremented values instead of assigning fixed values to ease adding new controller IDs. Signed-off-by: Tejun Heo commit 1f71d0672ac88e79f444d77102e05292dbc66d0d Author: Gabriel C Date: Thu Nov 15 13:14:00 2007 +0900 pata_sis.c: Add Packard Bell EasyNote K5305 to laptops With newer kernels HDD in my old laptop is limited to UDMA 33. With this patch I get UDMA 100 again. Signed-off-by: Gabriel Craciunescu Signed-off-by: Tejun Heo commit 607126c2a21cd6e9bb807fdd415c1a992f7b9009 Author: Mark Lord Date: Thu Nov 15 13:13:59 2007 +0900 libata-scsi: be tolerant of 12-byte ATAPI commands in 16-byte CDBs Sebastian Kemper reported that issuing CD/DVD commands under libata is not fully compatible with ide-scsi. In particular, the GPCMD_SET_STREAMING was being rejected at the host level in some instances. The reason is that libata-scsi insists upon the cmd_len field exactly matching the SCSI opcode being issued, whereas ide-scsi tolerates 12-byte commands contained within a 16-byte (cmd_len) CDB. There doesn't seem to be a good reason for us to not be compatible there, so here is a patch to fix libata-scsi to permit SCSI opcodes so long as they fit within whatever size CDB is provided. Signed-off-by: Mark Lord Signed-off-by: Tejun Heo commit f442cd86c1c86c5f44bc2cf23f89536f7e4cfe59 Author: Albert Lee Date: Thu Nov 15 10:35:47 2007 +0900 libata: use ATA_HORKAGE_STUCK_ERR for ATAPI tape drives Per Mark's comments, maybe all ATAPI tape drives need ATA_HORKAGE_STUCK_ERR. This patch applys ATA_HORKAGE_STUCK_ERR for all ATAPI tape drives. Signed-off-by: Albert Lee Cc: Mark Lord Signed-off-by: Tejun Heo commit 2d3b8eea7f2fbafd5d779cc92f7aedbd1ef575e9 Author: Albert Lee Date: Thu Nov 15 10:35:46 2007 +0900 libata: workaround DRQ=1 ERR=1 for ATAPI tape drives After an error condition, some ATAPI tape drives set DRQ=1 together with ERR=1 when asking the host to transfer the CDB of the next packet command (i.e. request sense). This patch, a revised version of Alan/Mark's previous patch, adds ATA_HORKAGE_STUCK_ERR to workaround the problem by ignoring the ERR bit and proceed sending the CDB. Signed-off-by: Albert Lee Cc: Alan Cox Cc: Mark Lord Signed-off-by: Tejun Heo commit 21bef6dd2b419f28c8096a8e30ad86dcbff44c02 Author: Adrian Bunk Date: Thu Nov 15 10:35:45 2007 +0900 libata: remove unused functions This patch removes the following obsolete functions: - libata-core.c: __sata_phy_reset() - libata-core.c: sata_phy_reset() - libata-eh.c: ata_qc_timeout() - libata-eh.c: ata_eng_timeout() Signed-off-by: Adrian Bunk Signed-off-by: Tejun Heo commit de753e5e8678d9674de0a3bda9ead9e770fdbf53 Author: Tejun Heo Date: Mon Nov 12 17:56:24 2007 +0900 ata_piix: add SATELLITE U205 to broken suspend list Satellite U205 has alternate product name where the satellite part is all capatalized. Add it to the blacklist. This is reported by Ross Patterson in kernel bugzilla bug #7780. Signed-off-by: Tejun Heo Cc: Ross Patterson commit 21df56c6e2372e09c916111efb6c14c372a5ab2e Author: Herbert Xu Date: Sun Nov 18 18:48:08 2007 -0800 [TCP]: Fix TCP header misalignment Indeed my previous change to alloc_pskb has made it possible for the TCP header to be misaligned iff the MTU is not a multiple of 4 (and less than a page). So I suspect the optimised IPsec MTU calculation is giving you just such an MTU :) This patch fixes it by changing alloc_pskb to make sure that the size is at least 32-bit aligned. This does not cause the problem fixed by the previous patch because max_header is always 32-bit aligned which means that in the SG/NOTSO case this will be a no-op. I thought about putting this in the callers but all the current callers are from TCP. If and when we get a non-TCP caller we can always create a TCP wrapper for this function and move the alignment over there. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 483b23ffa3a5f44767038b0a676d757e0668437e Author: Eric Dumazet Date: Fri Nov 16 02:29:24 2007 -0800 [NET]: Corrects a bug in ip_rt_acct_read() It seems that stats of cpu 0 are counted twice, since for_each_possible_cpu() is looping on all possible cpus, including 0 Before percpu conversion of ip_rt_acct, we should also remove the assumption that CPU 0 is online (or even possible) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b242e891c218162cfbae064b1a9136cdbed5ee53 Author: Ivo van Doorn Date: Thu Nov 15 23:41:31 2007 +0100 rt2x00: Request usb_maxpacket() once The usb max packet size won't change during the device's presence. We should store it in a variable inside rt2x00dev and use that. This should also fix a division error when the device is being hot-unplugged while a frame is being send out. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8329d98e480250ef5f5a083f9c3af50510b5e65d Author: Rusty Russell Date: Mon Nov 19 11:20:43 2007 -0500 virtio: fix net driver loop case where we fail to restart skb is only NULL the first time around: it's more correct to test for being under-budget. Signed-off-by: Rusty Russell commit 9a4b9708f1f2eaf5edd619df578cf3afec36eb82 Author: Matti Linnanvuori Date: Thu Nov 8 08:37:38 2007 -0800 module: fix and elaborate comments Fix and elaborate comments. Signed-off-by: Matti Linnanvuori Signed-off-by: Rusty Russell commit 74b2553f1d13e60fb27063204bd5b6908a6f8494 Author: Rusty Russell Date: Mon Nov 19 11:20:42 2007 -0500 virtio: fix module/device unloading The virtio code never hooked through the ->remove callback. Although noone supports device removal at the moment, this code is already needed for module unloading. This of course also revealed bugs in virtio_blk, virtio_net and lguest unloading paths. Signed-off-by: Rusty Russell commit d1c856e0f1a4c946c6329cff126548ef4288735f Author: Rusty Russell Date: Mon Nov 19 11:20:40 2007 -0500 lguest: Fix uninitialized members in example launcher Thanks valgrind! Signed-off-by: Rusty Russell commit 037cbc63fd83162a8ee0c69680207ce4609adbea Author: Jeff Garzik Date: Sun Nov 18 00:32:31 2007 +0300 ACPI: SBS: Fix retval warning drivers/acpi/sbs.c: In function acpi_battery_add: drivers/acpi/sbs.c:811: warning: ignoring return value of device_create_file, declared with attribute warn_unused_result Additional cleanups: * use struct acpi_battery in acpi_battery_remove() to clean up function calls, just like acpi_battery_add() already does. * put braces around unregister call, as it depends on dev being not NULL. * remove unneeded braces Signed-off-by: Jeff Garzik Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4c1fe2f78a08e2c514a39c91a0eb7b55bbd3c0d2 Author: Neil Brown Date: Thu Nov 1 16:50:20 2007 +1100 kernel BUG at fs/nfs/namespace.c:108! - can be triggered by bad server Hi Trond, I have discovered that the BUG_ON in nfs_follow_mountpoint: BUG_ON(IS_ROOT(dentry)); can be triggered by a misbehaving server. What happens is the client does a lookup and discoveres that the named directory has a different fsid, so it initiates a mount. It then performs a GETATTR on the mounted directory and gets a different fsid again (due to a bug in the NFS server). This causes nfs_follow_mountpoint to be called on the newly mounted root, which triggers the BUG_ON. To duplicate this, have a directory which contains some mountpoints, and export that directory with the "crossmnt" flag using nfs-utils 1.1.1 (or 1.1.0 I think) The GETATTR on the root of the mounted filesystem will return the information for the top exportpoint, while a lookup will return the correct information. This difference causes the NFS client to BUG. I think the best way to fix this is to trap this possibility early, so just before completing the mount in the NFS client, check that it isn't going to use nfs_mountpoint_inode_operations. As long as i_op will never change once set (is that true?), this should be adequately safe. The following patch shows a possible approach, and it works for me. i.e. when the NFS server is misbehaving, I get ESTALE on those mountpoints, while when the NFS server is working correctly, I get correct behaviour on the client. NeilBrown Signed-off-by: Neil Brown Signed-off-by: Trond Myklebust commit eda4f9b7996e5520934ca2a7310b363463a4e3b0 Author: J. Bruce Fields Date: Tue Nov 6 13:05:36 2007 -0500 sunrpc: rpc_pipe_poll may miss available data in some cases Pipe messages start out life on a queue on the inode, but when first read they're moved to the filp's private pointer. So it's possible for a poll here to return null even though there's a partially read message available. Signed-off-by: J. Bruce Fields Signed-off-by: Trond Myklebust commit ef338bee3f4f509e82066e100f76fecbbbbc4cca Author: Kevin Coffman Date: Fri Nov 9 18:42:09 2007 -0500 sunrpc: return error if unsupported enctype or cksumtype is encountered Return an error from gss_import_sec_context_kerberos if the negotiated context contains encryption or checksum types not supported by the kernel code. This fixes an Oops because success was assumed and later code found no internal_ctx_id. Signed-off-by: Kevin Coffman Signed-off-by: Trond Myklebust commit ffc40f569272b6be60c66441aeae79a686ff54d9 Author: Kevin Coffman Date: Fri Nov 9 18:42:04 2007 -0500 sunrpc: gss_pipe_downcall(), don't assume all errors are transient Instead of mapping all errors except EACCES to EAGAIN, map all errors except EAGAIN to EACCES. An example is user-land negotiating a Kerberos context with an encryption type that is not supported by the kernel code. (This can happen due to mis-configuration or a bug in the Kerberos code that does not honor our request to limit the encryption types negotiated.) This failure is not transient, and returning EAGAIN causes mount to continuously retry rather than giving up. Signed-off-by: Kevin Coffman Signed-off-by: Trond Myklebust commit b09b9417d074e01a4e4ab5c19358f1b3dc76c1b2 Author: Trond Myklebust Date: Thu Oct 25 13:56:10 2007 -0400 NFS: Fix the ustat() regression Since 2.6.18, the superblock sb->s_root has been a dummy dentry with a dummy inode. This breaks ustat(), which actually uses sb->s_root in a vfstat() call. Fix this by making the s_root a dummy alias to the directory inode that was used when creating the superblock. Signed-off-by: Trond Myklebust commit 2ffbb8377c7a0713baf6644e285adc27a5654582 Merge: 6840999... 80ef88d... Author: Linus Torvalds Date: Sat Nov 17 08:36:10 2007 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: simplify "make ARCH=x86" and fix kconfig all.config x86: reboot fixup for wrap2c board x86: check boundary in count setup resource x86: fix reboot with no keyboard attached x86: add hpet sanity checks x86: on x86_64, correct reading of PC RTC when update in progress in time_64.c x86: fix freeze in x86_64 RTC update code in time_64.c ntp: fix typo that makes sync_cmos_clock erratic Remove x86 merge artifact from top Makefile x86: fixup cpu_info array conversion x86: show cpuinfo only for online CPUs x86: fix cpu-hotplug regression x86: ignore the sys_getcpu() tcache parameter x86: voyager use correct header file name x86: fix smp init sections x86: fix voyager_cat_init section x86: fix bogus memcpy in es7000_check_dsdt() commit 6840999b192b1b57d713ddee3761c457a2779036 Author: Sam Ravnborg Date: Sat Nov 17 15:37:31 2007 +0100 x86: simplify "make ARCH=x86" and fix kconfig all.config Simplify "make ARCH=x86" and fix kconfig so we again can set 64BIT in all.config. For a fix the diffstat is nice: 6 files changed, 3 insertions(+), 36 deletions(-) The patch reverts these commits: - 0f855aa64b3f63d35a891510cf7db932a435c116 ("kconfig: add helper to set config symbol from environment variable") - 2a113281f5cd2febbab21a93c8943f8d3eece4d3 ("kconfig: use $K64BIT to set 64BIT with all*config targets") Roman Zippel pointed out that kconfig supported string compares so the additional complexity introduced by the above two patches were not needed. With this patch we have following behaviour: # make {allno,allyes,allmod,rand}config [ARCH=...] option \ host arch | 32bit | 64bit ===================================================== ./. | 32bit | 64bit ARCH=x86 | 32bit | 32bit ARCH=i386 | 32bit | 32bit ARCH=x86_64 | 64bit | 64bit The general rule are that ARCH= and native architecture takes precedence over the configuration. So make ARCH=i386 [whatever] will always build a 32-bit kernel no matter what the configuration says. The configuration will be updated to 32-bit if it was configured to 64-bit and the other way around. This behaviour is consistent with previous behaviour so no suprises here. make ARCH=x86 will per default result in a 32-bit kernel but as the only ARCH= value x86 allow the user to select between 32-bit and 64-bit using menuconfig. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Cc: Andreas Herrmann Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Signed-off-by: Linus Torvalds commit 90c7f4686f82aef875aadf8e5c9c1a9465e5143b Author: Robin Getz Date: Sun Nov 18 00:35:33 2007 +0800 Blackfin arch: cleanup kernel exception message, don't insult the customer. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 80ef88d6d23bf1b94d65db0ac32334d01b9f7350 Author: Sam Ravnborg Date: Sat Nov 17 15:37:31 2007 +0100 x86: simplify "make ARCH=x86" and fix kconfig all.config Simplify "make ARCH=x86" and fix kconfig so we again can set 64BIT in all.config. For a fix the diffstat is nice: 6 files changed, 3 insertions(+), 36 deletions(-) The patch reverts these commits: 0f855aa64b3f63d35a891510cf7db932a435c116 -> kconfig: add helper to set config symbol from environment variable 2a113281f5cd2febbab21a93c8943f8d3eece4d3 -> kconfig: use $K64BIT to set 64BIT with all*config targets Roman Zippel pointed out that kconfig supported string compares so the additional complexity introduced by the above two patches were not needed. With this patch we have following behaviour: # make {allno,allyes,allmod,rand}config [ARCH=...] option \ host arch | 32bit | 64bit ===================================================== ./. | 32bit | 64bit ARCH=x86 | 32bit | 32bit ARCH=i386 | 32bit | 32bit ARCH=x86_64 | 64bit | 64bit The general rule are that ARCH= and native architecture takes precedence over the configuration. So make ARCH=i386 [whatever] will always build a 32-bit kernel no matter what the configuration says. The configuration will be updated to 32-bit if it was configured to 64-bit and the other way around. This behaviour is consistent with previous behaviour so no suprises here. make ARCH=x86 will per default result in a 32-bit kernel but as the only ARCH= value x86 allow the user to select between 32-bit and 64-bit using menuconfig. Signed-off-by: Sam Ravnborg Cc: Roman Zippel Cc: Andreas Herrmann Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" commit af8a5af3ff73055f7554a3a66307ad58792f09d5 Author: Bernd Schmidt Date: Sun Nov 18 00:09:49 2007 +0800 Blackfin arch: fix bug kernel not to boot up with mtd filesystems Revert this patch: move the init sections to the end of memory, so that after they are free, run time memory is all continugous - this should help decrease memory fragementation. When doing this, we also pack some of the other sections a little closer together, to make sure we don't waste memory. To make this happen, we need to rename the .data.init_task section to .init_task.data, so it doesn't get picked up by the linker script glob. Since it causes the kernel not to boot up with mtd filesystems. Signed-off-by: Bernd Schmidt Signed-off-by: Bryan Wu commit a961d659637b7d77c916597017e2e3730859c333 Author: Jie Zhang Date: Sun Nov 18 00:00:10 2007 +0800 Blackfin arch: More explicitly describe what the instructions do in inline assembly. Signed-off-by: Jie Zhang Signed-off-by: Bryan Wu commit 561cc18b8696fd41367544f45542c096fa08d878 Author: Michael Hennerich Date: Sat Nov 17 23:56:08 2007 +0800 Blackfin arch: add AXIS AX88180 Gigabit Ethernet Hardware and Driver to board files Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 4c26c6c9bf1837ef413c18055d38f0b70af8574e Author: Robin Getz Date: Sun Nov 18 00:20:49 2007 +0800 Blackfin arch: print out modules that are loaded if we get a kernel oops Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 5c91fb902d4e6f6006faf45edd3f25932cb7d58c Author: Michael Hennerich Date: Sat Nov 17 23:46:58 2007 +0800 Blackfin arch: Add assembly function insl_16 /* * CPUs often take a performance hit when accessing unaligned memory * locations. The actual performance hit varies, it can be small if the * hardware handles it or large if we have to take an exception and fix * it * in software. * * Since an ethernet header is 14 bytes network drivers often end up * with * the IP header at an unaligned offset. The IP header can be aligned by * shifting the start of the packet by 2 bytes. Drivers should do this * with: * * skb_reserve(NET_IP_ALIGN); * * The downside to this alignment of the IP header is that the DMA is * now * unaligned. On some architectures the cost of an unaligned DMA is high * and this cost outweighs the gains made by aligning the IP header. * * Since this trade off varies between architectures, we allow * NET_IP_ALIGN * to be overridden. */ This new function insl_16 allows to read form 32-bit IO and writes to 16-bit aligned memory. This is useful in above described scenario - In particular with the AXIS AX88180 Gigabit Ethernet MAC. Once the device is in 32-bit mode, reads from the RX FIFO always decrements 4bytes. While on the other side the destination address in SDRAM is always 16-bit aligned. If we use skb_reserve(0) the receive buffer is 32-bit aligned but later we hit a unaligned exception in the IP code. Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 1754a5d9f97f16f729066b8f125351af4951d6fe Author: Mike Frysinger Date: Fri Nov 23 11:28:11 2007 +0800 Blackfin arch: use do_div() for the 64bit division as pointed out by Bernd If you need a 64 bit divide in the kernel, use asm/div64.h. Revert the addition of udivdi3. Cc: Bernd Schmidt Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 6d1b30e30ca1c831b82c44aedd2536820bdb2bc4 Author: Denys Date: Sat Nov 17 16:27:02 2007 +0100 x86: reboot fixup for wrap2c board Needed to make the wireless board, WRAP2C reboot. Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit 3d9befd2cdf65b1768b0d3078a65cc0ae9aa6412 Author: Yinghai Lu Date: Sat Nov 17 16:27:01 2007 +0100 x86: check boundary in count setup resource need to check info->res_num less than PCI_BUS_NUM_RESOURCES, so info->bus->resource[info->res_num] = res will not beyond of bus resource array when acpi returns too many resource entries. Signed-off-by: Yinghai Lu Cc: Greg Kroah-Hartman Cc: Gary Hade Cc: Len Brown Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit 05dfa35e84331c6921ab394463069e9376f0bd76 Author: Truxton Fulton Date: Sat Nov 17 16:27:01 2007 +0100 x86: fix reboot with no keyboard attached Attempt to fix http://bugzilla.kernel.org/show_bug.cgi?id=8378 Hiroto Shibuya wrote to tell me that he has a VIA EPIA-EK10000 which suffers from the reboot problem when no keyboard is attached. My first patch works for him: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59f4e7d572980a521b7bdba74ab71b21f5995538 But the latest patch does not work for him : http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8b93789808756bcc1e5c90c99f1b1ef52f839a51 We found that it was necessary to also set the "disable keyboard" flag in the command byte, as the first patch was doing. The second patch tries to minimally modify the command byte, but it is not enough. Please consider this simple one-line patch to help people with low end VIA motherboards reboot when no keyboard is attached. Hiroto Shibuya has verified that this works for him (as I no longer have an afflicted machine). Additional discussion: Note that original patch from Truxton DOES disable keyboard and this has been in main tree since 2.6.14, thus it must have quite a bit of air time already. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.14.y.git;a=commit;h=59f4e7d572980a521b7bdba74ab71b21f5995538 Note that he only mention "System flag" in the description and comment, but in the code, "disable keyboard" flag is set. outb(0x14, 0x60); /* set "System flag" */ In 2.6.23, he made a change to read the current byte and then mask the flags, but along this change, he only set the "System flag" and dropped the setting of "disable keyboard" flag. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.23.y.git;a=commit;h=8b93789808756bcc1e5c90c99f1b1ef52f839a51 outb(cmd | 0x04, 0x60); /* set "System flag" */ So my request is to restore the setting of disable keyboard flag which has been there since 2.6.14 but disappeared in 2.6.23. Cc: Lee Garrett Cc: "Hiroto Shibuya" Cc: Natalie Protasevich Cc: Dmitry Torokhov Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Aristeu Rozanski Cc: Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit f4df73c2914a49bf6a55896aaecb0563c955e167 Author: Thomas Gleixner Date: Thu Nov 15 21:41:50 2007 -0500 x86: add hpet sanity checks Some BIOSes advertise HPET at 0x0. We really do no want to allocate a resource there. Check for it and leave early. Other BIOSes tell us the HPET is at 0xfed0000000000000 instead of 0xfed00000. Add a check and fix it up with a warning on user request. Signed-off-by: Thomas Gleixner commit bbbd99955bfe84c9ae63f51db946a7bcd21f48be Author: David P. Reed Date: Wed Nov 14 20:14:50 2007 -0500 x86: on x86_64, correct reading of PC RTC when update in progress in time_64.c Correct potentially unstable PC RTC time register reading in time_64.c Stop the use of an incorrect technique for reading the standard PC RTC timer, which is documented to "disconnect" time registers from the bus while updates are in progress. The use of UIP flag while interrupts are disabled to protect a 244 microsecond window is one of the Motorola spec sheet's documented ways to read the RTC time registers reliably. tglx: removed locking changes from original patch, as they gain nothing (read_persistent_clock is only called during boot, suspend, resume - so no hot path affected) and conflict with the paravirt locking scheme (see 32bit code), which we do not want to complicate for no benefit. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit c399da0d97e06803e51085ec076b63a3168aad1b Author: David P. Reed Date: Wed Nov 14 17:47:35 2007 -0500 x86: fix freeze in x86_64 RTC update code in time_64.c Fix hard freeze on x86_64 when the ntpd service calls update_persistent_clock() A repeatable but randomly timed freeze has been happening in Fedora 6 and 7 for the last year, whenever I run the ntpd service on my AMD64x2 HP Pavilion dv9000z laptop. This freeze is due to the use of spin_lock(&rtc_lock) under the assumption (per a bad comment) that set_rtc_mmss is called only with interrupts disabled. The call from ntp.c to update_persistent_clock is made with interrupts enabled. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit fa6a1a554b50cbb7763f6907e6fef927ead480d9 Author: David P. Reed Date: Wed Nov 14 17:49:21 2007 -0500 ntp: fix typo that makes sync_cmos_clock erratic Fix a typo in ntp.c that has caused updating of the persistent (RTC) clock when synced to NTP to behave erratically. When debugging a freeze that arises on my AMD64 machines when I run the ntpd service, I added a number of printk's to monitor the sync_cmos_clock procedure. I discovered that it was not syncing to cmos RTC every 11 minutes as documented, but instead would keep trying every second for hours at a time. The reason turned out to be a typo in sync_cmos_clock, where it attempts to ensure that update_persistent_clock is called very close to 500 msec. after a 1 second boundary (required by the PC RTC's spec). That typo referred to "xtime" in one spot, rather than "now", which is derived from "xtime" but not equal to it. This makes the test erratic, creating a "coin-flip" that decides when update_persistent_clock is called - when it is called, which is rarely, it may be at any time during the one second period, rather than close to 500 msec, so the value written is needlessly incorrect, too. Signed-off-by: David P. Reed Signed-off-by: Thomas Gleixner commit d0974b11e0741034fc5d22838b9cb85402a280d6 Author: Thomas Gleixner Date: Thu Nov 15 07:11:12 2007 +0100 Remove x86 merge artifact from top Makefile The x86 merge modified the tags target to handle the two separate source directories. Remove it now that i386/x86_64 are gone completely. Signed-off-by: Thomas Gleixner commit 699d934d5f958d7944d195c03c334f28cc0b3669 Author: Thomas Gleixner Date: Sat Nov 17 13:18:42 2007 +0100 x86: fixup cpu_info array conversion 92cb7612aee39642d109b8d935ad265e602c0563 sets cpu_info->cpu_index to zero for no reason. Referencing cpu_info->cpu_index now points always to CPU#0, which is apparently not what we want. Remove it. Spotted-by: Zou Nan hai Signed-off-by: Thomas Gleixner commit c0c52d28e05e8bdaa2126570c02ecb1a7358cecc Author: Andreas Herrmann Date: Thu Nov 1 19:32:17 2007 +0100 x86: show cpuinfo only for online CPUs Fix regressions introduced with 92cb7612aee39642d109b8d935ad265e602c0563. It can happen that cpuinfo is displayed for CPUs that are not online or even worse for CPUs not present at all. As an example, following was shown for a "second" CPU of a single core K8 variant: processor : 0 vendor_id : unknown cpu family : 0 model : 0 model name : unknown stepping : 0 cache size : 0 KB fpu : yes fpu_exception : yes cpuid level : 0 wp : yes flags : bogomips : 0.00 clflush size : 0 cache_alignment : 0 address sizes : 0 bits physical, 0 bits virtual power management: Signed-off-by: Andreas Herrmann Signed-off-by: Thomas Gleixner commit 903675569e278af86aa08c2af238b0ab997065d1 Author: Andreas Herrmann Date: Wed Nov 7 02:12:58 2007 +0100 x86: fix cpu-hotplug regression Commit d435d862baca3e25e5eec236762a43251b1e7ffc ("cpu hotplug: mce: fix cpu hotplug error handling") changed the error handling in mce_cpu_callback. In cases where not all CPUs are brought up during boot (e.g. using maxcpus and additional_cpus parameters) mce_cpu_callback now returns NOTFIY_BAD because for such CPUs cpu_data is not completely filled when the notifier is called. Thus mce_create_device fails right at its beginning: if (!mce_available(&cpu_data[cpu])) return -EIO; As a quick fix I suggest to check boot_cpu_data for MCE. To reproduce this regression: (1) boot with maxcpus=2 addtional_cpus=2 on a 4 CPU x86-64 system (2) # echo 1 >/sys/devices/system/cpu/cpu2/online -bash: echo: write error: Invalid argument dmesg shows: _cpu_up: attempt to bring up CPU 2 failed Signed-off-by: Andreas Herrmann Signed-off-by: Thomas Gleixner commit 4307d1e5ada595c87f9a4d16db16ba5edb70dcb1 Author: Ingo Molnar Date: Wed Nov 7 18:37:48 2007 +0100 x86: ignore the sys_getcpu() tcache parameter dont use the vgetcpu tcache - it's causing problems with tasks migrating, they'll see the old cache up to a jiffy after the migration, further increasing the costs of the migration. In the worst case they see a complete bogus information from the tcache, when a sys_getcpu() call "invalidated" the cache info by incrementing the jiffies _and_ the cpuid info in the cache and the following vdso_getcpu() call happens after vdso_jiffies have been incremented. Signed-off-by: Ingo Molnar Signed-off-by: Ulrich Drepper Signed-off-by: Thomas Gleixner commit 434b3d3209a8d8dcda63c3b14815659f4671b0a8 Author: Randy Dunlap Date: Sun Nov 11 21:06:02 2007 -0800 x86: voyager use correct header file name Fix header file name for Voyager build. In file included from arch/x86/kernel/setup_32.c:61: include/asm-x86/mach-voyager/setup_arch.h:2:26: error: asm/setup_32.h: No such file or directory make[1]: *** [arch/x86/kernel/setup_32.o] Error 1 Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit 8f8182106890970bb13bed325f0a04aef931883d Author: Randy Dunlap Date: Sun Nov 11 21:06:45 2007 -0800 x86: fix smp init sections Fix Voyager section mismatch due to using __devinit instead of __cpuinit. WARNING: vmlinux.o(.text+0xd943): Section mismatch: reference to .init.text:init_gdt (between 'voyager_smp_prepare_boot_cpu' and 'smp_vic_cmn_interrupt') Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit e5ef67ef0b5d96315d3f7b74823cbfa85938a3a8 Author: Randy Dunlap Date: Sun Nov 11 21:06:23 2007 -0800 x86: fix voyager_cat_init section Fix Voyager section mismatches: voyager_cat_init() should be __init. WARNING: vmlinux.o(.text+0xee83): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeea6): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeeac): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xeeb2): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xef4c): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xef56): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf10f): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf13b): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf14b): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf159): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1b1): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1bb): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1c1): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1c7): Section mismatch: reference to .init.data:eprom_buf (between 'voyager_cat_init' and 'aes_enc_blk') WARNING: vmlinux.o(.text+0xf1e6): Section mismatch: reference to .init.data: (between 'voyager_cat_init' and 'aes_enc_blk') Signed-off-by: Randy Dunlap Signed-off-by: Thomas Gleixner commit 142d0a674d50b53366bd5ea02d7093d04960744e Author: Thomas Gleixner Date: Wed Nov 14 13:20:48 2007 +0100 x86: fix bogus memcpy in es7000_check_dsdt() es7000_check_dst() contains a memcpy from 0, which probably should have been a memset. Remove it and check the retunr value from acpi_get_table_header. Noticed by: Joe Perches Signed-off-by: Thomas Gleixner commit e709d84b99e03b0ff588d7754754c507e5543fc9 Author: Mike Frysinger Date: Sat Nov 17 23:24:07 2007 +0800 Blackfin arch: fix spurious newline in header Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8d2e24c3c1ecac394c3a9a1514bc883a868851d6 Author: Adrian Bunk Date: Sat Nov 17 23:05:06 2007 +0800 Blackfin arch: unexport get_wchan The only user of get_wchan I was able to find is the proc fs - and proc can't be built modular. Signed-off-by: Adrian Bunk Signed-off-by: Bryan Wu commit 05c484355fa6b22af5c1c96db154f108f8b5c625 Author: Adrian Bunk Date: Sun Nov 18 00:41:56 2007 +0800 Blackfin arch: remove dump_thread() The only user is the a.out support. It was therefore removed prior to the blackfin merge from all architectures not supporting a.out. Currently, Blackfin doesn't suppport a.out. Signed-off-by: Adrian Bunk Signed-off-by: Bryan Wu commit 09db9487b099bb18089cc9bff321a84e7494ec50 Author: Robert P. J. Day Date: Sat Nov 17 22:57:03 2007 +0800 Blackfin arch: Typo: "CONFIG_RTC_BFIN_MODULE" -> "CONFIG_RTC_DRV_BFIN_MODULE" i'm *reasonably* confident that this is a typo that should be fixed. Signed-off-by: Robert P. J. Day Signed-off-by: Bryan Wu commit f79f06ab9f86d7203006d2ec8992ac80df36a34e Author: Zhao Yakui Date: Thu Nov 15 17:06:36 2007 +0800 ACPI: Enable MSR (FixedHW) support for T-States Add throttling control via MSR when T-states uses the FixHW Control Status registers. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 0ac3c571315a53c14d2733564f14ebdb911fe903 Author: Zhao Yakui Date: Thu Nov 15 17:05:46 2007 +0800 ACPI: Get throttling info from BIOS only after evaluating _PDC Previously _PDC was evaluated later, and thus we'd not get the chance to tell the BIOS that we can suport FixedHW registers (MSRs) and the BIOS would always ask us to use System I/O access for throttling. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 9bcb27217344c2c1389db3983a436e19484c2f50 Author: Zhao Yakui Date: Thu Nov 15 17:05:05 2007 +0800 ACPI: Use _TSS for throttling control, when present. Add error checks. _TSS was erroneously ignored, in favor of the FADT. When TSS is used, the access width is included in the PTC control/status register. So it is unnecessary that the access bit width is multiplied by 8. At the same time the bit_offset should be considered for system I/O Access. It should be checked the bit_width and bit_offset of PTC regsiter in order to avoid the failure of system I/O access. It means that bit_width plus bit_offset can't be greater than 32. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 0753f6e0a3d9568fb6b8e34753b944d9f8eed05b Author: Zhao Yakui Date: Thu Nov 15 17:03:46 2007 +0800 ACPI: throttle: Change internal APIs better handle _PTC Change the function interface for throttling control via PTC. The following functions are concerned: acpi_read_throttling_status() acpi_write_throttling_state() acpi_get_throttling_value() acpi_get_throttling_state() Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 22cc50199d0616f7b002563a0e9117ba479356e1 Author: Zhao Yakui Date: Thu Nov 15 17:02:03 2007 +0800 ACPI: If _TSS exists, do not access FADT.duty_width Factor out legacy FADT.duty_width code and run it only in the non _TSS case. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 49fbabf56dc715bbb51e59742e82ba762790aac0 Author: Zhao Yakui Date: Thu Nov 15 17:01:06 2007 +0800 ACPI: Handle I/O access width requestst that are not a multiple of 8 bits. We've run into BIOS that hand us 4-bit access width requests for T-state control when the code expected only multipls of 8-bits. Round up. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit ef54d5ad2f58f899be6419fd1090cdeb2439851a Author: Zhao Yakui Date: Thu Nov 15 16:59:30 2007 +0800 ACPI: Enforce T-state limit changes immediately When a T-state limit change notification is received, Linux must evaluate _TPC and change its current T-state immediately to comply with the new limit. Previously, Linux would notice the new limit only upon the next throttling change. Signed-off-by: Zhao Yakui Signed-off-by: Li Shaohua Signed-off-by: Len Brown commit 55b8d50c1a7b2d53eddaa3114dc55b0ed00df0f3 Author: Adrian Bunk Date: Fri Nov 9 07:02:11 2007 +0100 x86: acpi_pciprobe_dmi_table[] must be __devinitdata This patch fixes the following section mismatches with CONFIG_HOTPLUG=n: <-- snip --> ... WARNING: vmlinux.o(.data+0x23640): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') WARNING: vmlinux.o(.data+0x2366c): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') WARNING: vmlinux.o(.data+0x23698): Section mismatch: reference to .init.text.20:can_skip_ioresource_align (between 'acpi_pciprobe_dmi_table' and 'pcibios_irq_mask') ... <-- snip --> Signed-off-by: Adrian Bunk Signed-off-by: Len Brown commit 16ee2db63ef78c387bdda6e0cde3a2051518b6cf Author: Adrian Bunk Date: Fri Nov 9 07:03:13 2007 +0100 x86_64: remove acpi_pci_link_exit() acpi_pci_link_exit() is both unused and empty. Signed-off-by: Adrian Bunk Signed-off-by: Len Brown commit f7a44eadd5a03b8455c7caab402ce96811c6903d Author: Steve French Date: Sat Nov 17 00:01:51 2007 +0000 [CIFS] remove build warning CC: Jeff Layton Signed-off-by: Steve French commit 2442421b176420eca7cb68c575fc221332f488d8 Author: Steve French Date: Fri Nov 16 23:37:35 2007 +0000 [CIFS] Have CIFS_SessSetup build correct SPNEGO SessionSetup request Have CIFS_SessSetup call cifs_get_spnego_key when Kerberos is negotiated. Use the info in the key payload to build a session setup request packet. Also clean up how the request buffer in the function is freed on error. With appropriate user space helper (in samba/source/client). Kerberos support (secure session establishment can be done now via Kerberos, previously users would have to use NTLMv2 instead for more secure session setup). Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 8840dee9dc53883883c321d2811e9f87700d9350 Author: Steve French Date: Fri Nov 16 23:05:52 2007 +0000 [CIFS] minor checkpatch cleanup Signed-off-by: Steve French commit d6c2e4d02b72d8ae63784bdc57cfa285128de211 Author: Jeff Layton Date: Fri Nov 16 22:23:17 2007 +0000 [CIFS] have cifs_get_spnego_key get the hostname from TCP_Server_Info Signed-off-by: Jeff Layton Signed-off-by: Steve French commit c359cf3c61c6ea9f4f461a8bd22023a15d75d9b5 Author: Jeff Layton Date: Fri Nov 16 22:22:06 2007 +0000 [CIFS] add hostname field to TCP_Server_Info struct ...and populate it with the hostname portion of the UNC string. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 70fe7dc05596a405ee6a83265f675a544e32f7d8 Author: Jeff Layton Date: Fri Nov 16 22:21:07 2007 +0000 [CIFS] clean up error handling in cifs_mount Move all of the kfree's sprinkled in the middle of the function to the end, and have the code set rc and just goto there on error. Also zero out the password string before freeing it. Looks like this should also fix a potential memory leak of the prepath string if an error occurs near the end of the function. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 68bf728a225b7f2045bb501854d6e7695b9b015d Author: Steve French Date: Fri Nov 16 18:32:52 2007 +0000 [CIFS] add ver= prefix to upcall format version Acked-by: Jeff Layton Acked-by: Igor Mammedov Signed-off-by: Steve French commit c7d4896621d42c84956911afd5f10a5d317c781a Author: Michael Hennerich Date: Thu Nov 15 21:33:31 2007 +0800 Blackfin arch: Dont use cs_change_per_word, since the AD7877 driver doesnt require it anymore; fix bus numbers, fix typos Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit f02bcec5986870b3ddae26f6be1cde0703abfd8a Author: Mike Frysinger Date: Thu Nov 15 21:29:15 2007 +0800 Blackfin arch: relocate linux/usb_isp1362.h to linux/usb/isp1362.h like in newer linux trees Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 632f658b36c83a7d1b99118ecdfc6835edec66ac Author: Mike Frysinger Date: Thu Nov 15 21:25:47 2007 +0800 Blackfin arch: the usb_sl811.h header has been moved to usb/sl811.h so lets use that version now Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 70b63ba73944fc094e9fddfcbb94799c6ee4c501 Author: Mike Frysinger Date: Thu Nov 15 21:22:53 2007 +0800 Blackfin arch: do not include linux/autoconf.h Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 9862cc5278aabd82230369a142c817e37a42caa3 Author: Mike Frysinger Date: Thu Nov 15 21:21:20 2007 +0800 Blackfin arch: change get_bf537_ether_addr() to bfin_get_ether_addr() since this is not BF537 specific and to better match other Blackfin-specific conventions Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 137b1529da492baa654c702ecb60bb950eccb98d Author: Mike Frysinger Date: Thu Nov 22 16:07:03 2007 +0800 Blackfin arch: sharing the board-specific MAC function does not make sense so move it into board-specific files Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b33d51877726b066699b9ee40b5f512c77bdca38 Author: Mike Frysinger Date: Thu Nov 15 21:15:47 2007 +0800 Blackfin arch: fix double fault definition for BF561 core A and core B VDSP has double fault on core a/b inverted for BF561 -- bit 11 is core a while bit 12 is core b Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit a055b2b4de214d7c3c5382ba7e7c65d1476826b3 Author: Mike Frysinger Date: Thu Nov 15 21:12:32 2007 +0800 Blackfin arch: remove useless CONFIG_IRQCHIP_DEMUX_GPIO since we have this always turned on now and dont want it off (and hasnt been an option in a while) Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 0feea17f9401efe4a214db6f43e7208ae8331081 Author: Mike Frysinger Date: Thu Nov 15 21:10:42 2007 +0800 Blackfin arch: fix missing newline to file Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 7c7fd170172fef30e58fc37140471384906b75e0 Author: Mike Frysinger Date: Thu Nov 15 21:10:21 2007 +0800 Blackfin arch: add BF547 to list of accepted procs Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 839e01c2bfba34f97ec36d0d355801e94254ffd5 Author: Robin Getz Date: Thu Nov 15 20:57:53 2007 +0800 Blackfin arch: move the init sections to the end of memory to help decrease memory fragementation move the init sections to the end of memory, so that after they are free, run time memory is all continugous - this should help decrease memory fragementation. When doing this, we also pack some of the other sections a little closer together, to make sure we don't waste memory. To make this happen, we need to rename the .data.init_task section to .init_task.data, so it doesn't get picked up by the linker script glob. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 74ce8322bf8843e6fd04e081d361c107bcf73564 Author: Mike Frysinger Date: Wed Nov 21 23:50:49 2007 +0800 Blackfin arch: split debug stuff off into Kconfig.debug like everyone else Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 529a73fbaeee2f3bd932be8b54665994133be6ae Author: Mike Frysinger Date: Fri Nov 23 14:28:44 2007 +0800 Blackfin arch: punt CONFIG_BFIN -- we already have CONFIG_BLACKFIN Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit e4e9a7adebfc01bfa2a46c76615c249a4082dfec Author: Mike Frysinger Date: Thu Nov 15 20:39:34 2007 +0800 Blackfin arch: fix indentation -- use tabs, not spaces Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 4f25eb85d64640bc656e72917113a84701521b99 Author: Mike Frysinger Date: Thu Nov 15 20:49:44 2007 +0800 Blackfin arch: split board selection off into mach subdirs Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d07f4380313f3b15eb05797ddfb9a57419178846 Author: Mike Frysinger Date: Thu Nov 15 15:49:17 2007 +0800 Blackfin arch: fix silicon rev display and selection for BF52x/BF54x Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit a4f0c2767e9c55123d7dad7176554e9d6e6056bc Author: Len Brown Date: Wed Nov 14 12:49:13 2007 -0500 ACPI: video - delete stray run-time printk printk("video bus notify\n"); Acked-by: Zhang Rui Signed-off-by: Len Brown commit bbac81f5487175e4bd5602a80c17689d8f82a63e Author: Dmitry Torokhov Date: Mon Nov 5 11:43:32 2007 -0500 ACPI: video - convert semaphore to a mutex Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit ff102ea99099c36250e93a87a9794b5233801020 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:31 2007 -0500 ACPI: video - remove unsafe uses of list_for_each_safe() list_for_each_safe() only protects list from list alterations performed by the same thread. One still needs to implement proper locking when list is being accessed from several threads. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit f51e83916a0a022d3d0ea39ae2f877c703032923 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:30 2007 -0500 ACPI: video - add missing input_free_device() If input_register_device() fails input_free_device() must be called to release memory allocated for the device. Also consolidate error handling in acpi_bus_video_add() and handle input_allocate_device() failures. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit 91c05c667b2d8e43e0bbc5f269bf45d4821001d6 Author: Dmitry Torokhov Date: Mon Nov 5 11:43:29 2007 -0500 ACPI: video - fit input device into sysfs tree Properly set up parent on input device registered by the video driver. Signed-off-by: Dmitry Torokhov Acked-by: Zhang Rui Signed-off-by: Len Brown commit 133672efbc1085f9af990bdc145e1822ea93bcf3 Author: Steve French Date: Tue Nov 13 22:41:37 2007 +0000 [CIFS] Fix buffer overflow if server sends corrupt response to small request In SendReceive() function in transport.c - it memcpy's message payload into a buffer passed via out_buf param. The function assumes that all buffers are of size (CIFSMaxBufSize + MAX_CIFS_HDR_SIZE) , unfortunately it is also called with smaller (MAX_CIFS_SMALL_BUFFER_SIZE) buffers. There are eight callers (SMB worker functions) which are primarily affected by this change: TreeDisconnect, uLogoff, Close, findClose, SetFileSize, SetFileTimes, Lock and PosixLock CC: Dave Kleikamp CC: Przemyslaw Wegrzyn Acked-by: Jeff Layton Signed-off-by: Steve French commit fa43cd8b100e9c6182f872d0fc4bb3964e100808 Author: Mike Frysinger Date: Tue Nov 13 00:31:33 2007 +0800 Blackfin arch: add a compatible DOUBLE_FAULT define to enable resets on double faults in either core Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 53f8a252df515639de6cc0f43f8c5d5c234adc6b Author: Mike Frysinger Date: Thu Nov 15 15:48:01 2007 +0800 Blackfin arch: remove mention of uClinux/no-mmu ... we are just Blackfin Linux Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 51e7f6830fc831aa1442a84158239dfced41a9b4 Author: Javier Herrero Date: Thu Nov 15 15:45:33 2007 +0800 Blackfin arch: Default config for HV Sistemas H8606 board Signed-off-by: Javier Herrero Signed-off-by: Bryan Wu commit 6a3f0b460cea79f08683cef1862d686a887efd8c Author: Robin Getz Date: Thu Nov 15 15:10:48 2007 +0800 Blackfin arch: fix bug cplbmgr.S does not exit properly on error condition https://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=1685 Ensure that cache/protection is turned back on when we get a fault, and ensure that the initial population of the CPLB tables are correct - that kernel is locked in CPLB tables Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 0954f70ab1ffd9ad945c88c11877a08baed311c7 Author: Michael Hennerich Date: Tue Nov 13 00:16:19 2007 +0800 Blackfin arch: fix AD7877 bus_num and add support for WM8731 SPI control interface Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 5d448dd50712ae42f8176b5bb8db4703bef6f0f5 Author: Bryan Wu Date: Mon Nov 12 23:24:42 2007 +0800 Blackfin arch: move hard coded pin_req to board file Remove some sort of bloaty code, try to get these pin_req arrays built at compile-time - move this static things to the blackfin board file - add pin_req array to struct bfin5xx_spi_master - tested on BF537/BF548 with SPI flash Signed-off-by: Bryan Wu commit 4a589e1ef67fdb2d5fa783117da8dc7cba576af4 Author: Robin Getz Date: Mon Nov 12 22:46:46 2007 +0800 Blackfin arch: fix bux - only reset the PC when necessary, otherwise gdb gets confused Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit f26fbc48f130962fce15f37d079968f0f272e0c2 Author: Robin Getz Date: Mon Nov 12 22:21:30 2007 +0800 Blackfin arch: ensure we work around ANOMALY_05000261 for null pointers We currently do not. Also make it easier to handle cplb violations - in traps.c Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 4c41d3ad6544f1c9aec37c441af04f5d0ad3a731 Author: Roland Dreier Date: Wed Nov 7 15:09:09 2007 -0800 ACPI: Always return valid 'status' from acpi_battery_get_property() If a battery is at a critical charge level and not being charged or discharged, then the ACPI _BST method will return a state of 4, and the current acpi_battery_get_property() code will not set any property value for POWER_SUPPLY_PROP_STATUS. This will cause an oops in power_supply_show_property() when it reads off the end of the status_text array. This actually was causing a 100% reproducible crash on boot on my laptop with two batteries, when one battery was completely drained and the laptop was not plugged in. Fix this by making sure acpi_battery_get_property() returns POWER_SUPPLY_STATUS_UNKNOWN for any battery state it doesn't already handle explicitly. There doesn't seem to be any status enum value defined that makes more sense than 'unknown' for a battery at a critical charge level. Signed-off-by: Roland Dreier Acked-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 4273af8d08c823d5898a2b1c2d0f25b4a8b9eaee Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:25 2007 -0200 ACPI: thinkpad-acpi: fix brightness_set error paths The code calling brightness_set() can't handle EINTR/ERESTARTSYS well, nor is it checking brightness_set() return status properly. Fix it. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit fc589a3ce5f38db6239c147da4f9172a25575ecc Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:24 2007 -0200 ACPI: thinkpad-acpi: allow for syscall restart in sysfs handlers Map an mutex_lock_interruptible() error return into ERESTARTSYS, as the only possible error from mutex_lock_interruptible is EINTR, and that will only happen if signal_pending() causes the mutex lock attempt to abort. This still allows signals to be delivered ASAP, which is much nicer than just doing mutex_lock, and still shadows userspace from EINTR when SA_RESTART is active. Problem reported by Peter Jordan. Signed-off-by: Henrique de Moraes Holschuh Cc: Jean Delvare Cc: Peter Jordan Cc: Richard Neill Signed-off-by: Len Brown commit b856f5b8c022b75bb0504a8c1ce16a5f1656e08b Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:23 2007 -0200 ACPI: thinkpad-acpi: bump up version to 0.17 The lm-sensors 3.0.0/libsensors4 compatibility changes are reason enough to bump up the version string. Do it. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit e11e211a0b21bbb625fac2056bdb54dd02020556 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:22 2007 -0200 ACPI: thinkpad-acpi: prefer standard ACPI backlight level control Newer Lenovo BIOSes support the standard ACPI backlight brightness interface (_BCM, _BQC, _BCL). It should be used instead of the native thinkpad backlight brightness control interface when possible. This patch disables the native brightness support in the driver by default when we detect that the standard ACPI interface is available. The local admin can still enable it using the module parameter "brightness_enable". Note that we need to detect the standard ACPI backlight interface only in boxes for which we would load the native backlight interface in the first place, and that no ThinkPad BIOS has _BCL but misses the other methods, so the detection routines can be really simple. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit 87cc537a54fc017d998cf603f5fab9ca4a85d668 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 18:02:07 2007 -0200 ACPI: thinkpad-acpi: add brightness_force parameter Add a "brightness_enable" module parameter that allows the local admin to force the backlight support to not be enabled. It can also be used to force the backlight support to be enabled, but that is currently a no-op as the backlight support is enabled by default when available. This will be changed by a different patch. Signed-off-by: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit a3f104c02ab842574e699186cf953551aafe2ca9 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:20 2007 -0200 ACPI: thinkpad-acpi: support 16 levels of brightness (v3) Lenovo ThinkPads often have 16 brightness levels in EC, and not just eight levels like older ThinkPads. They also have standard ACPI backlight brightness control. We detect the number of brightness levels by the presence of a BCLL package with 16 entries. If BCLL is not there, we assume eight levels (Z6*). If it is there, but it doesn't have 16 entries, we assume eight levels (T60). Otherwise we assume sixteen levels (T61, X61, etc). We don't use _BCL because it can have side-effects in thinkpads. Thanks to Thomas Renninger for notifying me of this potential problem. Using the standard ACPI backlight brightness control *instead* of the native thinkpad backlight control is a better idea, though. A different patch will take care of this. Signed-off-by: Henrique de Moraes Holschuh Cc: Thomas Renninger Signed-off-by: Len Brown commit e927c08da53e5c87ca07f7a828d4a0048e7bacf0 Author: Henrique de Moraes Holschuh Date: Tue Oct 30 17:46:19 2007 -0200 ACPI: thinkpad-acpi: revert keymap changes Revert commit fba956c46a72f9e7503fd464ffee43c632307e31, "Map volume and brightness events on thinkpads". That commit made some modifications to the default keymaps that cause bad behaviour on all IBM ThinkPads if HAL doesn't know to change them into passive (on-screen-display only) events. The proper solution for IBM ThinkPads is to use the _NOTIFY version of the key codes for the IBM default map (which are not available in mainline yet), and for the Lenovo keymap, it will take some studying of the various DSDTs and testing to know the best path (which I will do shortly). For more data, refer to: http://thread.gmane.org/gmane.linux.kernel/591037/focus=591045 Signed-off-by: Henrique de Moraes Holschuh Cc: Jeremy Katz Signed-off-by: Len Brown