commit 36676bcbf9f6bcbea9d06e67ee8d04eacde54952 tree f31e9a79a643cfba649637164a559d94b4183ccc parent 657390d25d4241705cb4fc5b3b4ba5b30575dc17 author James Bottomley Fri, 26 Aug 2005 18:34:17 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:13 -0700 [PATCH] Fix oops in sysfs_hash_and_remove_file() The problem arises if an entity in sysfs is created and removed without ever having been made completely visible. In SCSI this is triggered by removing a device while it's initialising. The problem appears to be that because it was never made visible in sysfs, the sysfs dentry has a null d_inode which oopses when a reference is made to it. The solution is simply to check d_inode and assume the object was never made visible (and thus doesn't need deleting) if it's NULL. (akpm: possibly a stopgap for 2.6.13 scsi problems. May not be the long-term fix) Signed-off-by: James Bottomley Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 657390d25d4241705cb4fc5b3b4ba5b30575dc17 tree 35b09cbecef683302adaddb9e8f7047462e7a848 parent 72008652dae7d10fa668d7b2ada3bddff7403d86 author NeilBrown Fri, 26 Aug 2005 18:34:16 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:13 -0700 [PATCH] md: clear the 'recovery' flags when starting an md array. It's possible for this to still have flags in it and a previous instance has been stopped, and that confused the new array using the same mddev. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72008652dae7d10fa668d7b2ada3bddff7403d86 tree 23660dd9234016c927b8c135c9e48b685cb16207 parent e1bcfcaa0b3bec2a67b22c565a0bf508ea90db1d author NeilBrown Fri, 26 Aug 2005 18:34:15 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:12 -0700 [PATCH] md: create a MODULE_ALIAS for md corresponding to its block major number. I just discovered this is needed for module auto-loading. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1bcfcaa0b3bec2a67b22c565a0bf508ea90db1d tree 01c6de89a3d60c35d2133c0b6b1903509a8f1df8 parent 1c9cf6f9861f8d27303ee2531b3b7686269c71ce author Roland Dreier Fri, 26 Aug 2005 18:34:14 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:12 -0700 [PATCH] IB: fix use-after-free in user verbs cleanup Fix a use-after-free bug in userspace verbs cleanup: we can't touch mr->device after we free mr by calling ib_dereg_mr(). Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1c9cf6f9861f8d27303ee2531b3b7686269c71ce tree 662163e453ee6514a13e844993700e96baa09260 parent 485761bd6a72d33b3d4fa884927b2b0d983b701e author Deepak Saxena Fri, 26 Aug 2005 18:34:11 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:12 -0700 [PATCH] arm: fix IXP4xx flash resource range We are currently reserving one byte more than actually needed by the flash device and overlapping into the next I/O expansion bus window. This a) causes us to allocate an extra page of VM due to ARM ioremap() alignment code and b) could cause problems if another driver tries to request the next expansion bus window. Signed-off-by: Deepak Saxena Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 485761bd6a72d33b3d4fa884927b2b0d983b701e tree c75562513489f62c8dcfd41acd467bca3d3202cc parent bebf4688e9dbbfdd421736685d607bced91a3c91 author Andi Kleen Fri, 26 Aug 2005 18:34:10 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:12 -0700 [PATCH] x86_64: Tell VM about holes in nodes Some nodes can have large holes on x86-64. This fixes problems with the VM allowing too many dirty pages because it overestimates the number of available RAM in a node. In extreme cases you can end up with all RAM filled with dirty pages which can lead to deadlocks and other nasty behaviour. This patch just tells the VM about the known holes from e820. Reserved (like the kernel text or mem_map) is still not taken into account, but that should be only a few percent error now. Small detail is that the flat setup uses the NUMA free_area_init_node() now too because it offers more flexibility. (akpm: lotsa thanks to Martin for working this problem out) Cc: Martin Bligh Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bebf4688e9dbbfdd421736685d607bced91a3c91 tree b88e2d0d55bbc9788337c256dfd25b54d684e49e parent 32818c2eb6b83ea5065c89e0c3cf774abc4dc02b author Mark M. Hoffman Fri, 26 Aug 2005 18:34:08 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:12 -0700 [PATCH] I2C hwmon: kfree fixes This patch fixes several instances of hwmon drivers kfree'ing the "wrong" pointer; the existing code works somewhat by accident. (akpm: plucked from Greg's queue based on lkml discussion. Finishes off the patch from Jon Corbet) Signed-off-by: Mark M. Hoffman Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32818c2eb6b83ea5065c89e0c3cf774abc4dc02b tree 909eed391340511798a80a4e693b401b61ef1e50 parent 212d6d2237f60bc28c1518f8abf9d3ed6c17574a author Anton Blanchard Fri, 26 Aug 2005 18:34:07 -0700 committer Linus Torvalds Fri, 26 Aug 2005 19:37:11 -0700 [PATCH] ppc64: Fix issue with gcc 4.0 compiled kernels I recently had a BUG_ON() go off spuriously on a gcc 4.0 compiled kernel. It turns out gcc-4.0 was removing a sign extension while earlier gcc versions would not. Thinking this to be a compiler bug, I submitted a report: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23422 It turns out we need to cast the input in order to tell gcc to sign extend it. Thanks to Andrew Pinski for his help on this bug. Signed-off-by: Anton Blanchard Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 212d6d2237f60bc28c1518f8abf9d3ed6c17574a tree 693ac9cdb0693acb0f935d4b61a34e6a12056add parent ca2f3daf779f5e89d14e9783fcfd7920842df9e9 author Paul Jackson Thu, 25 Aug 2005 12:47:56 -0700 committer Linus Torvalds Fri, 26 Aug 2005 16:38:47 -0700 [PATCH] completely disable cpu_exclusive sched domain At the suggestion of Nick Piggin and Dinakar, totally disable the facility to allow cpu_exclusive cpusets to define dynamic sched domains in Linux 2.6.13, in order to avoid problems first reported by John Hawkes (corrupt sched data structures and kernel oops). This has been built for ppc64, i386, ia64, x86_64, sparc, alpha. It has been built, booted and tested for cpuset functionality on an SN2 (ia64). Dinakar or Nick - could you verify that it for sure does avoid the problems Hawkes reported. Hawkes is out of town, and I don't have the recipe to reproduce what he found. Signed-off-by: Paul Jackson Acked-by: Nick Piggin Signed-off-by: Linus Torvalds commit ca2f3daf779f5e89d14e9783fcfd7920842df9e9 tree 07ce4cc60957d842dac1cb3d44dd5441071cf90f parent 13142341ac867bb67e88204cbfcb8d90f9a861b7 author Paul Jackson Thu, 25 Aug 2005 12:47:50 -0700 committer Linus Torvalds Fri, 26 Aug 2005 16:38:46 -0700 [PATCH] undo partial cpu_exclusive sched domain disabling The partial disabling of Dinakar's new facility to allow cpu_exclusive cpusets to define dynamic sched domains doesn't go far enough. At the suggestion of Nick Piggin and Dinakar, let us instead totally disable this facility for 2.6.13, in order to avoid problems first reported by John Hawkes (corrupt sched data structures and kernel oops). This patch removes the partial disabling code in 2.6.13-rc7, in anticipation of the next patch, which will totally disable it instead. Signed-off-by: Paul Jackson Signed-off-by: Linus Torvalds commit 13142341ac867bb67e88204cbfcb8d90f9a861b7 tree 7f3881d41696c0a47d871a2289e25e9e9928cd6d parent 3fd1bb9baa394856b112e5edbfd3893d92dd1149 parent d4ef16088913002255eab9958fff4e98b3b507d6 author Linus Torvalds Fri, 26 Aug 2005 16:32:31 -0700 committer Linus Torvalds Fri, 26 Aug 2005 16:32:31 -0700 Merge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git commit 3fd1bb9baa394856b112e5edbfd3893d92dd1149 tree a193631316e25b1d697f232eeeb5afd6ddcc8fb6 parent 566ecb9b258ec4da3c7e1c6ca6fca8a5bb0c8eba author Jean Delvare Thu, 25 Aug 2005 18:43:37 +0200 committer Linus Torvalds Fri, 26 Aug 2005 16:31:46 -0700 [PATCH] hwmon: Off-by-one error in fscpos driver Coverity uncovered an off-by-one error in the fscpos driver, in function set_temp_reset(). Writing to the temp3_reset sysfs file will lead to an array overrun, in turn causing an I2C write to a random register of the FSC Poseidon chip. Additionally, writing to temp1_reset and temp2_reset will not work as expected. The fix is straightforward. Signed-off-by: Jean Delvare Signed-off-by: Linus Torvalds commit 566ecb9b258ec4da3c7e1c6ca6fca8a5bb0c8eba tree e1a4b3057c291722ebef4dbb9c0fac834908b4dd parent 3515d0161d55d2fa1a340932625f94240a68c262 author Marcelo Tosatti Tue, 23 Aug 2005 17:20:44 -0300 committer Linus Torvalds Fri, 26 Aug 2005 16:31:46 -0700 [PATCH] ppc32 8xx: fix m8xx_ide_init() #ifdef Be more precise on deciding whether to call m8xx_ide_init() at m8xx_setup.c:platform_init(). Compilation fails if CONFIG_BLK_DEV_IDE is defined but CONFIG_BLK_DEV_MPC8xx_IDE isnt. Signed-off-by: Marcelo Tosatti Signed-off-by: Linus Torvalds commit 3515d0161d55d2fa1a340932625f94240a68c262 tree 986c5aa31761cbc186b4de7b410d539633f5ceb1 parent a46206e74e1897bf34d6b58f0991a0d6f3797e27 author Al Viro Thu, 25 Aug 2005 23:13:14 +0100 committer Linus Torvalds Fri, 26 Aug 2005 16:30:30 -0700 [PATCH] late spinlock initialization in ieee1394/ohci spinlock used in irq handler should be initialized before registering irq, even if we know that our device has interrupts disabled; handler is registered shared and taking spinlock is done unconditionally. As it is, we can and do get oopsen on boot for some configuration, depending on irq routing - I've got a reproducer. Signed-off-by: Al Viro Signed-off-by: Ben Collins Signed-off-by: Linus Torvalds commit a46206e74e1897bf34d6b58f0991a0d6f3797e27 tree c550c6ef8439e867ea2f73aebfca0fca0e09b64a parent b6a9ad73897acb7ea4cf56aae0fc39ba1c471fba author Al Viro Thu, 25 Aug 2005 23:03:35 +0100 committer Linus Torvalds Fri, 26 Aug 2005 16:30:30 -0700 [PATCH] bogus function type in qdio In qdio_get_micros() volatile in return type is plain noise (even with old gccisms it would make no sense - noreturn function returning __u64 is a bit odd ;-) Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit b6a9ad73897acb7ea4cf56aae0fc39ba1c471fba tree 1d6d1e779fcbaed6f06bf49ed4ad630ecdf58ed1 parent 1f57ff89fee47a317e9e8ca63bf0f139802cc116 author Al Viro Thu, 25 Aug 2005 22:59:48 +0100 committer Linus Torvalds Fri, 26 Aug 2005 16:30:30 -0700 [PATCH] bogus iounmap() in emac Dumb typo: iounmap(&local_pointer_variable). Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 1f57ff89fee47a317e9e8ca63bf0f139802cc116 tree 0db3419ab73cabed542a18cd5c7da50b03df896c parent d634cc15e8f33332038dc9c078beae79f9382ada author Alexey Dobriyan Fri, 26 Aug 2005 01:49:14 +0400 committer Linus Torvalds Fri, 26 Aug 2005 16:30:30 -0700 [PATCH] drivers/hwmon/*: kfree() correct pointers The adm9240 driver, in adm9240_detect(), allocates a structure. The error path attempts to kfree() ->client field of it (second one), resulting in an oops (or slab corruption) if the hardware is not present. ->client field in adm1026, adm1031, smsc47b397 and smsc47m1 is the first in ${HWMON}_data structure, but fix them too. Signed-off-by: Jonathan Corbet Signed-off-by: Linus Torvalds commit d634cc15e8f33332038dc9c078beae79f9382ada tree 2fff144b1b85cdf362c1a774e77b34f204b93ebf parent fd589e0b662c1ea8cfb1e0d20d60a2510979865b author Steve French Fri, 26 Aug 2005 14:42:59 -0500 committer Linus Torvalds Fri, 26 Aug 2005 16:05:35 -0700 [PATCH] Fix oops in fs/locks.c on close of file with pending locks The recent change to locks_remove_flock code in fs/locks.c changes how byte range locks are removed from closing files, which shows up a bug in cifs. The assumption in the cifs code was that the close call sent to the server would remove any pending locks on the server on this file, but that is no longer safe as the fs/locks.c code on the client wants unlock of 0 to PATH_MAX to remove all locks (at least from this client, it is not possible AFAIK to remove all locks from other clients made to the server copy of the file). Note that cifs locks are different from posix locks - and it is not possible to map posix locks perfectly on the wire yet, due to restrictions of the cifs network protocol, even to Samba without adding a new request type to the network protocol (which we plan to do for Samba 3.0.21 within a few months), but the local client will have the correct, posix view, of the lock in most cases. The correct fix for cifs for this would involve a bigger change than I would like to do this late in the 2.6.13-rc cycle - and would involve cifs keeping track of all unmerged (uncoalesced) byte range locks for each remote inode and scanning that list to remove locks that intersect or fall wholly within the range - locks that intersect may have to be reaquired with the smaller, remaining range. Signed-off-by: Steve French Signed-off-by: Dave Kleikamp Signed-off-by: Linus Torvalds commit fd589e0b662c1ea8cfb1e0d20d60a2510979865b tree 5c281ab99184fa6dcfb09586064ea7751c32fd4c parent d7a60d50d7713b65a3fd88f11d5717b83a6b6a97 author Paolo 'Blaisorblade' Giarrusso Fri, 26 Aug 2005 16:57:53 +0200 committer Linus Torvalds Fri, 26 Aug 2005 11:39:19 -0700 [PATCH] hppfs: fix symlink error path While touching this code I noticed the error handling is bogus, so I fixed it up. I've removed the IS_ERR(proc_dentry) check, which will never trigger and is clearly a typo: we must check proc_file instead. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Linus Torvalds commit d7a60d50d7713b65a3fd88f11d5717b83a6b6a97 tree 80a3d59724cc0faf0a5cb07f7e426c9f41d87e67 parent 7c657f2f25d50c602df9291bc6242b98fc090759 author Paolo 'Blaisorblade' Giarrusso Fri, 26 Aug 2005 16:57:44 +0200 committer Linus Torvalds Fri, 26 Aug 2005 11:39:19 -0700 [PATCH] Fixup symlink function pointers for hppfs [for 2.6.13] Update hppfs for the symlink functions prototype change. Yes, I know the code I leave there is still _bogus_, see next patch for this. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Linus Torvalds commit 7c657f2f25d50c602df9291bc6242b98fc090759 tree 5e1ae11c320ea00488b33224cc982d0be2d986d6 parent 755528c860b05fcecda1c88a2bdaffcb50760a7f author John McCutchan Fri, 26 Aug 2005 14:02:04 -0400 committer Linus Torvalds Fri, 26 Aug 2005 11:32:57 -0700 [PATCH] Document idr_get_new_above() semantics, update inotify There is an off by one problem with idr_get_new_above. The comment and function name suggest that it will return an id > starting_id, but it actually returned an id >= starting_id, and kernel callers other than inotify treated it as such. The patch below fixes the comment, and fixes inotifys usage. The function name still doesn't match the behaviour, but it never did. Signed-off-by: John McCutchan Signed-off-by: Linus Torvalds commit 755528c860b05fcecda1c88a2bdaffcb50760a7f tree d8b7aaaec93de93841b46e8e05a3b454d05bd357 parent 26aad69e3dd854abe9028ca873fb40b410a39dd7 author Linus Torvalds Fri, 26 Aug 2005 10:49:22 -0700 committer Linus Torvalds Fri, 26 Aug 2005 10:49:22 -0700 Ignore disabled ROM resources at setup Writing even a disabled value seems to mess up some matrox graphics cards. It may be a card-related issue, but we may also be writing reserved low bits in the result. This was a fall-out of switching x86 over to the generic PCI resource allocation code, and needs more debugging. In particular, the old x86 code defaulted to not doing any resource allocations at all for ROM resources. In the meantime, this has been reported to make X happier by Helge Hafting . Signed-off-by: Linus Torvalds commit 26aad69e3dd854abe9028ca873fb40b410a39dd7 tree 0f9b4d31027e8cfeb26c9d391f9f27e2f0bfcedf parent 9c2c38a122cc23d6a09b8004d60a33913683eedf author Linus Torvalds Fri, 26 Aug 2005 10:40:10 -0700 committer Linus Torvalds Fri, 26 Aug 2005 10:40:10 -0700 Only pre-allocate 256 bytes of cardbio IO range It may seem small, but most cards need much less, if any, and this not only makes the code adhere to the comment, it seems to fix a boot-time lockup on a ThinkPad 380XD laptop reported by Tero Roponen Signed-off-by: Linus Torvalds commit d4ef16088913002255eab9958fff4e98b3b507d6 tree 3984a1dc8378d7a976be60523021036c8265a167 parent 06c7427021f1cc83703f14659d8405ca773ba1ef author Michael Chan Thu, 25 Aug 2005 15:31:41 -0700 committer David S. Miller Thu, 25 Aug 2005 15:31:41 -0700 [TG3]: Fix ethtool loopback test lockup The tg3_abort_hw() call in tg3_test_loopback() is causing lockups on some devices. tg3_abort_hw() disables the memory arbiter, causing tg3_reset_hw() to hang when it tries to write the pre-reset signature. tg3_abort_hw() should only be called after the pre-reset signature has been written. This is all done in tg3_reset_hw() so the tg3_abort_hw() call is unnecessary and can be removed. [ Also bump driver version and release date. -DaveM ] Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 9c2c38a122cc23d6a09b8004d60a33913683eedf tree 0596d9e3315a64d01f2a6f64d4f352f3cd0de08f parent 41290c14640bc9312bf63202d14ebef075b6171a author Jens Axboe Wed, 24 Aug 2005 14:57:54 +0200 committer Linus Torvalds Wed, 24 Aug 2005 10:22:44 -0700 [PATCH] cfq-iosched.c: minor fixes One critical fix and two minor fixes for 2.6.13-rc7: - Max depth must currently be 2 to allow barriers to function on SCSI - Prefer sync request over async in choosing the next request - Never allow async request to preempt or disturb the "anticipation" for a single cfq process context. This is as-designed, the code right now is buggy in that area. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 41290c14640bc9312bf63202d14ebef075b6171a tree 209aa1f61d73f84046bd8735c7b4ef306b30e3cc parent b7561524765a30334bf31c56b523aeb3c1a04c7d author Keith Owens Wed, 24 Aug 2005 16:06:25 +1000 committer Linus Torvalds Wed, 24 Aug 2005 10:22:44 -0700 [PATCH] Export pcibios_bus_to_resource pcibios_bus_to_resource is exported on all architectures except ia64 and sparc. Add exports for the two missing architectures. Needed when Yenta socket support is compiled as a module. Signed-off-by: Keith Owens Signed-off-by: Linus Torvalds commit b7561524765a30334bf31c56b523aeb3c1a04c7d tree e45d7e074f82778666db9d51d15dd0e66f8efdbb parent 5477d30e841e0f707fd2daddc8cb6949858476ee author Andi Kleen Wed, 24 Aug 2005 07:37:37 +0200 committer Linus Torvalds Wed, 24 Aug 2005 10:22:44 -0700 [PATCH] x86_64: update defconfig - reenable fusion I mistakedly disabled fusion support in an earlier update. Fusion is commonly used on many x86-64 systems, so this was a problem. This patch fixes that. Signed-off-by: And Kleen Signed-off-by: Linus Torvalds commit 5477d30e841e0f707fd2daddc8cb6949858476ee tree 4db7781ff7d24c5de92d13636438d76304d4018c parent 3725822f7c7134249addcd4549aff086950c8090 author Benjamin Herrenschmidt Wed, 24 Aug 2005 14:18:53 +1000 committer Linus Torvalds Wed, 24 Aug 2005 09:41:35 -0700 [PATCH] ppc64: Export machine_power_off for therm_pm72 module This patch puts back the export of machine_power_off() that was removed by some janitor as it's used for emergency shutdown by the G5 thermal control driver. Wether that driver should use kernel_power_off() instead is debatable and a post-2.6.13 decision. In the meantime, please commit that patch that fixes the driver for now. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit 3725822f7c7134249addcd4549aff086950c8090 tree d7db18d3d5f75fe4309ddc7aa373f3213f845b41 parent 40bb0c3ef52d872de348e10000eb5432a43a147d author Paul Jackson Wed, 24 Aug 2005 04:15:10 -0700 committer Linus Torvalds Wed, 24 Aug 2005 09:40:45 -0700 [PATCH] cpu_exclusive sched domains build fix As reported by Paul Mackerras , the previous patch "cpu_exclusive sched domains fix" broke the ppc64 build with CONFIC_CPUSET, yielding error messages: kernel/cpuset.c: In function 'update_cpu_domains': kernel/cpuset.c:648: error: invalid lvalue in unary '&' kernel/cpuset.c:648: error: invalid lvalue in unary '&' On some arch's, the node_to_cpumask() is a function, returning a cpumask_t. But the for_each_cpu_mask() requires an lvalue mask. The following patch fixes this build failure by making a copy of the cpumask_t on the stack. Signed-off-by: Paul Jackson Signed-off-by: Linus Torvalds commit 40bb0c3ef52d872de348e10000eb5432a43a147d tree fb0a64a7e4c53fa05a75d1ebb429a27b5c44de3b parent 0572e3da3ff5c3744b2f606ecf296d5f89a4bbdf author Andreas Schwab Wed, 24 Aug 2005 17:36:21 +0200 committer Linus Torvalds Wed, 24 Aug 2005 09:37:40 -0700 [PATCH] m68k: fix broken macros causing compile errors Add parens around macro parameters. Signed-off-by: Andreas Schwab Signed-off-by: Linus Torvalds commit 06c7427021f1cc83703f14659d8405ca773ba1ef tree 01d66754d441b84cb09fe28f875cbb47b3b9fb0c parent 0572e3da3ff5c3744b2f606ecf296d5f89a4bbdf author Patrick McHardy Tue, 23 Aug 2005 22:06:09 -0700 committer David S. Miller Tue, 23 Aug 2005 22:06:09 -0700 [FIB_TRIE]: Don't ignore negative results from fib_semantic_match When a semantic match occurs either success, not found or an error (for matching unreachable routes/blackholes) is returned. fib_trie ignores the errors and looks for a different matching route. Treat results other than "no match" as success and end lookup. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller