commit 427abfa28afedffadfca9dd8b067eb6d36bac53f Author: Linus Torvalds Date: Sat Jun 17 18:49:35 2006 -0700 Linux v2.6.17 Being named "Crazed Snow-Weasel" instills a lot of confidence in this release, so I'm sure this will be one of the better ones. commit ce221982e0bef039d7047b0f667bb414efece5af Author: Arnd Bergmann Date: Thu Jun 15 15:09:16 2006 +0200 [PATCH] powerpc: enable CPU_FTR_CI_LARGE_PAGE for cell Reflect the fact that the Cell Broadband Engine supports 64k pages by adding the bit to the CPU features. Signed-off-by: Arnd Bergmann Signed-off-by: Linus Torvalds commit 19242b240793ac769f5b91b68a5e43dd39f0c530 Author: Arnd Bergmann Date: Thu Jun 15 21:15:44 2006 +1000 [PATCH] powerpc: Fix 64k pages on non-partitioned machines The page size encoding passed to tlbie is incorrect for new-style large pages. This fixes it. This doesn't affect anything on older machines because mmu_psize_defs[psize].penc (the page size encoding) is 0 for 4k and 16M pages (the two are distinguished by a separate "is a large page" bit). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras Signed-off-by: Linus Torvalds commit f53ae1dc3429529a58aa538e0a860d713c7079c3 Author: Oleg Nesterov Date: Thu Jun 15 20:12:02 2006 +0400 [PATCH] arm_timer: remove a racy and obsolete PF_EXITING check arm_timer() checks PF_EXITING to prevent BUG_ON(->exit_state) in run_posix_cpu_timers(). However, for some reason it does so only for CPUCLOCK_PERTHREAD case (which is imho wrong). Also, this check is not reliable, PF_EXITING could be set on another cpu without any locks/barriers just after the check, so it can't prevent from attaching the timer to the exiting task. The previous patch makes this check unneeded. Signed-off-by: Oleg Nesterov Signed-off-by: Linus Torvalds commit 30f1e3dd8c72abda343bcf415f7d8894a02b4290 Author: Oleg Nesterov Date: Thu Jun 15 20:11:43 2006 +0400 [PATCH] run_posix_cpu_timers: remove a bogus BUG_ON() do_exit() clears ->it_##clock##_expires, but nothing prevents another cpu to attach the timer to exiting process after that. arm_timer() tries to protect against this race, but the check is racy. After exit_notify() does 'write_unlock_irq(&tasklist_lock)' and before do_exit() calls 'schedule() local timer interrupt can find tsk->exit_state != 0. If that state was EXIT_DEAD (or another cpu does sys_wait4) interrupted task has ->signal == NULL. At this moment exiting task has no pending cpu timers, they were cleanuped in __exit_signal()->posix_cpu_timers_exit{,_group}(), so we can just return from irq. John Stultz recently confirmed this bug, see http://marc.theaimsgroup.com/?l=linux-kernel&m=115015841413687 Signed-off-by: Oleg Nesterov Signed-off-by: Linus Torvalds commit 8f17fc20bfb75bcec4cfeda789738979c8338fdc Author: Oleg Nesterov Date: Thu Jun 15 20:11:15 2006 +0400 [PATCH] check_process_timers: fix possible lockup If the local timer interrupt happens just after do_exit() sets PF_EXITING (and before it clears ->it_xxx_expires) run_posix_cpu_timers() will call check_process_timers() with tasklist_lock + ->siglock held and check_process_timers: t = tsk; do { .... do { t = next_thread(t); } while (unlikely(t->flags & PF_EXITING)); } while (t != tsk); the outer loop will never stop. Actually, the window is bigger. Another process can attach the timer after ->it_xxx_expires was cleared (see the next commit) and the 'if (PF_EXITING)' check in arm_timer() is racy (see the one after that). Signed-off-by: Oleg Nesterov Signed-off-by: Linus Torvalds commit 88d113601ca19c82feb038438c8c5db502d146f9 Author: Stephen Hemminger Date: Fri Jun 16 12:10:46 2006 -0700 [PATCH] sky2: netconsole suspend/resume interaction A couple of fixes that should prevent crashes when using netconsole and suspend/resume. First, netconsole poll routine shouldn't run unless the device is up; second, the NAPI poll should be disabled during suspend. This is only an issue on sky2, because it has to have one NAPI poll routine for both ports on dual port boards. Normal drivers use netif_rx_schedule_prep and that checks for netif_running. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 991721572ef2140c6411894aebefd3377e71a9e7 Author: Jens Axboe Date: Fri Jun 16 13:02:29 2006 +0200 [PATCH] Fix missing ret assignment in __bio_map_user() error path If get_user_pages() returns less pages than what we asked for, we jump to out_unmap which will return ERR_PTR(ret). But ret can contain a positive number just smaller than local_nr_pages, so be sure to set it to -EFAULT always. Problem found and diagnosed by Damien Le Moal Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 16070428d389ff47aa3476b0911179ad90c640a2 Author: Jens Axboe Date: Fri Jun 16 07:46:37 2006 +0200 [PATCH] fix cdrom open Some time ago the cdrom open routine was changed so that we call the driver's open routine before checking to see if it is read only. However, if we discovered that a read write open was not possible and the open flags required a writable open, we just returned -EROFS without calling the driver's release routine. This seems to work for most cdrom drivers, but breaks the Powerpc iSeries virtual cdrom rather badly. This just inserts the release call in the error path to balance the call to "->open()" done by "open_for_data()". Signed-off-by: Stephen Rothwell Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 553698f944ed715dfe023b4cef07601f0ce735f0 Author: Jens Axboe Date: Wed Jun 14 19:11:57 2006 +0200 [PATCH] cfq-iosched: fix crash in do_div() We don't clear the seek stat values in cfq_alloc_io_context(), and if ->seek_mean is unlucky enough to be set to -36 by chance, the first invocation of cfq_update_io_seektime() will oops with a divide by zero in do_div(). Just memset the entire cic instead of filling invididual values independently. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 9cedc194a7735e5d74ad26d3825247dc65a4d98e Author: Kirill Korotaev Date: Wed Jun 14 17:59:35 2006 +0400 [PATCH] Return error in case flock_lock_file failure If flock_lock_file() failed to allocate flock with locks_alloc_lock() then "error = 0" is returned. Need to return some non-zero. Signed-off-by: Pavel Emelianov Signed-off-by: Kirill Korotaev Signed-off-by: Linus Torvalds commit eb35cf60e462491249166182e3e755d3d5d91a28 Author: Stephen Hemminger Date: Tue Jun 13 17:17:31 2006 +0900 [PATCH] sky2: stop/start hardware idle timer on suspend/resume The resume bug was caused not by an early interrupt but because the idle timeout was not being stopped on suspend. Also disable hardware IRQ's on suspend. Will need to revisit this with hotplug? Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 8ab8fca2071cec559e4b77212cccffd150ce5ce7 Author: Stephen Hemminger Date: Tue Jun 13 17:17:30 2006 +0900 [PATCH] sky2: save/restore base hardware irq during suspend/resume The hardware should be fully shut off during suspend, and the base irq mask restored during resume. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 26ec43f132d1cf282124a020b2bb5310496c9132 Author: Stephen Hemminger Date: Tue Jun 13 17:17:29 2006 +0900 [PATCH] sky2: fix hotplug detect during poll If the poll routine detects no hardware available, it needs to dequeue it self from the network poll list. Linus didn't understand NAPI. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit f05267e7dee58741a4feb20d0351706ec64bb0b5 Author: Stephen Hemminger Date: Tue Jun 13 17:17:28 2006 +0900 [PATCH] sky2: don't hard code number of ports It is cleaner, to not loop over both ports if only one exists. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 2ccc99b7b71976d15822ae7c41cd2ccda66d5076 Author: Stephen Hemminger Date: Tue Jun 13 17:17:27 2006 +0900 [PATCH] sky2: set_power_state should be void The set power state function is cleaner if it doesn't return anything. The only caller that could fail is in suspend() and it can check the argument there. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 5e625b0844435e0333670d9da633304169896740 Author: Randy Dunlap Date: Mon Jun 12 15:13:40 2006 -0700 [PATCH] alpha: generic hweight build fix From: Randy Dunlap According to include/asm-alpha/bitops.h, only ALPHA_EV67 has hardware hweight support, so ALPHA_EV6 needs to use GENERIC_HWEIGHT. Signed-off-by: Randy Dunlap Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Ernst Herzberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 86bc843a268058df558844b6bf64531617fbc698 Author: Sergey Vlasov Date: Mon Jun 12 21:53:23 2006 +0100 [PATCH] tmpfs: Decrement i_nlink correctly in shmem_rmdir() shmem_rmdir() must undo the increment of i_nlink done in shmem_get_inode() for directories, otherwise at least IN_DELETE_SELF inotify event generation is broken. Signed-off-by: Sergey Vlasov Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit cfd95a9cf58cd9e92d4c23b5ee20b07a3d121477 Author: Robin H. Johnson Date: Mon Jun 12 21:50:25 2006 +0100 [PATCH] tmpfs: time granularity fix for [acm]time going backwards I noticed a strange behavior in a tmpfs file system the other day, while building packages - occasionally, and seemingly at random, make decided to rebuild a target. However, only on tmpfs. A file would be created, and if checked, it had a sub-second timestamp. However, after an utimes related call where sub-seconds should be set, they were zeroed instead. In the case that a file was created, and utimes(...,NULL) was used on it in the same second, the timestamp on the file moved backwards. After some digging, I found that this was being caused by tmpfs not having a time granularity set, thus inheriting the default 1 second granularity. Hugh adds: yes, we missed tmpfs when the s_time_gran mods went into 2.6.11. Unfortunately, the granularity of CURRENT_TIME, often used in filesystems, does not match the default granularity set by alloc_super. A few more such discrepancies have been found, but this is the most important to fix now. Signed-off-by: Robin H. Johnson Acked-by: Andi Kleen Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit 42d1d52e695d87475846e9a09964cae1209eeecb Author: Weidong Date: Mon Jun 12 13:09:59 2006 -0700 [IPV4]: Increment ipInHdrErrors when TTL expires. Signed-off-by: Weidong Signed-off-by: David S. Miller commit d374c1c1281d6188a0d0676172b1c0e3de35c6e7 Author: Linus Torvalds Date: Mon Jun 12 12:53:27 2006 -0700 [sky2] Fix sky2 network driver suspend/resume This fixes two independent problems: it would not save the PCI state on suspend (and thus try to resume a nonexistent state on resume), and while shut off, if an interrupt happened on the same shared irq, the irq handler would react very badly to the interrupt status being an invalid all-ones state. Acked-by: Jeff Garzik Signed-off-by: Linus Torvalds commit 79320d7e14900c549c3520791a297328f53ff71e Author: Aki M Nyrhinen Date: Sun Jun 11 21:18:56 2006 -0700 [TCP]: continued: reno sacked_out count fix From: Aki M Nyrhinen IMHO the current fix to the problem (in_flight underflow in reno) is incorrect. it treats the symptons but ignores the problem. the problem is timing out packets other than the head packet when we don't have sack. i try to explain (sorry if explaining the obvious). with sack, scanning the retransmit queue for timed out packets is fine because we know which packets in our retransmit queue have been acked by the receiver. without sack, we know only how many packets in our retransmit queue the receiver has acknowledged, but no idea which packets. think of a "typical" slow-start overshoot case, where for example every third packet in a window get lost because a router buffer gets full. with sack, we check for timeouts on those every third packet (as the rest have been sacked). the packet counting works out and if there is no reordering, we'll retransmit exactly the packets that were lost. without sack, however, we check for timeout on every packet and end up retransmitting consecutive packets in the retransmit queue. in our slow-start example, 2/3 of those retransmissions are unnecessary. these unnecessary retransmissions eat the congestion window and evetually prevent fast recovery from continuing, if enough packets were lost. Signed-off-by: David S. Miller commit afec35e3fee900b3016519d0b5512064e4625b2c Author: Andrea Bittau Date: Sun Jun 11 20:58:33 2006 -0700 [DCCP] Ackvec: fix soft lockup in ackvec handling code A soft lockup existed in the handling of ack vector records. Specifically, when a tail of the list of ack vector records was removed, it was possible to end up iterating infinitely on an element of the tail. Signed-off-by: Andrea Bittau Signed-off-by: Ian McDonald Signed-off-by: David S. Miller commit ccefb5f3f60cd116d9a8ce2fa9e82e67206e49e5 Author: David S. Miller Date: Sun Jun 11 21:00:46 2006 -0700 [SPARC64]: Do not double-export sys_close() when CONFIG_SOLARIS_EMUL_MODULE It is already exported by fs/open.c Noticed by Ben Collins. Signed-off-by: David S. Miller commit 289a1e995e74734b5ec76ca8a5490058f4fecc24 Author: Paul Mackerras Date: Mon Jun 12 12:16:26 2006 +1000 [PATCH] Fix for the PPTP hangs that have been reported People have been reporting that PPP connections over ptys, such as used with PPTP, will hang randomly when transferring large amounts of data, for instance in http://bugzilla.kernel.org/show_bug.cgi?id=6530. I have managed to reproduce the problem, and the patch below fixes the actual cause. The problem is not in fact in ppp_async.c but in n_tty.c. What happens is that when pptp reads from the pty, we call read_chan() in drivers/char/n_tty.c on the master side of the pty. That copies all the characters out of its buffer to userspace and then calls check_unthrottle(), which calls the pty unthrottle routine, which calls tty_wakeup on the slave side, which calls ppp_asynctty_wakeup, which calls tasklet_schedule. So far so good. Since we are in process context, the tasklet runs immediately and calls ppp_async_process(), which calls ppp_async_push, which calls the tty->driver->write function to send some more output. However, tty->driver->write() returns zero, because the master tty->receive_room is still zero. We haven't returned from check_unthrottle() yet, and read_chan() only updates tty->receive_room _after_ calling check_unthrottle. That means that the driver->write call in ppp_async_process() returns 0. That would be fine if we were going to get a subsequent wakeup call, but we aren't (we just had it, and the buffer is now empty). The solution is for n_tty.c to update tty->receive_room _before_ calling the driver unthrottle routine. The patch below does this. With this patch I was able to transfer a 900MB file over a PPTP connection (taking about 25 minutes), whereas without the patch the connection would always stall in under a minute. Signed-off-by: Paul Mackerras Signed-off-by: Linus Torvalds commit 2f9719b61e1fcf7422a016ac4f2420a0cc6ba320 Author: Mark Lord Date: Wed Jun 7 12:53:29 2006 -0400 [PATCH] sata_mv: grab host lock inside eng_timeout Bug fix: mv_eng_timeout() calls mv_err_intr() without first grabbing the host lock, which can lead to all sorts of interesting scenarios. This whole error-handling portion of sata_mv is nasty (and will get fixed for the new EH stuff), but for now this patch will help keep it on life-support. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit c0bbbc73d58f1b774cd987b5687a478a027f137c Author: Christoph Lameter Date: Sun Jun 11 15:22:26 2006 -0700 [PATCH] typo in vmscan.c From: Christoph Lameter Looks like a comma was left from the conversion from a struct to an assignment. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b8c8d280ab2d18fe6e42d671f60d4ffed451cdc Author: Yu, Luming Date: Tue Apr 25 00:00:34 2006 -0700 [PATCH] PCI: reverse pci config space restore order According to Intel ICH spec, there are several rules that Base Address should be programmed before IOSE (PCICMD register ) enabled. For example ICH7: 12.1.3 SATA : the base address register for the bus master register should be programmed before this bit is set. 11.1.3: PCICMD (USB): The base address register for USB should be programmed before this bit is set. .... To make sure kernel code follow this rule , and prevent unnecessary confusion. I proposal this patch. Signed-off-by: Luming Yu Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 04d9c1a1100b6bdeffa7e1bfc30080bdac28e183 Author: Dave Jones Date: Tue Apr 18 21:06:51 2006 -0700 [PATCH] PCI: Improve PCI config space writeback At least one laptop blew up on resume from suspend with a black screen due to a lack of this patch. By only writing back config space that is different, we minimise the possibility of accidents like this. Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8d92bc2270d67a43b1d7e94a8cb6f81f1435fe9a Author: Jean Delvare Date: Tue Apr 18 14:49:56 2006 +0200 [PATCH] PCI: Error handling on PCI device resume We currently don't handle errors properly when resuming a PCI device: * In pci_default_resume() we capture the error code returned by pci_enable_device() but don't pass it up to the caller. Introduced by commit 95a629657dbe28e44a312c47815b3dc3f1ce0970 * In pci_resume_device(), the errors possibly returned by the driver's .resume method or by the generic pci_default_resume() function are ignored. This patch fixes both issues. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 0ce030395b92270567423d57d9d432eb77df32f2 Author: akpm@osdl.org Date: Sat May 13 08:30:52 2006 -0700 [PATCH] PCI: fix pciehp compile issue when CONFIG_ACPI is not enabled Fix build error when CONFIG_ACPI not defined Signed-off-by: Kristen Carlson Accardi Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 650fb8382287f7990d5127a82a54295139224606 Author: Krzysztof Helt Date: Sat Jun 10 22:03:43 2006 -0700 [SPARC]: Migration cost tune up in sparc smp. This patch sets the max_cache_size value required to tune up scheduler in SMP systems. Otherwise, the calculated migration_cost is too high and task scheduling may lock up. Signed-off-by: Krzysztof Helt Signed-off-by: David S. Miller commit 9145bcf63575a8b78590a5beaf604001e9c8d2ef Author: David S. Miller Date: Sat Jun 10 22:02:17 2006 -0700 [SPARC64]: Set appropriate max_cache_size. Signed-off-by: David S. Miller commit 938473b24636d77dc5e9c3f41090d071b6cf4389 Author: Milton Miller Date: Sat Jun 10 09:54:16 2006 -0700 [PATCH] powerpc: console_initcall ordering issues From: Milton Miller The add_preferred_console call in rtas_console.c was not causing the console to be selected. It turns out that the add_preferred_console was being called after the hvc_console driver was registered. It only works when it is called before the console driver is registered. Reorder hvc_console.o after the hvc_console drivers to allow the selection during console_initcall processing. Signed-off-by: Milton Miller Signed-off-by: Anton Blanchard Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57a62fed871eb2a95f296fe6c5c250ce21b81a79 Author: Markus Lidel Date: Sat Jun 10 09:54:14 2006 -0700 [PATCH] I2O: Bugfixes to get I2O working again From: Markus Lidel - Fixed locking of struct i2o_exec_wait in Executive-OSM - Removed LCT Notify in i2o_exec_probe() which caused freeing memory and accessing freed memory during first enumeration of I2O devices - Added missing locking in i2o_exec_lct_notify() - removed put_device() of I2O controller in i2o_iop_remove() which caused the controller structure get freed to early - Fixed size of mempool in i2o_iop_alloc() - Fixed access to freed memory in i2o_msg_get() See http://bugzilla.kernel.org/show_bug.cgi?id=6561 Signed-off-by: Markus Lidel Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a913f50706b21c7933f53cec678bb9a1c2383499 Author: Andrew Morton Date: Sat Jun 10 09:54:13 2006 -0700 [PATCH] powernow-k8 crash workaround From: Andrew Morton Work around the oops reported in http://bugzilla.kernel.org/show_bug.cgi?id=6478. Thanks to Ralf Hildebrandt for testing and reporting. Acked-by: Dave Jones Cc: "Brown, Len" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 670bd95e0413c43f878b73a4a3919d1f452a4157 Author: David Howells Date: Sat Jun 10 09:54:12 2006 -0700 [PATCH] Further alterations for memory barrier document From: David Howells Apply some alterations to the memory barrier document that I worked out with Paul McKenney of IBM, plus some of the alterations suggested by Alan Stern. The following changes were made: (*) One of the examples given for what can happen with overlapping memory barriers was wrong. (*) The description of general memory barriers said that a general barrier is a combination of a read barrier and a write barrier. This isn't entirely true: it implies both, but is more than a combination of both. (*) The first example in the "SMP Barrier Pairing" section was wrong: the loads around the read barrier need to touch the memory locations in the opposite order to the stores around the write barrier. (*) Added a note to make explicit that the loads should be in reverse order to the stores. (*) Adjusted the diagrams in the "Examples Of Memory Barrier Sequences" section to make them clearer. Added a couple of diagrams to make it more clear as to how it could go wrong without the barrier. (*) Added a section on memory speculation. (*) Dropped any references to memory allocation routines doing memory barriers. They may do sometimes, but it can't be relied on. This may be worthy of further documentation later. (*) Made the fact that a LOCK followed by an UNLOCK should not be considered a full memory barrier more explicit and gave an example. Signed-off-by: David Howells Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 56f1319e877a969b814b3805c77ea9c31d849f54 Author: Russell King Date: Sat Jun 10 12:42:12 2006 +0100 [ARM] Fix Integrator and Versatile interrupt initialisation Both Integrator and Versatile were using set_irq_handler() and enable_irq(), and working around the initialisation of the chained interrupt, instead of the more correct set_irq_chained_handler() function. Fix Integrator and Versatile to use the right function, and remove these work-arounds. Signed-off-by: Russell King commit 46b304934de417a2238d659ef6459a74cb3f5e6b Author: David S. Miller Date: Sat Jun 10 01:06:25 2006 -0700 [SPARC64]: Avoid JBUS errors on some Niagara systems. Doing PCI config space accesses to non-present PCI slots can result in fatal JBUS errors if the PCI config access hypervisor call is performed on cpus other than the boot cpu. PCI config space accesses to present PCI slots works just fine. Recursively traverse the OBP device tree under the PCI controller node and record all present device IDs into a small hash table. Avoid the hypervisor call for any PCI config space access attempt for a device not recorded in the hash table. Signed-off-by: David S. Miller commit c29ca9d1812f2abacaefa7daa31e085600128938 Author: Tom "spot" Callaway Date: Fri Jun 9 17:01:48 2006 -0700 [FUSION]: Fix mptspi.c build with CONFIG_PM not set. Signed-off-by: Tom "spot" Callaway Signed-off-by: David S. Miller commit f49639e643e69ff233b14966b8d48541d2e17517 Author: David S. Miller Date: Fri Jun 9 11:58:36 2006 -0700 [TG3]: Handle Sun onboard tg3 chips more correctly. Get rid of all the SUN_570X logic and instead: 1) Make sure MEMARB_ENABLE is set when we probe the SRAM for config information. If that is off we will get timeouts. 2) Always try to sync with the firmware, if there is no firmware running do not treat it as an error and instead just report it the first time we notice this condition. 3) If there is no valid SRAM signature, assume the device is onboard by setting TG3_FLAG_EEPROM_WRITE_PROT. Update driver version and release date. With help from Michael Chan and Fabio Massimo Di Nitto. Signed-off-by: David S. Miller commit 5224e6cc3ab5ae03895bbb67f4a26ce72e62ce58 Author: David S. Miller Date: Tue Jun 6 17:37:41 2006 -0700 [SPARC64]: Dump local cpu registers in sun4v_log_error() This makes the debugging information more usable. Signed-off-by: David S. Miller commit 133dda1e4f757e036fa838cba6804d0344931c4a Author: Arnd Bergmann Date: Wed Jun 7 12:04:18 2006 +1000 [PATCH] powerpc: Fix cell blade detection The IBM Cell blade firmware might confuse the kernel to think it's a pSeries machine. This fixes it for now. With a bit of luck, the firmware will be updated to avoid that in the future but currently that patch is needed. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 33b7497794424181dca87f18e43ecbc07f86bba5 Author: Benjamin Herrenschmidt Date: Wed Jun 7 12:01:32 2006 +1000 [PATCH] powerpc: Fix call to ibm,client-architecture-support The code in prom_init.c calling the firmware ibm,client-architecture-support method on pSeries has a bug where it fails to properly pass the instance handle of the firmware object when trying to call a method. Result ranges from the call doing nothing to the firmware crashing. (Found by Segher, thanks !) Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Segher Boessenkool Signed-off-by: Paul Mackerras commit 7c85d1f9d358b24c5b05c3a2783a78423775a080 Author: Paul Mackerras Date: Fri Jun 9 13:02:59 2006 +1000 powerpc: Fix machine check problem on 32-bit kernels This fixes a bug found by Dave Jones that means that it is possible for userspace to provoke a machine check on 32-bit kernels. This also fixes a couple of other places where I found similar problems by inspection. Signed-off-by: Paul Mackerras commit bafe00cc9297ca77b66e5c83e5e65e17c0c997c8 Author: Martin Schwidefsky Date: Thu Jun 8 01:36:20 2006 -0700 [PATCH] s390: fix in-user atomic futex operation. From: Martin Schwidefsky __futex_atomic_op needs to do an atomic operation in the user address space, not the kernel address space. Add the missing sacf 256/sacf 0 to switch to the secondary mode before doing the compare-and-swap. In addition add another fixup for catch specification exceptions if the compare-and-swap address is not aligned. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 71601e2b33dad9acb8d7844f7321f90ed9d1bce8 Author: Jens Axboe Date: Thu Jun 8 10:26:39 2006 +0200 [PATCH] debugfs inode leak Looking at the reiser4 crash, I found a leak in debugfs. In debugfs_mknod(), we create the inode before checking if the dentry already has one attached. We don't free it if that is the case. These bugs happen quite often, I'm starting to think we should disallow such coding in CodingStyle. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit bc1c116974a5c3f498112a6f175d3e4a8cd5bdbc Author: Jens Axboe Date: Thu Jun 8 08:49:06 2006 +0200 [PATCH] elevator switching race There's a race between shutting down one io scheduler and firing up the next, in which a new io could enter and cause the io scheduler to be invoked with bad or NULL data. To fix this, we need to maintain the queue lock for a bit longer. Unfortunately we cannot do that, since the elevator init requires to be run without the lock held. This isn't easily fixable, without also changing the mempool API. So split the initialization into two parts, and alloc-init operation and an attach operation. Then we can preallocate the io scheduler and related structures, and run the attach inside the lock after we detach the old one. This patch has survived 30 minutes of 1 second io scheduler switching with a very busy io load. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 26e780e8ef1cc3ef581a07aafe2346bb5a07b4f9 Author: Malcom Parsons Date: Thu Jun 8 00:43:42 2006 -0700 [PATCH] fbcon: fix limited scroll in SCROLL_PAN_REDRAW mode From: Malcom Parsons When scrolling up in SCROLL_PAN_REDRAW mode with a large limited scroll region, the bottom few lines have to be redrawn. Without this patch, the wrong text is drawn into these lines, corrupting the display. Observed in 2.6.14 when running an IRC client in the Nintendo DS linux port. I haven't tested if scrolling down has the same problem. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45b35a5ced474b9fbbbfcfd5cf346c432d28d9fd Author: Ralf Baechle Date: Thu Jun 8 00:43:41 2006 -0700 [PATCH] Fix mempolicy.h build error From: Ralf Baechle uses struct mm_struct and relies on a definition or declaration somehow magically being dragged in which may result in a build: [...] CC mm/mempolicy.o In file included from mm/mempolicy.c:69: include/linux/mempolicy.h:150: warning: ‘struct mm_struct’ declared inside parameter list include/linux/mempolicy.h:150: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/mempolicy.h:175: warning: ‘struct mm_struct’ declared inside parameter list mm/mempolicy.c:622: error: conflicting types for ‘do_migrate_pages’ include/linux/mempolicy.h:175: error: previous declaration of ‘do_migrate_pages’ was here mm/mempolicy.c:1661: error: conflicting types for ‘mpol_rebind_mm’ include/linux/mempolicy.h:150: error: previous declaration of ‘mpol_rebind_mm’ was here make[1]: *** [mm/mempolicy.o] Error 1 make: *** [mm] Error 2 [ralf@denk linux-ip35]$ Including is a step into direction of include hell so fixed by adding a forward declaration of struct mm_struct instead. Signed-off-by: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd0a0ac1c5393b226640a30bae753983068136b3 Author: Lennert Buytenhek Date: Thu Jun 8 00:43:40 2006 -0700 [PATCH] ep93xx build fix From: Lennert Buytenhek The recent renaming of m48t86's ->readb() and ->writeb() platform driver methods (2d7b20c1884777e66009be1a533641c19c4705f6) to ->readbyte() and ->writebyte() to fix the ia64 build broke the build of the cirrus ep93xx ARM platform. This patch fixes it up. Signed-off-by: Lennert Buytenhek Cc: Alessandro Zummo Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2ef3a50f19f64d350bdc0aa15c31ae4b8973f57 Author: Andy Currid Date: Thu Jun 8 00:43:39 2006 -0700 [PATCH] Fix HPET operation on 64-bit NVIDIA platforms From: "Andy Currid" This patch fixes a kernel panic during boot that occurs on NVIDIA platforms that have HPET enabled. When HPET is enabled, the standard timer IRQ is routed to IOAPIC pin 2 and is advertised as such in the ACPI APIC table - but an earlier workaround in the kernel was ignoring this override. The fix is to honor timer IRQ overrides from ACPI when HPET is detected on an NVIDIA platform. Signed-off-by: Andy Currid Cc: "Brown, Len" Cc: "Yu, Luming" Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d44647b0a6e48d18a1402dfa9052d85c4fe98341 Author: Andy Currid Date: Thu Jun 8 00:43:38 2006 -0700 [PATCH] Fix HPET operation on 32-bit NVIDIA platforms From: "Andy Currid" This patch fixes a kernel panic during boot that occurs on NVIDIA platforms that have HPET enabled. When HPET is enabled, the standard timer IRQ is routed to IOAPIC pin 2 and is advertised as such in the ACPI APIC table - but an earlier workaround in the kernel was ignoring this override. The fix is to honor timer IRQ overrides from ACPI when HPET is detected on an NVIDIA platform. Signed-off-by: Andy Currid Cc: "Brown, Len" Cc: "Yu, Luming" Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2f04e18941dbd3826901540a0be03f1728f8822 Author: Matt Reimer Date: Thu Jun 8 22:46:48 2006 +0100 [ARM] 3546/1: PATCH: subtle lost interrupts bug on i.MX Patch from Matt Reimer There is a subtle bug in the GPIO interrupt status register handling in arch/arm/mach-imx/irq.c:imx_gpio_ack_irq(). The documentation states that a 1 should be written to the relevant bit to acknowledge a GPIO interrupt, but that is not what the code does. The problem is that the |= writes back 1s for all the *other* interrupts represented in the register, so interrupts could get lost. For example, if interrupts are pending for GPIO B10 and B12, ISR_B would have the value 0x00001400. Then when the interrupt code handles GPIO B10, it eventually calls imx_gpio_ack_irq(IRQ_GPIOB(10)), which effectively does this: ISR_B |= 1 << 10; with the result that (0x00001400 | 0x00000400) is written, clearing the interrupt status bits for *both* GPIO B10 and B12. The fix is to write 1s only for the interrupts we want to clear. The same problem seems to be occurring in the DMA code; this patch does not address those issues. Acked-by: Sascha Hauer Signed-off-by: Matt Reimer Signed-off-by: Russell King commit 0c27c5d5b93339df4def7ced77ea5be26df4d84b Author: Richard Purdie Date: Thu Jun 8 22:44:07 2006 +0100 [ARM] 3547/1: PXA-OHCI: Allow platforms to specify a power budget Patch from Richard Purdie Add a power budget variable to the PXA OHCI platform data and add a default value for the spitz platform(s) which prevents known failures with certain USB devices. Signed-off-by: Richard Purdie Signed-off-by: Russell King commit d782f33df706f1b8a4496b41fd7d339c6e23aa59 Author: Russell King Date: Thu Jun 8 17:59:31 2006 +0100 [ARM] Fix Neponset IRQ handling While testing the genirq code on ARM, a condition was found whereby the Neponset IRQ handler was being re-entered, causing the system to deadlock. Under the ARM IRQ code, this would not have been a visible problem because the "simple" IRQ handling had no re-entrancy protection. Resolve this by acknowledging the parent interrupt after we mask it when we are going to handle one of our "special" level-based sources (from ethernet or USAR chip.) Signed-off-by: Russell King commit 24f476eeecba66524af3f95e31ac208eea99e617 Author: Auke Kok Date: Thu Jun 8 09:28:47 2006 -0700 e1000: remove risky prefetch on next_skb->data It was brought to our attention that the prefetches break e1000 traffic on xscale/arm architectures. Remove them for now. We'll let them stay in mm for a while, or find a better solution to enable. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit b9b6e78b11de295ef073271979355d5fab71b877 Author: Auke Kok Date: Thu Jun 8 09:28:38 2006 -0700 e1000: fix ethtool test irq alloc as "probe" New code added in 2.6.17 caused setup_irq to print a warning when running ethtool -t eth0 offline. This test marks the request_irq call made by this test as a "probe" to see if the interrupt is shared or not. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok commit 1def630a6a49dda5bc89dfbd86656293640456f0 Author: Linus Torvalds Date: Mon Jun 5 17:57:02 2006 -0700 Linux 2.6.17-rc6 commit 36485707bbd9729e0c52315b173aeed9bc2303dd Author: Jiri Benc Date: Mon Jun 5 16:39:34 2006 -0700 [BRIDGE]: fix locking and memory leak in br_add_bridge There are several bugs in error handling in br_add_bridge: - when dev_alloc_name fails, allocated net_device is not freed - unregister_netdev is called when rtnl lock is held - free_netdev is called before netdev_run_todo has a chance to be run after unregistering net_device Signed-off-by: Jiri Benc Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b1c231f5a57cb4a417c38a8a946f1e66db3bb9c0 Author: Chad Reese Date: Tue May 30 17:16:49 2006 -0700 [MIPS] Fix sparsemem support. Move memory_present() in arch/mips/kernel/setup.c. When using sparsemem extreme, this function does an allocate for bootmem. This would always fail since init_bootmem hasn't been called yet. Move memory_present after free_bootmem. This only marks actual memory ranges as present instead of the entire address space. Signed-off-by: Chad Reese Signed-off-by: Ralf Baechle commit ecf52d3c895c8bc069b9ae07c18acf39d846c2ef Author: Atsushi Nemoto Date: Thu Jun 1 01:00:03 2006 +0900 [MIPS] Fix compiler warnings (field width, unused variable) Fix following warnings: linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 2) linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 4) linux/arch/mips/kernel/syscall.c:279: warning: unused variable `len' linux/arch/mips/kernel/syscall.c:280: warning: unused variable `name' linux/arch/mips/math-emu/dp_fint.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/dp_flong.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/sp_fint.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/sp_flong.c:32: warning: unused variable `xc' (original patch by Atsushi, slight changes to the setup.c part by me.) Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 460c0422c3861ab63a14c2be600a96a9e68b89f2 Author: Atsushi Nemoto Date: Thu Jun 1 01:00:39 2006 +0900 [MIPS] Fix sparse warnings about too big constants. Fix following warnings: linux/arch/mips/kernel/setup.c:249:12: warning: constant 0xffffffff00000000 is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:209:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:227:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:283:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:299:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit e32b699335b70fae94ce041c9a1c6d3a31a3f7e4 Author: Ralf Baechle Date: Tue May 30 15:55:05 2006 +0100 [MIPS] Fix 64-bit build for RM7000. RM7000 has 40-bit virtual / 36-bit physical address space. Signed-off-by: Ralf Baechle commit b6d7c7a91138c883f890c204cd5300172145b0b3 Author: Ralf Baechle Date: Tue May 30 02:13:16 2006 +0100 [MIPS] IP32: Fix warnings. The expressions are volatile; no need for temporary variables. Signed-off-by: Ralf Baechle commit 7cb710c9a617384cd0ed30638f3acc00125690fc Author: Sergei Shtylyov Date: Sat May 27 22:39:39 2006 +0400 [MIPS] Fix non-linear memory mapping on MIPS Fix the non-linear memory mapping done via remap_file_pages() -- it didn't work on any MIPS CPU because the page offset clashing with _PAGE_FILE and some other page protection bits which should have been left zeros for this kind of pages. Signed-off-by: Konstantin Baydarov Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit aa32374aaa2e516a9b0719477efae0782a62a79e Author: Ralf Baechle Date: Mon May 29 00:02:12 2006 +0100 [MIPS] SB1: Only pass1 FPUs are broken beyond recovery. The wrong revision number in the check was forcing a fallback to FPU emulation for all SB1 cores in 2.6. Signed-off-by: Ralf Baechle commit 7155262e180d3b50fdea0f58f3329d9ae81ef80b Author: Thiemo Seufer Date: Sun May 28 15:02:53 2006 +0100 [MIPS] open() forces O_LARGEFILE for o32 on 64bit kernels open() always sets the O_LARGEFILE flag for the o32 ABI implementation of a 64bit kernel. The appended patch fixes it. Signed-off-by: Thiemo Seufer Signed-off-by: Ralf Baechle commit fef6d6a73a3985e4fdb5ab1910909c0c73539829 Author: Sergei Shtylyov Date: Sat May 27 23:36:41 2006 +0400 [MIPS] Au1xx0: fix prom_getenv() to handle YAMON style environment Alchemy boards use YAMON which passes the environment variables as the tuples of strings (the name followed by the value) unlike PMON which passes "name=" strings. Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 6ebba0e2f56ee77270a9ef8e92c1b4ec38e5f419 Author: Sergei Shtylyov Date: Sat May 27 20:43:04 2006 +0400 [MIPS] Fix swap entry for MIPS32 36-bit physical address With 64-bit physical address enabled, 'swapon' was causing kernel oops on Alchemy CPUs (MIPS32) because of the swap entry type field corrupting the _PAGE_FILE bit in 'pte_low' field. So, switch to storing the swap entry in 'pte_high' field using all its bits except _PAGE_GLOBAL and _PAGE_VALID which gives 25 bits for the swap entry offset. Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 79e0bc37255a4b934291b4d3ea5a4561fbd78da4 Author: Sergei Shtylyov Date: Wed May 3 22:56:43 2006 +0400 [MIPS] Fix mprotect() syscall for MIPS32 w/36-bit physical address support Fix mprotect() syscall for MIPS32 CPUs with 36-bit physical address support: pte_modify() macro didn't clear the hardware page protection bits before modifying... Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 9370b35175ca43fad7d24bc7b391473f3becbee8 Author: Sergei Shtylyov Date: Fri May 26 19:44:54 2006 +0400 [MIPS] Save write-only Config.OD from being clobbered Save the Config.OD bit from being clobbered by coherency_setup(). This bit, when set, fixes various errata in the early steppings of Au1x00 SOCs. Unfortunately, the bit was write-only on the most early of them. In addition, also restore the bit after a wakeup from sleep. Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit cac4bcbce0e800f2219a27b66aaeb4a33f2e3dbc Author: Ralf Baechle Date: Wed May 24 16:51:02 2006 +0100 [MIPS] Print more information if we're struck by a machine check exception. Signed-off-by: Ralf Baechle commit 722ace9dfb73a62bf78c2db619795cfc128fef5a Author: Ralf Baechle Date: Wed May 24 03:04:18 2006 +0100 [MIPS] Fix declaration of smp_prepare_cpus() platform hook. A while ago prom_prepare_cpus was replaced by plat_prepare_cpus but the declaration has stayed unchanged. Signed-off-by: Ralf Baechle commit 1acf1ca7e906cf7453d76d76a6c953996295c220 Author: Atsushi Nemoto Date: Tue May 23 16:42:38 2006 +0900 [MIPS] Fix modpost warning: Rename op_model_xxx to op_model_xxx_ops. The modpost uses a whitelist for commonly used suffix on checking the section mismatch. Adding "_ops" suffix to op_modex_xxx get rid of this modpost warning. WARNING: arch/mips/oprofile/oprofile.o - Section mismatch: reference to .init.text: from .data after 'op_model_mipsxx' (at offset 0x528) Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 5ee823507b3c7d2187df2160125a4f64232d3a60 Author: Ralf Baechle Date: Tue May 23 16:37:32 2006 +0100 [MIPS] Fix instable BogoMIPS on multi-issue processors. Increase alignment of BogoMIPS loop to 8 bytes. Having the delay loop overlap cache line boundaries may cause instable delays. Signed-off-by: Ralf Baechle commit f3bf07b9a367c342bcbc9f47d525d3cf5e8b4f3b Author: Atsushi Nemoto Date: Tue May 23 00:45:07 2006 +0900 [MIPS] Ignore unresolved weak symbols in modules. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 320e6aba26892b016293190e079f15e83a5c28b9 Author: Ralf Baechle Date: Mon May 22 14:24:04 2006 +0100 [MIPS] Fix SMP now that fixup_cpu_present_map is gone. Signed-off-by: Ralf Baechle commit acf518cbba773e2c20fe313acb340da65001c7a8 Author: Ralf Baechle Date: Thu May 18 01:16:10 2006 +0200 [MIPS] Remove duplicate declaration of cpu_online_map. Signed-off-by: Ralf Baechle commit 8c893ff6abbac0c7c05b1cb9bfb6e2dfc4538c75 Author: Florin Malita Date: Mon Jun 5 15:34:52 2006 -0700 [IRDA]: Missing allocation result check in irlap_change_speed(). The skb allocation may fail, which can result in a NULL pointer dereference in irlap_queue_xmit(). Coverity CID: 434. Signed-off-by: Florin Malita Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 9bc18091a5e44a368827f539289b99788eb27d4e Author: Florin Malita Date: Mon Jun 5 15:34:33 2006 -0700 [PPPOE]: Missing result check in __pppoe_xmit(). skb_clone() may fail, we should check the result. Coverity CID: 1215. Signed-off-by: Florin Malita Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 6569a351da7e58d6f0fbc92fcf0bef5d4a4bc0a4 Author: Jes Sorensen Date: Mon Jun 5 15:34:11 2006 -0700 [NET]: Eliminate unused /proc/sys/net/ethernet The /proc/sys/net/ethernet directory has been sitting empty for more than 10 years! Time to eliminate it! Signed-off-by: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 92cd6eeea62e235fcb6634d87d1572c3da59f088 Author: Matt Mackall Date: Mon Jun 5 15:04:37 2006 -0700 [NETCONSOLE]: Clean up initcall warning. From: Matt Mackall netconsole is being wrong here. If it wasn't enabled there's no error. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit f291196979ca80cdef199ca2b55e2758e8c23a0d Author: Herbert Xu ~{PmVHI~} Date: Mon Jun 5 15:03:37 2006 -0700 [TCP]: Avoid skb_pull if possible when trimming head Trimming the head of an skb by calling skb_pull can cause the packet to become unaligned if the length pulled is odd. Since the length is entirely arbitrary for a FIN packet carrying data, this is actually quite common. Unaligned data is not the end of the world, but we should avoid it if it's easily done. In this case it is trivial. Since we're discarding all of the head data it doesn't matter whether we move skb->data forward or back. However, it is still possible to have unaligned skb->data in general. So network drivers should be prepared to handle it instead of crashing. This patch also adds an unlikely marking on len < headlen since partial ACKs on head data are extremely rare in the wild. As the return value of __pskb_trim_head is no longer ever NULL that has been removed. Signed-off-by: Herbert Xu ~{PmV>HI~} Signed-off-by: David S. Miller commit fec468b0c9e0a75b89514408e3b35b1576b57071 Author: Jeff Dike Date: Sun Jun 4 02:51:49 2006 -0700 [PATCH] uml: add -ffreestanding to CFLAGS From: Jeff Dike This fixes the undefined reference to strcpy seen when building modules on i386. Tracked down by Al Viro. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b8719c31a30a4a1054d99fbd51a88c2f6444392a Author: Al Viro Date: Sun Jun 4 02:51:48 2006 -0700 [PATCH] uml: more __user annotations From: Al Viro uml __user annotations Signed-off-by: Al Viro Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca34fb1a8786af43457ec4f1bfc101a66d1160e0 Author: Al Viro Date: Sun Jun 4 02:51:47 2006 -0700 [PATCH] uml: __user annotation in arch_prctl From: Al Viro fix uml/amd64 prctl() put_user() there should go to (long __user *)addr, not &addr Signed-off-by: Al Viro Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f218312582350900443125137e6c5fc484dc1de1 Author: Jeff Dike Date: Sun Jun 4 02:51:47 2006 -0700 [PATCH] uml: fix a typo in do_uml_initcalls From: Jeff Dike We had a spurious semicolon somehow. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5cb38bc47bf370570fce81f89e05e5250169060f Author: Jeff Dike Date: Sun Jun 4 02:51:46 2006 -0700 [PATCH] uml: fix wall_to_monotonic initialization From: Jeff Dike Initialize wall_to_monotonic correctly. This fixes a problem where sleeps lasted about one secone less than they should. This also called for a bit of code restructuring, following a patch which Blaisorblade had been keeping. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65e62974a8a6157140259b26e7156e39f53031b6 Author: Jeff Dike Date: Sun Jun 4 02:51:43 2006 -0700 [PATCH] uml: add asm/irqflags.h From: Jeff Dike Add an empty asm/irqflags.h, which seems to satisfy the lock validator enough that UML builds. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2d7b20c1884777e66009be1a533641c19c4705f6 Author: Andrew Morton Date: Sun Jun 4 02:51:42 2006 -0700 [PATCH] m48t86: ia64 build fix From: Andrew Morton drivers/rtc/rtc-m48t86.c: In function `m48t86_rtc_read_time': drivers/rtc/rtc-m48t86.c:51: error: structure has no member named `ia64_mv' drivers/rtc/rtc-m48t86.c:55: error: structure has no member named `ia64_mv' drivers/rtc/rtc-m48t86.c:56: error: structure has no member named `ia64_mv' drivers/rtc/rtc-m48t86.c:57: error: structure has no member named `ia64_mv' drivers/rtc/rtc-m48t86.c:58: error: structure has no member named `ia64_mv' drivers/rtc/rtc-m48t86.c:60: error: structure has no member named `ia64_mv' readb() and writeb() are macros on ia64. Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67f672f61bb75e74805046e4a301f4923b0ef753 Author: Rune Torgersen Date: Sun Jun 4 02:51:41 2006 -0700 [PATCH] sata_sil24: SII3124 sata driver endian problem From: "Rune Torgersen" Fix an endian issue in the sil24 driver. Signed-off-by: Rune Torgersen Acked-by: Jeff Garzik Cc: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 829a1985e732698ee98def146410e6e9f532781f Author: Stefan Richter Date: Sun Jun 4 02:51:40 2006 -0700 [PATCH] sbp2: fix check of return value of hpsb_allocate_and_register_addrspace() From: Stefan Richter I added a failure check in patch "sbp2: variable status FIFO address (fix login timeout)" --- alas for a wrong error value. This is a bug since Linux 2.6.16. Leads to NULL pointer dereference if the call failed, and bogus failure handling if call succeeded. Signed-off-by: Stefan Richter Cc: Cc: Ben Collins Cc: Jody McIntyre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 948c51e6a8d71df99ef57c61bc80dc7c20cbf7bc Author: Michael Chan Date: Sun Jun 4 02:51:39 2006 -0700 [PATCH] MAINTAINERS: Add entries for BNX2 and TG3 From: "Michael Chan" Add maintainer entries for Broadcom BNX2 and TG3 drivers. Signed-off-by: Michael Chan Cc: "David S. Miller" Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0674d594ad8e0856243536c0bcc22e4583554bfb Author: Zachary Amsden Date: Sun Jun 4 02:51:38 2006 -0700 [PATCH] Implement get / set tso for forcedeth driver From: Zachary Amsden Signed-off-by: Zachary Amsden Cc: Ayaz Abdulla Cc: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 78b86e579f11e7d7bd45acd90b6a87cd4b7c5a54 Author: Benjamin Herrenschmidt Date: Sun Jun 4 02:51:38 2006 -0700 [PATCH] pmf_register_irq_client() gives sleep with locks held warning From: Benjamin Herrenschmidt This fixes request_irq() potentially called from atomic context. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d09bb627d2470299dfb1af0e6d27fb4aece9196 Author: Trond Myklebust Date: Sun Jun 4 02:51:37 2006 -0700 [PATCH] fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path() From: Trond Myklebust We're presently running lock_kernel() under fs_lock via nfs's ->permission handler. That's a ranking bug and sometimes a sleep-in-spinlock bug. This problem was introduced in the openat() patchset. We should not need to hold the current->fs->lock for a codepath that doesn't use current->fs. [vsu@altlinux.ru: fix error path] Signed-off-by: Trond Myklebust Cc: Al Viro Signed-off-by: Sergey Vlasov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7d2d28b9851d0ffc9924b0e36bac806d18ebf25 Author: Ivan Kokshaysky Date: Sun Jun 4 02:51:34 2006 -0700 [PATCH] alpha: SMP IRQ routing fix From: Ivan Kokshaysky After removal of fixup_cpu_present_map() function Alpha ended up with an empty cpu_present_map, so secondary CPUs on SMP systems are not being started. Worse, on some platforms we route interrupts to secondary CPUs using cpu_possible_map which is still populated properly. As a result, these interrupts go nowhere so the machines like DP264 aren't able to boot even with a primary CPU. Fixed basically by s/cpu_present_mask/cpu_present_map/. Thanks to Ernst Herzberg for reporting the bug and testing the fix. Cc: Ernst Herzberg Cc: Richard Henderson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba0c19ed6a61a96d4b42b81cb19d4bc81b5f728c Author: Stephen Smalley Date: Sun Jun 4 02:51:30 2006 -0700 [PATCH] selinux: fix sb_lock/sb_security_lock nesting From: Stephen Smalley Fix unsafe nesting of sb_lock inside sb_security_lock in selinux_complete_init. Detected by the kernel locking validator. Signed-off-by: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93ff66bf1ef29881dffd6fdc344555dab03cdb42 Author: Ralf Baechle Date: Sun Jun 4 02:51:29 2006 -0700 [PATCH] Sparsemem build fix From: Ralf Baechle uses PAGE_SIZE, PAGE_SHIFT from without including that header itself. For some sparsemem configurations this may result in build errors like: CC init/initramfs.o In file included from include/linux/gfp.h:4, from include/linux/slab.h:15, from include/linux/percpu.h:4, from include/linux/rcupdate.h:41, from include/linux/dcache.h:10, from include/linux/fs.h:226, from init/initramfs.c:2: include/linux/mmzone.h:498:22: warning: "PAGE_SHIFT" is not defined In file included from include/linux/gfp.h:4, from include/linux/slab.h:15, from include/linux/percpu.h:4, from include/linux/rcupdate.h:41, from include/linux/dcache.h:10, from include/linux/fs.h:226, from init/initramfs.c:2: include/linux/mmzone.h:526: error: `PAGE_SIZE' undeclared here (not in a function) include/linux/mmzone.h: In function `__pfn_to_section': include/linux/mmzone.h:573: error: `PAGE_SHIFT' undeclared (first use in this function) include/linux/mmzone.h:573: error: (Each undeclared identifier is reported only once include/linux/mmzone.h:573: error: for each function it appears in.) include/linux/mmzone.h: In function `pfn_valid': include/linux/mmzone.h:578: error: `PAGE_SHIFT' undeclared (first use in this function) make[1]: *** [init/initramfs.o] Error 1 make: *** [init] Error 2 Signed-off-by: Ralf Baechle Seems-reasonable-to: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ae9538dd02824257e8e72c053c69ad6680aba04 Author: Peter Oberparleiter Date: Sun Jun 4 02:51:28 2006 -0700 [PATCH] s390: cio non-unique path group ids From: Peter Oberparleiter The path grouping can fail due to non-unique pathgroup-IDs. The source for the CPU-ID part of the ID was incorrectly specified on 64 bit systems. Additionally, the length of the ID was too large due to incorrect data packing declaration. Fix CPU-ID lowcore address and add missing packing declaration. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0ec574987a3301f7767750bb6e8be47d6323bfa Author: Cornelia Huck Date: Sun Jun 4 02:51:27 2006 -0700 [PATCH] s390: irb memcpy argument swap From: Cornelia Huck Swapped memcpy arguments in ccw_device_irq() when doing basic sense after unsolicited interrupt. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f258910733a8dbde368acc2ede4b8184ff0e09a Author: Florin Malita Date: Sun Jun 4 02:51:26 2006 -0700 [PATCH] nmclan_cs: dereferencing skb after netif_rx() From: Florin Malita The skb may be gone after netif_rx(), we can't use 'skb->len' to update the stats. 'pkt_len' should work instead. Coverity CID: 911. Signed-off-by: Florin Malita Cc: Dominik Brodowski Acked-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea9a7719597e81a119a155178eabfc941eef11cc Author: Michael Buesch Date: Sun Jun 4 02:20:42 2006 +0200 [PATCH] bcm43xx: add DMA rx poll workaround to DMA4 Also add the Poll RX DMA Memory workaround to the DMA4 (xmitstatus) path. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit a7d14f875f03cb78992da8387be81a4c9197f101 Author: Steve Yang Date: Mon Jun 5 19:47:17 2006 +0100 [ARM] 3543/1: [Fwd: PXA270 bootparams address not set] Patch from Steve Yang MACHINE_START struct doesn't have any bootargs location for the mainstone. Result is no kernel command args get passed; no serial driver is selected for console and results in a silent boot failure. Signed-off-by: Steve Yang Signed-off-by: Russell King commit 959eb39297e8c82f61fbfc283ad4ff11c883bf1e Author: Eli Cohen Date: Mon Jun 5 09:51:36 2006 -0700 IPoIB: Fix AH leak at interface down When ipoib_stop() is called it first calls netif_stop_queue() to stop the kernel from passing more packets to the network driver. However, the completion handler may call netif_wake_queue() re-enabling packet transfer. This might result in leaks (we see AH leaks which we think can be attributed to this bug) as new packets get posted while the interface is going down. Signed-off-by: Eli Cohen Signed-off-by: Michael Tsirkin Signed-off-by: Roland Dreier commit e853534e6b94f87e48f29e1701c3f6f8a63669c5 Author: Horst Schirmeier Date: Mon Jun 5 10:45:30 2006 +0100 [SERIAL] typo: buad -> baud Replacing mistyped "buad" with "baud" where applicable. Signed-off-by: Horst Schirmeier Signed-off-by: Russell King commit ae5de0ff0bc24664a053109c6caa782ba2ad7c53 Author: David S. Miller Date: Sun Jun 4 21:32:01 2006 -0700 [SPARC64]: Fix missing fold at end of checksums. Both csum_partial() and the csum_partial_copy*() family of routines forget to do a final fold on the computed checksum value on sparc64. So do the standard Sparc "add + set condition codes, add carry" sequence, then make sure the high 32-bits of the return value are clear. Based upon some excellent detective work and debugging done by Richard Braun and Samuel Thibault. Signed-off-by: David S. Miller commit c41045a43a08f898ef5490036f761c87a43dcddc Author: Egry Gabor Date: Sun Jun 4 21:22:11 2006 +0100 [ARM] Trivial typo fixes Trivial typo fixes in Kconfig files (ARM). Signed-off-by: Egry Gabor Signed-off-by: Russell King commit 092d01e260da628b01d4229c31a296111e3cd97a Author: Ralf Baechle Date: Sun Jun 4 17:40:58 2006 +0100 [MMC] Prevent au1xmmc.c breakage on non-Au1200 Alchemy The driver is selectable on other than Au1200 Alchemy systems but won't build nor work - there is no MMC hw. Signed-off-by: Ralf Baechle Signed-off-by: Russell King commit baca2da4c9c5de63b215b1d82f8e774449d15655 Author: Russell King Date: Sun Jun 4 17:36:31 2006 +0100 [MMC] Add maintainers entry for MMC subsystem Signed-off-by: Russell King commit fb80a6e1a521eb298edb4365429d533dd39427fa Author: Stephen Hemminger Date: Fri Jun 2 17:51:08 2006 -0700 [TCP] tcp_highspeed: Fix problem observed by Xiaoliang (David) Wei When snd_cwnd is smaller than 38 and the connection is in congestion avoidance phase (snd_cwnd > snd_ssthresh), the snd_cwnd seems to stop growing. The additive increase was confused because C array's are 0 based. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit ec8510f6fe57f59e42484809679af31ca7896dcf Author: Lennert Buytenhek Date: Fri Jun 2 19:51:51 2006 +0100 [ARM] 3540/1: ixp23xx: deal with gap in interrupt bitmasks Patch from Lennert Buytenhek On the ixp23xx, the microengine thread interrupt sources are numbered 56..119, but their mask/status bits are located in bit positions 64..127 in the various registers in the interrupt controller (bit positions 56..63 are unused.) We don't deal with this, so currently, when asked to enable IRQ 64, we will enable IRQ 56 instead. The only interrupts >= 64 are the thread interrupt sources, and there are no in-tree users of those yet, so this is fortunately not a big problem, but this needs fixing anyway. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit a77bc69138a4f52d003ca81d075f386953f6b25a Author: Lennert Buytenhek Date: Fri Jun 2 19:51:50 2006 +0100 [ARM] 3539/1: ixp23xx: fix __arch_ixp23xx_is_coherent() for A1 stepping Patch from Lennert Buytenhek The current __ixp23xx_arch_is_coherent() check assumes that the lower byte of IXP23XX_PRODUCT_ID is identical to the lower byte of processor_id, but this is not the case, and because of this we were incorrectly enabling coherency on A1 stepping CPUs. Stepping A1 of the ixp2350, which has a PRODUCT_ID of 0x401, has '02' in the lower byte of processor_id, while A2, with a PRODUCT_ID of 0x402, has '04' in the lower byte of processor_id. So, to check for >= A2, we really need to check the lower byte of processor_id against >= 4. Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King commit b1ab41c4943008375c149a63602d7407f61de5b2 Author: Ingo Molnar Date: Fri Jun 2 15:44:58 2006 +0200 [PATCH] slab.c: fix offslab_limit bug mm/slab.c's offlab_limit logic is totally broken. Firstly, "offslab_limit" is a global variable while it should either be calculated in situ or should be passed in as a parameter. Secondly, the more serious problem with it is that the condition for calculating it: if (!(OFF_SLAB(sizes->cs_cachep))) { offslab_limit = sizes->cs_size - sizeof(struct slab); offslab_limit /= sizeof(kmem_bufctl_t); is in total disconnect with the condition that makes use of it: /* More than offslab_limit objects will cause problems */ if ((flags & CFLGS_OFF_SLAB) && num > offslab_limit) break; but due to offslab_limit being a global variable this breakage was hidden. Up until lockdep came along and perturbed the slab sizes sufficiently so that the first off-slab cache would still see a (non-calculated) zero value for offslab_limit and would panic with: kmem_cache_create: couldn't create cache size-512. Call Trace: [] show_trace+0x96/0x1c8 [] dump_stack+0x13/0x15 [] panic+0x39/0x21a [] kmem_cache_create+0x5a0/0x5d0 [] kmem_cache_init+0x193/0x379 [] start_kernel+0x17f/0x218 [] _sinittext+0x263/0x26a Kernel panic - not syncing: kmem_cache_create(): failed to create slab `size-512' Paolo Ornati's config on x86_64 managed to trigger it. The fix is to move the calculation to the place that makes use of it. This also makes slab.o 54 bytes smaller. Btw., the check itself is quite silly. Its intention is to test whether the number of objects per slab would be higher than the number of slab control pointers possible. In theory it could be triggered: if someone tried to allocate 4-byte objects cache and explicitly requested with CFLGS_OFF_SLAB. So i kept the check. Out of historic interest i checked how old this bug was and it's ancient, 10 years old! It is the oldest hidden and then truly triggering bugs i ever saw being fixed in the kernel! Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 89f3da3e06257abba3e70163c92969f3fcd1833d Author: Peter Korsgaard Date: Fri Jun 2 17:47:26 2006 +0100 [SERIAL] Update parity handling documentation Update documentation to match reality. INPCK controls whether input parity checking is enabled. Signed-off-by: Peter Korsgaard Signed-off-by: Russell King commit 0b0968a3e691771bf87e1ce747b2c7d23b5526c8 Author: David S. Miller Date: Thu Jun 1 17:47:25 2006 -0700 [SPARC64]: Fix D-cache corruption in mremap If we move a mapping from one virtual address to another, and this changes the virtual color of the mapping to those pages, we can see corrupt data due to D-cache aliasing. Check for and deal with this by overriding the move_pte() macro. Set things up so that other platforms can cleanly override the move_pte() macro too. Signed-off-by: David S. Miller commit 2b0dd802ba1ff9b7001f5f9bd9b4d192a4aabf81 Author: Dominik Brodowski Date: Thu Jun 1 18:29:20 2006 +0200 [PATCH] pcmcia: fix zeroing of cm4000_cs.c data Fix the incorrect calculation of how much to zero out in struct cm4000_dev on device initialization. Signed-off-by: Dominik Brodowski commit 1617406a763870a84ffe6bba3659f30f96ac4a61 Author: Florin Malita Date: Wed May 24 21:21:31 2006 -0400 [PATCH] pcmcia: missing pcmcia_get_socket() result check The result of pcmcia_get_socket() may be NULL but ds_event() uses it without checking. Coverity CID: 436. Signed-off-by: Florin Malita Signed-off-by: Dominik Brodowski commit b52a834892f17b6c54c34ab65f1fad1a9229e764 Author: Jens Axboe Date: Thu Jun 1 18:53:43 2006 +0200 [PATCH] cfq-iosched: busy_rr fairness fix Now that we select busy_rr for possible service, insert entries at the back of that list instead of at the front. Signed-off-by: Jens Axboe commit f52359622fa25783cf1a08c0772048d2ed1a7434 Author: Bryan Holty Date: Wed Mar 22 06:35:39 2006 -0600 [SCSI] scsi_lib.c: properly count the number of pages in scsi_req_map_sg() The calculation of nr_pages in scsi_req_map_sg() doesn't account for the fact that the first page could have an offset that pushes the end of the buffer onto a new page. Signed-off-by: Bryan Holty Signed-off-by: James Bottomley commit ae818a38d4755ba4c16a22a8eacec859511a5393 Author: Jens Axboe Date: Thu Jun 1 10:13:43 2006 +0200 [PATCH] cfq-iosched: fix bug in timer handling for the idle class There's a small window from when the timer is entered and we grab the queue lock, where cfq_set_active_queue() could be rearming the timer for us. Seen in the wild on a 12-way ppc box. Fix this by just using mod_timer(), which will do the right thing for us. Signed-off-by: Jens Axboe commit 25776e3594f841b7fae7b33ebecf009a0a55bed1 Author: Jens Axboe Date: Thu Jun 1 10:12:26 2006 +0200 [PATCH] cfq-iosched: Detect hardware queueing If the hardware is doing real queueing, decide that it's worthless to idle the hardware. It does reasonable simultaneous io in that case anyways, and the idling hurts some work loads. Signed-off-by: Jens Axboe commit 12e9fddd6eb827937fcaac8ac7712c7303898b1f Author: Jens Axboe Date: Thu Jun 1 10:09:56 2006 +0200 [PATCH] cfq-iosched: Detect idle process issuing async request If we are anticipating a sync request from this process and we are waiting for that and see an async request come in, expire that slice and move on. Signed-off-by: Jens Axboe commit e0de0206a2a37cd3e0ba9954d9f863e11d6d1782 Author: Jens Axboe Date: Thu Jun 1 10:07:26 2006 +0200 [PATCH] cfq-iosched: check busy queues before deciding we are idle For just one busy queue (like async write out), we often overlooked that we could queue more io and decided we were idle instead. This causes us quite a bit of performance loss. Signed-off-by: Jens Axboe commit 44d921b246923380f26b8010e47ac5dfe48fcec5 Author: Kumba Date: Tue May 16 22:23:59 2006 -0400 [MIPS] Treat R14000 like R10000. Signed-off-by: Joshua Kinard Signed-off-by: Ralf Baechle commit 714bfad60f3a127147aba76e9c57860c26b1450d Author: Ralf Baechle Date: Wed May 17 14:04:30 2006 +0100 [MIPS] Remove EXPERIMENTAL from PAGE_SIZE_16KB This is known to be working fine for a while. While at it also update and fix the help texts. Signed-off-by: Ralf Baechle commit ca30225e9e4c0c74fe781a9fd1d1ad5f85b29c60 Author: Thiemo Seufer Date: Mon May 15 18:27:03 2006 +0100 [MIPS] Update/Fix instruction definitions A small bugfix for up to now unused instruction definitions, and a somewhat larger update to cover MIPS32R2 instructions. Signed-off-by: Thiemo Seufer Signed-off-by: Ralf Baechle commit 3301edcbd7aab674bd7598e6b97a314b93874ec0 Author: Thiemo Seufer Date: Mon May 15 18:24:57 2006 +0100 [MIPS] DSP and MDMX share the same config flag bit. Clarify comment. Signed-off-by: Thiemo Seufer Signed-off-by: Ralf Baechle commit 7f3f1d01a9020cff2cb2390aaee3f8df0d70e203 Author: Ralf Baechle Date: Fri May 12 13:20:06 2006 +0100 [MIPS] Fix deadlock on MP with cache aliases. A proper fix would involve introducing the notion of shared caches but at this stage of 2.6.17 that's going to be too intrusive and not needed for current hardware; aside I think some discussion will be needed. So for now on the affected SMP configurations which happen to suffer from cache aliases we make use of the fact that a single cache will be shared by all processors. This solves the deadlock issue and will improve performance by getting rid of the smp_call_function overhead. Signed-off-by: Ralf Baechle commit 78665aaa96fe62b4cee6c226680801c4480aa407 Author: Atsushi Nemoto Date: Thu May 11 00:41:26 2006 +0900 [MIPS] Use generic STABS_DEBUG macro. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 3fa986faad2bb015c3ad6d09a0686016482bc01c Author: Martin Michlmayr Date: Tue May 9 23:34:53 2006 +0200 [MIPS] Create consistency in "system type" selection. The "system type" Kconfig options on MIPS are not consistent. For some platforms, only the name is listed while other entries are prepended with "Support for". Remove this as it doesn't make sense when describing the "system type". Signed-off-by: Martin Michlmayr Signed-off-by: Ralf Baechle commit 04b6b3b651b2147ab7e94c0d302b5cab07dfab4c Author: Atsushi Nemoto Date: Wed May 10 15:36:04 2006 +0900 [MIPS] Use generic DWARF_DEBUG When debugging a kernel compiled by gcc 4.1 with gdb 6.4, gdb could not show filename, linenumber, etc. It seems fixed if I used generic DWARF_DEBUG macro. Although gcc 3.x seems work without this change, it would be better to use the generic macro unless there were something MIPS specific. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 867a521b4cd6c9d26cd736d85bfe84e10c0c05ac Author: Atsushi Nemoto Date: Tue May 9 20:23:49 2006 +0900 [MIPS] Fix kgdb exception handler from user mode. Fix a calculation of saved vector address in trap_low. (damage done by lmo f4c72cc737561aab0d9c7f877abbc0a853f1c465) Signed-off-by: Ralf Baechle commit 1c0c1ae4f3d5057d091677d0ef7dbaeb28122ded Author: Daniel Jacobowitz Date: Mon May 8 15:28:22 2006 -0400 [MIPS] Update struct sigcontext member names Rename the 64-bit sc_hi and sc_lo arrays to use the same names as the 32-bit struct sigcontext (sc_mdhi, sc_hi1, et cetera). Signed-off-by: Daniel Jacobowitz Signed-off-by: Ralf Baechle commit 6ee1da94c5fed95bacce3eda8e6d9e69324ecab7 Author: Ralf Baechle Date: Wed May 3 20:42:39 2006 +0100 [MIPS] Update/fix futex assembly o Implement futex_atomic_op_inuser() operation o Don't use the R10000-ll/sc bug workaround version for every processor. branch likely is deprecated and some historic ll/sc processors don't implement it. In any case it's slow. Signed-off-by: Ralf Baechle commit 235a9d3eee9a9588c17d39efff8373d0513549b5 Author: Ralf Baechle Date: Wed May 3 02:27:40 2006 +0100 [MIPS] Remove support for sysmips(2) SETNAME and MIPS_RDNVRAM operations. SETNAME only had a minor defect but probably never had a user and MIPS_RDNVRAM was unimplemented anyway. Signed-off-by: Ralf Baechle commit c620953c32d301c2a7bc73f9f780301e110b7d7c Author: Chris Dearman Date: Tue May 2 14:08:46 2006 +0100 [MIPS] Fix detection and handling of the 74K processor. Nothing exciting; Linux just didn't know it yet so this is most adding a value to a case statement. Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit 98a41de99a4e4febe99b22c3a28d434caeb3165c Author: Nigel Stephens Date: Thu Apr 27 15:50:32 2006 +0100 [MIPS] Add missing 34K processor IDs The 34K is very much like a 24K on steroids. Signed-off-by: Ralf Baechle commit 6e9538917c5f62c1a1598da9b898702800801b98 Author: Sergei Shtylyov Date: Sun Apr 16 23:27:21 2006 +0400 [MIPS] Fix marking buddy of pte global for MIPS32 w/36-bit physical address In case of CONFIG_64BIT_PHYS_ADDR, set_pte() and pte_clear() functions only set _PAGE_GLOBAL bit in the pte_low field of the buddy PTEs, forgetting to propagate ito to pte_high. Thus, the both pages might not really be made global for the CPU (since it AND's the G-bit of the odd / even PTEs together to decide whether they're global or not). Thus, if only a single page is allocated via vmalloc() or ioremap(), it's not really global for CPU (and it must be, since this is kernel mapping), and thus its ASID is compared against the current process' one -- so, we'll get into trouble sooner or later... Also, pte_none() will fail on global pages because _PAGE_GLOBAL bit is set in both pte_low and pte_high, and pte_val() will return u64 value consisting of those fields concateneted. Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 343fdc39713d9c2fe836523e8f2dfc6a3ac39122 Author: Herbert Valerio Riedel Date: Wed Apr 12 09:03:08 2006 +0200 [MIPS] AU1xxx mips_timer_interrupt() fixes common/au1000/irq.c was missing a mips_timer_interrupt() prototype, whereas in common/au1000/time.c the actual mips_timer_interrupt() implementation was missing an irq_exit() invocation, causing a preempt_count() leak. Signed-off-by: Herbert Valerio Riedel Signed-off-by: Ralf Baechle commit 477654fc5d5078d2213817609e68e8c968293261 Author: Ralf Baechle Date: Thu Apr 27 15:44:50 2006 +0100 [MIPS] Fix typo Found by Chris Dearman (chris@mips.com). Signed-off-by: Ralf Baechle commit 5cedae9ca752a43cfb1074907d12c9f01fbebd45 Author: Deepak Saxena Date: Wed May 31 16:14:05 2006 -0700 [PATCH] ARM: Fix XScale PMD setting The ARM Architecture Reference Manual lists bit 4 of the PMD as "implementation defined" and it must be set to zero on Intel XScale CPUs or the cache does not behave properly. Found by Mike Rapoport while debugging a flash issue on the PXA255: http://marc.10east.com/?l=linux-arm-kernel&m=114845287600782&w=1 Signed-off-by: Deepak Saxena Signed-off-by: Linus Torvalds commit 29f767a254be8fd44fb5d2b5a48e9cda8399c4ea Author: Andrew Morton Date: Tue May 30 21:27:18 2006 -0700 [PATCH] net/compat.h build fix From: Andrew Morton Move the forward decl outside the ifdef, since we use it in both legs. Should fix the spacr64 build error reported in http://bugzilla.kernel.org/show_bug.cgi?id=6625 Acked-by: "David S. Miller" Cc: Cedric Pellerin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c331eb04b995ad276a7ece4608326f1db4e137d8 Author: NeilBrown Date: Tue May 30 21:27:13 2006 -0700 [PATCH] md: Fix badness in sysfs_notify caused by md_new_event From: NeilBrown If an error is reported by a drive in a RAID array (which is done via bi_end_io - in interrupt context), we call md_error and md_new_event which calls sysfs_notify. However sysfs_notify grabs a mutex and so cannot be called in interrupt context. This patch just creates a variant of md_new_event which avoids the sysfs call, and uses that. A better fix for later is to arrange for the event to be called from user-context. Note: avoiding the sysfs call isn't a problem as an error will not, by itself, modify the sync_action attribute. (We do still need to wake_up(&md_event_waiters) as an error by itself will modify /proc/mdstat). Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a835fa798ddfbfe4c63ff5e22c93fa5d24c95f7b Author: Jeremy Higdon Date: Tue May 30 21:27:07 2006 -0700 [PATCH] sgiioc4: use mmio ops instead of port io From: Jeremy Higdon This patch fixes a bug in sgiioc4 where it was using the default IDE port I/O operations instead of MMIO. The IDE part of the IOC4 chip uses MMIO to map the chip registers. Unfortunately, the sgiioc4 driver uses the default port IO operations, which happens to have worked for the past few years. That's about to change, however, thus this change from inX/outX to readX/writeX. Signed-off-by: Jeremy Higdon Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8fd66ab852281f9e28e1774c17b49f26c4626fd1 Author: Martin Michlmayr Date: Tue May 30 21:27:02 2006 -0700 [PATCH] maxinefb: Fix compilation error From: Martin Michlmayr Fix the following compilation error: CC drivers/video/maxinefb.o drivers/video/maxinefb.c:58: warning: initializer-string for array of chars is too long drivers/video/maxinefb.c:58: warning: (near initialization for \u2018maxinefb_fix.id\u2019) drivers/video/maxinefb.c:110: error: unknown field \u2018fb_get_fix\u2019 specified in initializer drivers/video/maxinefb.c:110: error: \u2018gen_get_fix\u2019 undeclared here (not in a function) drivers/video/maxinefb.c:111: error: unknown field \u2018fb_get_var\u2019 specified in initializer drivers/video/maxinefb.c:111: error: \u2018gen_get_var\u2019 undeclared here (not in a function) make[2]: *** [drivers/video/maxinefb.o] Error 1 Signed-off-by: Martin Michlmayr Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c05b7f3d12b9455d746b69b7078ed34d777f560b Author: Rodolfo Giometti Date: Tue May 30 21:26:57 2006 -0700 [PATCH] au1100fb: Fix compilation From: Rodolfo Giometti Fix the following warning on compilation: drivers/video/au1100fb.c: In function `au1100fb_fb_setcolreg': drivers/video/au1100fb.c:219: warning: ISO C90 forbids mixed declarations and code drivers/video/au1100fb.c: In function `au1100fb_fb_pan_display': drivers/video/au1100fb.c:321: warning: ISO C90 forbids mixed declarations and code drivers/video/au1100fb.c: In function `au1100fb_fb_mmap': drivers/video/au1100fb.c:387: warning: ISO C90 forbids mixed declarations and code drivers/video/au1100fb.c: In function `au1100fb_drv_probe': drivers/video/au1100fb.c:471: warning: unsigned int format, long unsigned int arg (arg 2) drivers/video/au1100fb.c: At top level: drivers/video/au1100fb.c:617: warning: initialization from incompatible pointer type drivers/video/au1100fb.c:618: warning: initialization from incompatible pointer type Signed-off-by: Rodolfo Giometti Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a47d749e3d067e057d276075fed1d91749d3841 Author: Benjamin Herrenschmidt Date: Tue May 30 21:26:51 2006 -0700 [PATCH] powerpc: Fix boot on eMac From: Benjamin Herrenschmidt Prevent calling of some platform functions on the clock chips of the eMac as it seems to cause it to lockup at boot. For now, add a quirk to prevent that from happening. Later, I might find out what's wrong and fix it but that doesn't seem to be important as the machine appear to work fine without running those. It's possible that Darwin doesn't run them. Signed-off-by: Benjamin Herrenschmidt Cc: Nathan Pilatzke Cc: Paul Mackerras Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d16b76421f0b3216012ee2d7819355e1cb847e5 Author: Stephen Hemminger Date: Tue May 30 21:26:09 2006 -0700 [PATCH] hrtimer: export symbols From: Stephen Hemminger I want to use the hrtimer's in the netem (Network Emulator) qdisc. But the necessary symbols aren't exported for module use. Also needed by SystemTap. Signed-off-by: Stephen Hemminger Acked-by: Ingo Molnar Cc: Thomas Gleixner Cc: "Stone, Joshua I" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 760f1fce030ccc620ec430a8aff8fc604e7891ed Author: Andrew Morton Date: Tue May 30 21:26:03 2006 -0700 [PATCH] revert "swsusp add check for suspension of X controlled devices" From: Andrew Morton Revert commit ff4da2e262d2509fe1bacff70dd00934be569c66. It broke APM suspend, probably because APM doesn't switch back to a VT when suspending. Tracked down by Matt Mackall Rafael sayeth: "It only fixed the theoretical issue that a quick-handed user could switch to X after processes have been frozen and before the devices are suspended. With the current userland suspend tools it shouldn't be necessary." Cc: Pavel Machek Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d61a3ead268084cc271d7b2aa2950fc822a37cf5 Author: Corey Minyard Date: Tue May 30 21:25:57 2006 -0700 [PATCH] IPMI: reserve I/O ports separately From: Corey Minyard This patch is pretty important to get in for IPMI, new systems have been changing the way ACPI and IPMI interact, and this works around the problems for now. This is a temporary fix until we get proper ACPI handling in IPMI. Fixed releasing already-allocated regions when a later request fails, and forward-ported it to HEAD. Some BIOSes reserve disjoint I/O regions in their ACPI tables for the IPMI controller. This causes problems when trying to register the entire I/O region. Therefore we must register each I/O port separately. Signed-off-by: Jordan Hargrave Signed-off-by: Matt Domsch Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44d7aff035118e8c3993aa3fa05d358d1008e982 Author: Seiji Munetoh Date: Tue May 30 21:25:52 2006 -0700 [PATCH] tpm: more bios log parsing fixes From: Seiji Munetoh Change the binary output format to actual ACPI TCPA log structure since the current format does not contain all event-data information that need to verify the PCRs in TPM. tpm_binary_bios_measurements_show() uses get_event_name() to convert the binary event-data to ascii format, and puts them as binary. However, to verify the PCRs, the event-data must be a actual binary event-data used by SHA1 calc. in BIOS. So, I think actual ACPI TCPA log is good for this binary output format. That way, any userland tools easily parse this data with reference to TCG PC specification. Signed-off-by: Seiji Munetoh Acked-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de66a695bef17264b2472c06e981c068bfa0636e Author: Seiji Munetoh Date: Tue May 30 21:25:47 2006 -0700 [PATCH] tpm: bios log parsing fixes From: Seiji Munetoh Fix "tcpa_pc_event" misalignment between enum, strings and TCG PC spec and output of the event which contains a hash data. Signed-off-by: Seiji Munetoh Acked-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25a6df952542ad9f284421b6ffe28f3eb3df1305 Author: Yasunori Goto Date: Tue May 30 21:25:42 2006 -0700 [PATCH] spanned_pages is not updated at a case of memory hot-add From: Yasunori Goto If hot-added memory's address is smaller than old area, spanned_pages will not be updated. It must be fixed. example) Old zone_start_pfn = 0x60000, and spanned_pages = 0x10000 Added new memory's start_pfn = 0x50000, and end_pfn = 0x60000 new spanned_pages will be still 0x10000 by old code. (It should be updated to 0x20000.) Because old_zone_end_pfn will be 0x70000, and end_pfn smaller than it. So, spanned_pages will not be updated. In current code, spanned_pages is updated only when end_pfn is updated. But, it should be updated by subtraction between bigger end_pfn and new zone_start_pfn. Signed-off-by: Yasunori Goto Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 308af9290ad1844c1b4e93ff4919f8009efbe018 Author: David Hollister Date: Tue May 30 21:25:36 2006 -0700 [PATCH] fbcon: fix scrollback with logo issue immediately after boot From: David Hollister After the system boots with the logo, if the first action is a scrollback, the screen may become garbled. This patch ensures that the softback_curr value is updated along with softback_in following the scrollback. Signed-off-by: David Hollister Signed-off-by: Jordan Crouse Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6855a3a6c3ab611c3a393be846c1e36120033b18 Author: Andrew Morton Date: Tue May 30 21:25:31 2006 -0700 [PATCH] ext3 resize: fix double unlock_super() From: Andrew Morton Spotted by Jan Capek Cc: "Stephen C. Tweedie" Cc: Andreas Dilger Cc: Jan Capek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 951bc82c53f30ec6b4c2d04a051e74ea9a89b669 Author: David S. Miller Date: Wed May 31 01:24:02 2006 -0700 [SPARC64]: Make smp_processor_id() functional before start_kernel() Uses of smp_processor_id() get pushed earlier and earlier in the start_kernel() sequence. So just get it working before we call start_kernel() to avoid all possible problems. Signed-off-by: David S. Miller commit e6ed89ac9f5da16fea5111651b6de0ff0a76a5c2 Author: Deepak Saxena Date: Tue May 30 14:36:49 2006 -0700 [PATCH] ARM: explicitly disable BTB on ixp2350 We don't enable the BTB on the ixp2350 as that can cause weird crashes (erratum #42.) However, some bootloaders enable the BTB, which means that we have to disable the BTB explicitly. Found thanks to Tom Rini. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Linus Torvalds commit 9a8fca0499c611ab37b5c0d4481ca09d3f6e8101 Author: Linus Torvalds Date: Tue May 30 20:32:15 2006 -0700 Revert "[PATCH] i386/x86_64: Force pci=noacpi on HP XW9300" This reverts commit 5491d0f3e206beb95eeb506510d62a1dab462df1. As per Andi: "After some discussion with people who have the affected system it seems best to revert for 2.6.17. It broke a common BIOS workaround and PCI-X still doesn't work. Alternative is for people to change the BIOS which seems to be better right now." Signed-off-by: Linus Torvalds commit 822ff019f72ae01baef1893e86735f1a5e36be7d Author: Andi Kleen Date: Tue May 30 22:48:03 2006 +0200 [PATCH] x86_64: Don't do syscall exit tracing twice int_ret_from_syscall already does syscall exit tracing, so no need to do it again in the caller. This caused problems for UML and some other special programs doing syscall interception. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 7ca97c6131dac9f06b1856a95a2ec89d43844286 Author: Robert Hentosh Date: Tue May 30 22:48:00 2006 +0200 [PATCH] x86_64: Fix off by one in bad_addr checking in find_e820_area From: Robert Hentosh Actually, we just stumbled on a different bug found in find_e820_area() in e820.c. The following code does not handle the edge condition correctly: while (bad_addr(&addr, size) && addr+size < ei->addr + ei->size) ; last = addr + size; if ( last > ei->addr + ei->size ) continue; The second statement in the while loop needs to be a <= b so that it is the logical negavite of the if (a > b) outside it. It needs to read: while (bad_addr(&addr, size) && addr+size <= ei->addr + ei->size) ; In the case that failed bad_addr was returning an address that is exactly size bellow the end of the e820 range. AK: Again together with the earlier avoid edma fix this fixes boot on a Dell PE6850/16GB Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 0d01532451710110a93891ae152d1dd1ee006ccf Author: Daniel Yeisley Date: Tue May 30 22:47:57 2006 +0200 [PATCH] x86_64: Handle empty node zero From: Daniel Yeisley It is possible to boot a Unisys ES7000 with CPUs from multiple cells, and not also include the memory from those cells. This can create a scenario where node 0 has cpus, but no associated memory. The system will boot fine in a configuration where node 0 has memory, but nodes 2 and 3 do not. [AK: I rechecked the code and generic code seems to indeed handle that already. Dan's original patch had a change for mm/slab.c that seems to be already in now.] Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit b2468e525f29882f866cb0b832956e69328f9647 Author: Jan Beulich Date: Tue May 30 22:47:54 2006 +0200 [PATCH] x86_64: fix last_tsc calculation of PM timer From: "Jan Beulich" The PM timer code updates vxtime.last_tsc, but this update was done incorrectly in two ways: - offset_delay being in microseconds requires multiplying with cpu_mhz rather than cpu_khz - the multiplication of offset_delay and cpu_khz (both being 32-bit values) on most current CPUs would overflow (observed value of the delay was approximately 4000us, yielding an overflow for frequencies starting a little above 1GHz) Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 2ba567cbd7626700b800d4ce9503bd3cd78ed7ef Author: Jan Beulich Date: Tue May 30 22:47:51 2006 +0200 [PATCH] i386: apic= command line option should always be From: "Jan Beulich" When using apic= on the kernel command line, this had no effect for machines matched by either the ACPI MADT or the MPS OEM table scan. However, when such option is specified, it should also take effect for this set of systems. Signed-off-by: Jan Beulich Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit dc9a719528d782777b86936b817cc0913d5f0b42 Author: Andi Kleen Date: Tue May 30 22:47:48 2006 +0200 [PATCH] x86_64: Fix no IOMMU warning in PCI-GART driver Complaining about the IOMMU not compiled in doesn't make sense here because it is clearly compiled in. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 6ae53cd496d36db5f25e6f84b8b9fe7e675999a1 Author: Andi Kleen Date: Tue May 30 22:47:45 2006 +0200 [PATCH] x86_64: Fix stack/mmap randomization for compat tasks ia32_setup_arg_pages would ignore the passed in random stack top and use its own static value. Now it uses the 8bit of randomness native i386 would use too. This indirectly fixes mmap randomization for 32bit processes too, which depends on the stack randomization. Should also give slightly better virtual cache colouring and possibly better performance with HyperThreading. Signed-off-by: Andi Kleen Acked-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 3793c65c13e4751c7a10f98198bae1758453eb0e Author: Jens Axboe Date: Tue May 30 21:11:04 2006 +0200 [PATCH] cfq-iosched: fixup locking and ->queue_list list management - Drop cic from the list when seen as dead. - Fixup the locking, just use a simple spinlock. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 55aa2e097dd5f0546972fc2607d7094181967ce2 Author: Steve French Date: Tue May 30 18:09:31 2006 +0000 [[CIFS] Pass truncate open flag through on file open in case setattr fails on set size to zero. Signed-off-by: Sebastian Voitzsch Signed-off-by: Steve French commit 08775834c412c48f3539ef7ed073fff58e3cf419 Author: Steve French Date: Tue May 30 18:08:26 2006 +0000 [CIFS] Fix typos in previous fix Signed-off-by: Steve French commit cec6815a12edc91b123394f29d672cb9fa6cf79f Author: Steve French Date: Tue May 30 18:07:17 2006 +0000 [CIFS] endian fix for new POSIX byte range lock support Signed-off-by: Alexey Dobriyan Signed-off-by: Steve French commit a424f8bfcbecb8353b88a351394e8d1960136219 Author: Steve French Date: Tue May 30 18:06:04 2006 +0000 [CIFS] fix memory leak in cifs session info struct on reconnect Signed-off-by: Steve French commit c01f36a896cb11e8533b4f7c132a1722fb15102b Author: Steve French Date: Tue May 30 18:05:10 2006 +0000 [CIFS] ACPI suspend oops Wasn't able to reproduce a hard hang, but was able to get an oops if suspended the machine during a copy to the cifs mount. This led to some things hanging, including a "sync". Also got I/O errors when trying to access the mount afterwards (even when didn't see the oops), and had to unmount and remount in order to access the filesystem. This patch fixed the oops. Signed-off-by: Dave Kleikamp Signed-off-by: Steve French commit a878fb2218c87fe66f2bcf3914840e24c41338f7 Author: Steve French Date: Tue May 30 18:04:19 2006 +0000 [CIFS] Do not limit the length of share names (was 100 for whole UNC name) during mount. Especially important for some non-Western languages. Signed-off-by: Steve French commit fc94cdb94462e71a4a974bc9bc1f483189ae7805 Author: Steve French Date: Tue May 30 18:03:32 2006 +0000 [CIFS] Fix new POSIX Locking for setting lock_type correctly on unlock Signed-off-by: Steve French commit 47ce56edb8ecdd4ec2bbec4e8683f3ba91de72e3 Author: Kenan Esau Date: Mon May 29 23:31:12 2006 -0400 Input: psmouse - DMI updates for lifebook protocol Added different lifebook-versions and the CF-18 to the corresponding dmi-table. Signed-off-by: Kenan Esau Signed-off-by: Dmitry Torokhov commit ed8f9e2f047de5d9b791e390269f230a101a6a4b Author: Richard Purdie Date: Mon May 29 23:31:03 2006 -0400 Input: change from numbered to named switches Remove the numbered SW_* entries from the input system and assign names to the existing users. Signed-off-by: Richard Purdie Signed-off-by: Dmitry Torokhov commit d2f4012f15845761bd3c6f90172e53767c11e359 Author: Yotam Medini Date: Mon May 29 23:30:36 2006 -0400 Input: alps - fix old protocol decoding Correct touchpad left & right keys assignments for ALPS_OLDPROTO that were swapped. Old protocol is used on UMAX ActionBook-530T notebook. Signed-off-by: Yotam Medini Signed-off-by: Dmitry Torokhov commit e107b8ee7e97fc20695ca3d5ef862511eca28df0 Author: masc@theaterzentrum.at Date: Mon May 29 23:29:36 2006 -0400 Input: wistron - add support for AOpen Barebook 1559as Signed-off-by: Dmitry Torokhov commit 4f8b05efec7a56221c6d1b0e20bcf19671017065 Author: Zbigniew Luszpinski Date: Mon May 29 23:29:19 2006 -0400 Input: psmouse - add detection of Logitech TrackMan Wheel trackball Signed-off-by: Dmitry Torokhov commit 7363cfc8666692a5263c646e68e54900b536cd7e Author: Jesper Juhl Date: Mon May 29 23:28:05 2006 -0400 Input: sidewinder - fix memory leak In sw_connect we leak 'buf' and 'idbuf' when we do not leave via one of the fail* labels. This was spotted by the coverity checker. Patch is compile tested only due to lack of hardware. Signed-off-by: Jesper Juhl Signed-off-by: Dmitry Torokhov commit f39b25bed373cf11a2c0490bee8b0ac430aadff4 Author: Matthew Garrett Date: Mon May 29 23:27:39 2006 -0400 Input: add KEY_BATTERY keycode Signed-off-by: Dmitry Torokhov commit 7114b0bb6df7b2db266ba4847e4dd8333fa98a9a Author: Alexey Dobriyan Date: Sun May 28 22:51:05 2006 -0700 [NETFILTER]: PPTP helper: fix sstate/cstate typo Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ca3ba88d0cf4b5d7a628caf505c231162dde9429 Author: Patrick McHardy Date: Sun May 28 22:50:40 2006 -0700 [NETFILTER]: mark H.323 helper experimental Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6c813c3fe9e30fcf3c4d94d2ba24108babd745b0 Author: Marcel Holtmann Date: Sun May 28 22:50:18 2006 -0700 [NETFILTER]: Fix small information leak in SO_ORIGINAL_DST (CVE-2006-1343) It appears that sockaddr_in.sin_zero is not zeroed during getsockopt(...SO_ORIGINAL_DST...) operation. This can lead to an information leak (CVE-2006-1343). Signed-off-by: Marcel Holtmann Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b82e8005af14b51600714971e0c6420c4e334a50 Author: Paul Mackerras Date: Mon May 29 08:42:34 2006 +1000 ppc: Fix typo in TI_LOCAL_FLAGS definition A typo crept in with commit ea1e847cc202e805769c3c46ba5e5c53714068a1 which defined TI_LOCAL_FLAGS to be the offset of the `flags' field of struct thread_info, rather than the `local_flags' field. This fixes it. The typo was pointed out by Guennadi Liakhovetski. Signed-off-by: Paul Mackerras commit 0737ac895afbfbe210557fa5fbafcca932d5fa7c Author: Mark Lord Date: Sun May 28 11:28:00 2006 -0400 [PATCH] the latest consensus libata resume fix Okay, just to sum things up. This forces libata to wait for up to 2 seconds for BUSY|DRQ to clear on resume before continuing. [jgarzik adds...] During testing we never saw DRQ asserted, but nonetheless (a) this works and (b) testing for DRQ won't hurt. Signed-off-by: Mark Lord Acked-by: Jens Axboe Signed-off-by: Jeff Garzik commit e82b0f2cc21be905e504573483fa9542b15df96f Author: Jeff Garzik Date: Fri May 26 21:58:38 2006 -0400 [netdrvr s/390] trim trailing whitespace Previous fix patches added a bunch of trailing whitespace, which git-applymbox complained loudly about. commit 74ef872c8f250acc02add54ff9d96f31d17bfeb3 Author: Klaus Wacker Date: Wed May 24 09:51:21 2006 +0200 [PATCH] s390: lcs driver bug fixes and improvements [2/2] This is the second lcs driver patch containing the rest of lcs fixes. Signed-off-by: Frank Pavlic Signed-off-by: Jeff Garzik commit 27eb5ac8f015687205a51425620064c711784956 Author: Klaus Wacker Date: Wed May 24 09:51:17 2006 +0200 [PATCH] s390: lcs driver bug fixes and improvements [1/2] Several problems occured with lcs device driver: - device not operational anymore after cable pull/plug-in. - unpredictable results occured, e.g. kernel panic using cards of type QD8F. - STOPLAN and delete multicast address command were not proper recognized by OSA card under heavy network workload. - channel/device error checks missing in interrupt handler. To fix all problems at once recovery of lcs devices has been improved. missing error checks in lcs interrupt handler has been added. Once a hardware problem occurs lcs will recover the device now properly. Signed-off-by: Frank Pavlic Signed-off-by: Jeff Garzik commit ba1aa084d6fb725a4c026adf69845ca60bab3b36 Author: Ursula Braun Date: Wed May 24 09:51:13 2006 +0200 [PATCH] s390: qeth driver fixes From: Frank Blaschka From: Frank Pavlic - fix fake_ll during initial device bringup. fake_ll was not active after first start of the device. Problem only occured when qeth was built without IPV6 support. - avoid skb usage after invocation of qeth_flush_buffers, because skb might already be freed. - remove yet another useless netif_wake_queue in qeth_softsetup_ipv6 since this function is only called when device is going online. In this case card->state will never be in state UP. So let the net_device queue down . Signed-off-by: Frank Pavlic Signed-off-by: Jeff Garzik commit b85e1fa196da91e07c98eaf014ae773c2a2e0c4f Author: Ursula Braun Date: Wed May 24 09:51:11 2006 +0200 [PATCH] s390: qeth driver fixes From: Frank Pavlic - correct checking of sscanf-%n value in qeth_string_to_ipaddr(). - don't use netif_stop_queue outside the hard_start_xmit routine. Rather use netif_tx_disable. - don't call qeth_netdev_init on a recovery. Signed-off-by: Frank Pavlic Signed-off-by: Jeff Garzik commit 7401a4670f0e81d50dcc4e0a7bd2dcb4a5d65e6b Author: Cornelia Huck Date: Wed May 24 09:51:05 2006 +0200 [PATCH] s390: minor fix in cu3088 In case of a parse error for the cu3088 group attribute, return -EINVAL instead of count. Signed-off-by: Frank Pavlic Signed-off-by: Jeff Garzik commit a24b163b7c16f9e30e726319115e45ed6e683582 Author: Don Fry Date: Thu May 25 16:22:40 2006 -0700 [PATCH] pcnet32: remove incorrect pcnet32_free_ring During a code scan for another change I discovered that this call to pcnet32_free_ring must be removed. If the open fails due to a lack of memory all the ring structures are removed via the call to free_ring and a subsequent call to open will dereference a null pointer in pcnet32_init_ring. Please apply to 2.6.17. Signed-off-by: Don Fry Signed-off-by: Jeff Garzik commit 80871e63e410c53524ef47eaf475c13e0f164ea6 Author: Auke Kok Date: Tue May 23 13:35:57 2006 -0700 e1000: add shutdown handler back to fix WOL Someone was waaay too aggressive and removed e1000's reboot notifier instead of porting it to the new way of the shutdown handler. This change broke wake on lan. Add the shutdown handler back in using the same method as e100 uses. Signed-off-by: Jesse Brandeburg Signed-off-by: Auke Kok (cherry picked from c653e6351e371b33b29871e5eedf610ffb3be037 commit) commit 3041a069090224462e27da1bc9483b463eb40841 Author: Stephen Hemminger Date: Fri May 26 13:25:24 2006 -0700 [NET]: dev.c comment fixes Noticed that dev_alloc_name() comment was incorrect, and more spellung errors. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4d0c5911660b97f53c2211afc6ded5dafafa9b78 Author: YOSHIFUJI Hideaki Date: Fri May 26 13:23:41 2006 -0700 [IPV6] ROUTE: Don't try less preferred routes for on-link routes. In addition to the real on-link routes, NONEXTHOP routes should be considered on-link. Problem reported by Meelis Roos . Signed-off-by: YOSHIFUJI Hideaki Acked-by: Meelis Roos Signed-off-by: David S. Miller commit 4541a5db0ba33d9c692e5b2f8d7805e336fabe7c Author: Randy Dunlap Date: Thu May 25 11:10:08 2006 -0700 [PATCH] arlan: fix section mismatch warnings Fix section mismatch warnings: WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to .init.text:arlan_probe from .text between 'init_module' (at offset 0x3526) and 'cleanup_module' WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to .init.text:init_arlan_proc from .text between 'init_module' (at offset 0x3539) and 'cleanup_module' WARNING: drivers/net/wireless/arlan.o - Section mismatch: reference to .exit.text:cleanup_arlan_proc from .text between 'cleanup_module' (at offset 0x356c) and 'arlan_diagnostic_info_string' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 53072d68cc2deda9f1a8cde864aa9d04f58addd3 Author: Randy Dunlap Date: Thu May 25 11:09:21 2006 -0700 [PATCH] wavelan: fix section mismatch Fix section mismatch warning: WARNING: drivers/net/wireless/wavelan.o - Section mismatch: reference to .init.text: from .text between 'init_module' (at offset 0x371e) and 'cleanup_module' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 087377a4307e18225f6452af5e71fe763c088c4e Author: Kylene Jo Hall Date: Thu May 25 18:44:27 2006 -0700 [PATCH] tpm: fix bug for TPM on ThinkPad T60 and Z60 The TPM chip on the ThinkPad T60 and Z60 machines is returning 0xFFFF for the vendor ID which is a check the driver made to double check it was actually talking to the memory mapped space of a TPM. This patch removes the check since it isn't absolutely necessary and was causing device discovery to fail on these machines. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5d5daa162a5187bc0f98eb2bc7a063392b0de311 Author: Randy Dunlap Date: Thu May 25 18:44:26 2006 -0700 [PATCH] scx200_acb: fix section mismatch warning WARNING: drivers/i2c/busses/scx200_acb.o - Section mismatch: reference to .init.text: from .text after 'scx200_add_cs553x' (at offset 0x528) Signed-off-by: Randy Dunlap Signed-off-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac88bcff2fa536e015a97e144b7190c740225144 Author: Ben Dooks Date: Thu May 25 18:44:25 2006 -0700 [PATCH] s3c24xx: fix spi driver with CONFIG_PM Fix compile bug with the S3C24XX SPI driver when CONFIG_PM is set. Signed-off-by: Ben Dooks Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0fba3a1f39f8b0a50b56c8b068fa52131cbc84c2 Author: Johannes Berg Date: Thu May 25 18:44:24 2006 -0700 [PATCH] PowerMac: force only suspend-to-disk to be valid For a very long time, echoing 'standby' or 'mem' into /sys/power/state has killed the machine on powerpc. This patch fixes that. This patch adds the .valid callback to pm_ops on PowerMac so that only the suspend to disk state can be entered. Note that just returning 0 would suffice since the upper layers don't pass PM_SUSPEND_DISK down, but we handle it there regardless just in case that changes. Acked-by: Benjamin Herrenschmidt Signed-off-by: Johannes Berg Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ac8141366932a74fd8620afaebd66960c91196d Author: Florin Malita Date: Thu May 25 18:44:23 2006 -0700 [PATCH] affs: possible null pointer dereference in affs_rename() If affs_bread() fails, the exit path calls mark_buffer_dirty_inode() with a NULL argument. Coverity CID: 312. Signed-off-by: Florin Malita Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9084533e797f131c923c8883adf91cc2f7ddcfae Author: David Brownell Date: Thu May 25 18:44:20 2006 -0700 [PATCH] ads7846 conversion accuracy This improves accuracy of the touchscreen and hwmon sensor readings, addressing an issue noted by Imre Deak: there's an extra bit written before the sample (12 bits) gets written out. It also catches up to various comments, and makes the /proc/interrupts entry sensible again. Signed-off-by: David Brownell Cc: Imre Deak Cc: Jean Delvare Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f09de595b5eda6040cd733ecf1eb222e00b42517 Author: Jens Axboe Date: Thu May 25 18:44:19 2006 -0700 [PATCH] x86: wire up vmsplice syscall Signed-off-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6bf08cb246b5ac639b2429533d303f5026f2520c Author: Paul Mackerras Date: Thu May 25 18:44:17 2006 -0700 [PATCH] Add CMSPAR to termbits.h for powerpc and alpha Some driver wants to use CMSPAR, but it was missing on alpha and powerpc. This adds it, with the same value as every other architecture uses. (akpm: fixes the build of an upcoming gregkh USB patch) Signed-off-by: Paul Mackerras Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c71d48877e6f3d5e3eb22fcaaa612081bce3d089 Author: Neil Brown Date: Fri May 26 10:39:25 2006 +1000 [PATCH] Unlock md devices when stopping them on reboot. otherwise we get nasty messages about locks not being released. Signed-off-by: Neil Brown Signed-off-by: Linus Torvalds commit 54f4ee183aea859eb09f141dad3fc3c6f4fe0446 Author: Hollis Blanchard Date: Thu May 25 16:36:53 2006 -0500 [PATCH] powerpc: fix RTC/NVRAM accesses on Maple Due to a firmware device tree bug, RTC and NVRAM accesses (including halt/reboot) on Maple have been broken since January, when an untested build fix went in. This code patches the device tree in Linux. Signed-off-by: Hollis Blanchard Signed-off-by: Segher Boessenkool Signed-off-by: Paul Mackerras commit 8e30a9a299ca30b6c4072c2182238d5f5dd1590d Author: Vitaly Bordug Date: Wed May 24 21:40:18 2006 +0400 [PATCH] ppc32 CPM_UART: various fixes for pq2 uart users This fixes various odd things that missed update together with cpm_uart platform_device move. Unified resources names, restructurisation, etc. Also, addressed issue with recent phys/virt translation rework. Being cache-coherent, CPM2's do alloc_bootmem() for the console stuff, and it was used to treat console buffer descriptor mapping 1:1 (as in CPM1 case), which is definitely wrong. Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 6d923f98fe0f31c174ace92f8b680d0d153663aa Author: Arthur Othieno Date: Fri May 19 06:22:23 2006 -0400 [PATCH] powerpc: linuxppc64.org no more http://linuxppc64.org has long been a redirect to the canonical http://penguinppc.org/ppc64/ -- update all instances accordingly, as ACKed by Hollis: On Wed, Jan 18, 2006 at 09:48:08AM -0600, Hollis Blanchard wrote: > On Wed, 2006-01-18 at 13:07 +0100, Olaf Hering wrote: > > On Wed, Jan 18, Arthur Othieno wrote: > > > > > > What about the s/linuxppc64\.org/penguinppc\.org/g case? Or is > > > penguinppc64.org preferable? Or am I just taking it too far? ;) > > > > They are redirected on DNS or HTTP level. > > HTTP level, but that doesn't answer his question. > > As the maintainer of that site, I would prefer to remove the > linuxppc64.org reference. Signed-off-by: Arthur Othieno Signed-off-by: Paul Mackerras commit 56bc348ce8a709a70cd80857ffc09749f871d7a8 Author: Samuel Ortiz Date: Thu May 25 16:17:53 2006 -0700 [IRDA]: *_DONGLE should depend on IRTTY_SIR If a SIR dongle is built in the kernel while IRTTY_SIR is built as a module, kernel compilation will fail. Thus, the SIR dongle config should depend on the IRTTY_SIR. Closes kernel bug# 6512 (http://bugzilla.kernel.org/show_bug.cgi?id=6512) Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit be2f2e84549386df63206fec134d9e0fc2212328 Author: Stephen Hemminger Date: Thu May 25 16:14:43 2006 -0700 [MAINTAINERS]: Add entry for netem It gets enough reports, that there ought to be a MAINTAINER entry. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 705af309505681f197f81618440954d10f120dc0 Author: Martin Schwidefsky Date: Tue May 23 09:22:42 2006 +0200 [PATCH] s390: fix typo in stop_hz_timer. Add missing parentheses for type cast to u64. Signed-off-by: Martin Schwidefsky Cc: Dave Jones Signed-off-by: Linus Torvalds commit a8bd60705aa17a998516837d9c1e503ad4cbd7fc Author: Linus Torvalds Date: Wed May 24 18:50:17 2006 -0700 Linux 2.6.17-rc5 commit 4f3a151a11da3351e2149a401d4ee18426938de7 Author: Jean Delvare Date: Wed May 24 15:13:14 2006 -0300 [PATCH] V4L/DVB (4045): Fixes recursive dependency for I2C Mixing "depends on I2C" and "select I2C" within the media subsystem leads to the following problem: Warning! Found recursive dependency: I2C DVB_BUDGET DVB_BUDGET_PATCH DVB_AV7110 VIDEO_SAA7146_VV VIDEO_SAA7146 I2C Signed-off-by: Jean Delvare Acked-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Linus Torvalds commit ab28b171eabc0a414e0404844453c11af3caed10 Author: Michael S. Tsirkin Date: Wed May 24 18:27:07 2006 +0300 IB/mthca: Fix posting lists of 256 receive requests to SRQ for Tavor If we post a list of length exactly a multiple of 256, nreq in doorbell gets set to 256 which is wrong: it should be encoded by 0. This is because we only zero it out on the next WR, which may not be there. The solution is to ring the doorbell after posting a WQE, not before posting the next one. This is the same bug that we just fixed for QPs with non-shared RQ. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 51c403274093767d6dc30703d67e9f0b255c7439 Author: Pierre Ossman Date: Wed May 24 10:20:45 2006 +0200 [MMC] Fix premature use of md->disk md->disk was being used in a debug message before it was allocated. Signed-off-by: Pierre Ossman Signed-off-by: Linus Torvalds commit b964638ffd59b61c13f02b81e5118a6e573d91cd Author: Dave Kleikamp Date: Wed May 24 07:43:38 2006 -0500 JFS: Fix multiple errors in metapage_releasepage It looks like metapage_releasepage was making in invalid assumption that the releasepage method would not be called on a dirty page. Instead of issuing a warning and releasing the metapage, it should return 0, indicating that the private data for the page cannot be released. I also realized that metapage_releasepage had the return code all wrong. If it is successful in releasing the private data, it should return 1, otherwise it needs to return 0. Lastly, there is no need to call wait_on_page_writeback, since try_to_release_page will not call us with a page in writback state. Signed-off-by: Dave Kleikamp commit bb31a8faa270beafcc51a65880c5564c6b718bd6 Author: Albert Lee Date: Mon May 22 11:43:46 2006 +0800 [PATCH] libata: add pio flush for via atapi (was: Re: TR: ASUS A8V Deluxe, x86_64) Backport the "pio flush" from the libata major update to 2.6.17 for via atapi. Signed-off-by: Albert Lee Signed-off-by: Jeff Garzik commit a1433ac4ab46fb23ae77804c207a1f710a7b12f1 Author: Stephen Hemminger Date: Mon May 22 12:03:42 2006 -0700 [PATCH] sky2: fix jumbo packet support The truncate threshold calculation to prevent receiver from getting stuck was incorrect, and it didn't take into account the upper limit on bits in the register so the jumbo packet support was broken. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 387e2b0439026aa738a9edca15a57e5c0bcb4dfc Author: Stephen Hemminger Date: Tue May 23 15:20:25 2006 -0700 [BRIDGE]: need to ref count the LLC sap Bridge will OOPS on removal if other application has the SAP open. The bridge SAP might be shared with other usages, so need to do reference counting on module removal rather than explicit close/delete. Since packet might arrive after or during removal, need to clear the receive function handle, so LLC only hands it to user (if any). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4a063739138e2c4e933188d641f1593e01ce8285 Author: Chris Wright Date: Tue May 23 15:08:13 2006 -0700 [NETFILTER]: SNMP NAT: fix memleak in snmp_object_decode If kmalloc fails, error path leaks data allocated from asn1_oid_decode(). Signed-off-by: Chris Wright Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4d942d8b39bf7d43ce93d85964aeb63aeace0593 Author: Patrick McHardy Date: Tue May 23 15:07:46 2006 -0700 [NETFILTER]: H.323 helper: fix sequence extension parsing When parsing unknown sequence extensions the "son"-pointer points behind the last known extension for this type, don't try to interpret it. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7185989db4d926dbef1a2f638c464f35599c83e0 Author: Patrick McHardy Date: Tue May 23 15:07:07 2006 -0700 [NETFILTER]: H.323 helper: fix parser error propagation The condition "> H323_ERROR_STOP" can never be true since H323_ERROR_STOP is positive and is the highest possible return code, while real errors are negative, fix the checks. Also only abort on real errors in some spots that were just interpreting any return value != 0 as error. Fixes crashes caused by use of stale data after a parsing error occured: BUG: unable to handle kernel paging request at virtual address bfffffff printing eip: c01aa0f8 *pde = 1a801067 *pte = 00000000 Oops: 0000 [#1] PREEMPT Modules linked in: ip_nat_h323 ip_conntrack_h323 nfsd exportfs sch_sfq sch_red cls_fw sch_hfsc xt_length ipt_owner xt_MARK iptable_mangle nfs lockd sunrpc pppoe pppoxx CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00210646 (2.6.17-rc4 #8) EIP is at memmove+0x19/0x22 eax: d77264e9 ebx: d77264e9 ecx: e88d9b17 edx: d77264e9 esi: bfffffff edi: bfffffff ebp: de6a7680 esp: c0349db8 ds: 007b es: 007b ss: 0068 Process asterisk (pid: 3765, threadinfo=c0349000 task=da068540) Stack: <0>00000006 c0349e5e d77264e3 e09a2b4e e09a38a0 d7726052 d7726124 00000491 00000006 00000006 00000006 00000491 de6a7680 d772601e d7726032 c0349f74 e09a2dc2 00000006 c0349e5e 00000006 00000000 d76dda28 00000491 c0349f74 Call Trace: [] mangle_contents+0x62/0xfe [ip_nat] [] ip_nat_mangle_tcp_packet+0xa1/0x191 [ip_nat] [] set_addr+0x74/0x14c [ip_nat_h323] [] process_setup+0x11b/0x29e [ip_conntrack_h323] [] process_setup+0x14c/0x29e [ip_conntrack_h323] [] process_q931+0x3c/0x142 [ip_conntrack_h323] [] q931_help+0xe0/0x144 [ip_conntrack_h323] ... Found by the PROTOS c07-h2250v4 testsuite. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 09b74de9fff056a0a4058a0f14508acba89ea6fc Author: Bryan O'Sullivan Date: Tue May 23 11:32:38 2006 -0700 IB/ipath: deref correct pointer when using kernel SMA At this point, the core QP structure hasn't been initialized, so what's in there isn't valid. Get the same information elsewhere. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 3977026462314dfbb237adf6a964d0f683b8e45d Author: Bryan O'Sullivan Date: Tue May 23 11:32:37 2006 -0700 IB/ipath: fix null deref during rdma ops The problem was that node A's sending thread, which handles sending RDMA read response data, would write the trigger word, the last packet would be sent, node B would send a new RDMA read request, node A's interrupt handler would initialize s_rdma_sge, then node A's sending thread would update s_rdma_sge. This didn't happen very often naturally but was more frequent with 1 byte RDMA reads. Rather than adding more locking or increasing the QP structure size and copying sge data, I modified the copy routine to update the pointers before writing the trigger word to avoid the update race. Signed-off-by: Ralph Campbell Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 41c75a19bf4a0102f49763a686fb7e39780349f3 Author: Bryan O'Sullivan Date: Tue May 23 11:32:36 2006 -0700 IB/ipath: register as IB device owner This fixes an oops. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 9dcc0e58e2913f7e6ffba64c27fe5c2f2c7b845c Author: Bryan O'Sullivan Date: Tue May 23 11:32:35 2006 -0700 IB/ipath: enable PE800 receive interrupts on user ports Fixed so it works on the PE-800. It had not previously been updated to match PE-800 receive interrupt differences from HT-400. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit f2080fa3c6098dedfb9b599bdaedd07be2ea4646 Author: Bryan O'Sullivan Date: Tue May 23 11:32:34 2006 -0700 IB/ipath: enable GPIO interrupt on HT-460 This is required for even semi-decent performance on OpenIB. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit b0ff7c2005f7ec8dec10fb15e62b8e1acc172bbf Author: Bryan O'Sullivan Date: Tue May 23 11:32:33 2006 -0700 IB/ipath: fix NULL dereference during cleanup Fix NULL deref due to pcidev being clobbered before dd->ipath_f_cleanup() was called. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 94b8d9f98d7f535037eb9845b81396f667b4f727 Author: Bryan O'Sullivan Date: Tue May 23 11:32:32 2006 -0700 IB/ipath: replace uses of LIST_POISON Per Andrew's request. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit eaf6733bc176742fb08def2269441684e963c275 Author: Bryan O'Sullivan Date: Tue May 23 11:32:31 2006 -0700 IB/ipath: fix reporting of driver version to userspace Fix the interface version that gets exported to userspace. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit b228b43c491c53d1838e06f47a7470db9f84d899 Author: Bryan O'Sullivan Date: Tue May 23 11:32:30 2006 -0700 IB/ipath: don't modify QP if changes fail Make sure modify_qp won't modify the QP if any of the changes failed. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit ebac3800e5652063aa9491ef7fb4d57e089eb385 Author: Bryan O'Sullivan Date: Tue May 23 11:32:29 2006 -0700 IB/ipath: fix spinlock recursion bug The local loopback path for RC can lock the rkey table lock without blocking interrupts. The receive interrupt path can then call ipath_rkey_ok() and deadlock. Remove the redundant lock. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 14ba3e7b3103a12b6f6a1057a1ecbfb15e1b48c0 Author: Mauro Carvalho Chehab Date: Tue May 23 16:02:03 2006 -0300 V4L/DVB (4041): Fix compilation on PPC 64 Those functions don't exist on PPC64 architecture. Signed-off-by: Mauro Carvalho Chehab commit 8b6c879c81e8f00077607f83e024eedf388839b4 Author: Jean Delvare Date: Tue May 23 15:56:50 2006 -0300 V4L/DVB (4040a): Fix the following section warnings: reference to .init.text: from .text between 'dvb_bt8xx_probe' (at offset 0x122c) and 'dvb_bt8xx_remove' reference to .init.text: from .text between 'dvb_bt8xx_probe' (at offset 0x1267) and 'dvb_bt8xx_remove' Signed-off-by: Jean Delvare Signed-off-by: Mauro Carvalho Chehab commit 3c2c54910f277f3abd3763dbc64b9dbf8b4479e9 Author: Manu Abraham Date: Sat May 20 13:17:00 2006 -0300 V4L/DVB (4037): Make the bridge devices that depend on I2C dependant on I2C Ref: Bugzilla 6179, 6589 Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit 9d8a51f80117a9d672b455d60901842ad50aa69f Author: Adrian Bunk Date: Tue May 23 15:56:20 2006 -0300 V4L/DVB (3927): Fix VIDEO_DEV=m, VIDEO_V4L1_COMPAT=y If CONFIG_VIDEO_DEV=m and CONFIG_VIDEO_V4L1_COMPAT=y, v4l1-compat should be built as a module (currently, it isn't built at all leading to problems with modules using it). Signed-off-by: Adrian Bunk Signed-off-by: Mauro Carvalho Chehab commit fd0ff8aa1d95a896b3627bc62d42d6d002ac0bc3 Author: Jens Axboe Date: Tue May 23 11:23:49 2006 +0200 [PATCH] blk: fix gendisk->in_flight accounting during barrier sequence While executing barrrier sequence, the bar_rq which carries actual write was accounted as normal IO on completion, while it wasn't on queueing. This caused gendisk->in_flight to be decremented by 1 after each barrier thus messed up statistics. This patch makes bar_rq not accounted as normal IO. As the containing barrier request as a whole is accounted, part of it shouldn't be. Signed-off-by: Tejun Heo Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 0f0410823792ae0ecb45f2578598b115835ffdbb Author: David Woodhouse Date: Tue May 23 07:46:40 2006 -0700 [PATCH] powerpc: wire up sys_[gs]et_robust_list Signed-off-by: David Woodhouse Cc: Benjamin Herrenschmidt Acked-by: Paul Mackerras Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b471f55427ee94d6de2b33b88a7409f8cbc6b5dc Author: David Woodhouse Date: Tue May 23 07:46:39 2006 -0700 [PATCH] powerpc: check Cell SPU syscall number range _before_ using it Signed-off-by: David Woodhouse Cc: Benjamin Herrenschmidt Acked-by: Paul Mackerras Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a4fa1639622b85d7e4422242308fc6cef7e503e Author: David Woodhouse Date: Tue May 23 07:46:38 2006 -0700 [PATCH] powerpc: fill hole in Cell SPU syscall table Syscall number 224 was absent from the table, which I believe means that the SPU can cause an oops by attempting to use it. Signed-off-by: David Woodhouse Cc: Benjamin Herrenschmidt Acked-by: Paul Mackerras Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb6e093da23ace2724fdadd27738027468eb82b3 Author: Florin Malita Date: Mon May 22 22:35:30 2006 -0700 [PATCH] orinoco: possible null pointer dereference in orinoco_rx_monitor() If the skb allocation fails, the current error path calls dev_kfree_skb_irq() with a NULL argument. Also, 'err' is not being used. Coverity CID: 275. Signed-off-by: Florin Malita Cc: "John W. Linville" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30d6b2f3749e41ce37170ebc445948222b2db4ee Author: Pavel Machek Date: Mon May 22 22:35:29 2006 -0700 [PATCH] swsusp: fix typo in cr0 handling Writing cr0 to cr2 register can't be right. This fixes the typo. I wonder how it could survive so long. Signed-off-by: Pavel Machek Cc: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff4547f4aa9823908e9866495598fc65772c2a09 Author: Tobias Powalowski Date: Mon May 22 22:35:28 2006 -0700 [PATCH] tty_insert_flip_string_flags() license fix We still don't have the tty layer licensing compatibility quite right. tty_insert_flip_char() used to be inlined in include/linux/tty_flip.h. It is now out-of-lined and hence needs EXPORT_SYMBOL() to be back-compatible. One known offender is the Intel Modem driver. Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2eb0c101d24aca9d3d16c30c4f79f3a70c89208 Author: NeilBrown Date: Mon May 22 22:35:27 2006 -0700 [PATCH] md: Make sure bi_max_vecs is set properly in bio_split Else a subsequent bio_clone might make a mess. Signed-off-by: Neil Brown Cc: "Don Dupuis" Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5c4c33318d26620fa552f15bbb6d0f9775a1b4df Author: NeilBrown Date: Mon May 22 22:35:26 2006 -0700 [PATCH] md: fix possible oops when starting a raid0 array This loop that sets up the hash_table has problems. Careful examination will show that the last time through, everything but the first line is pointless. This is because all it does is change 'cur' and 'size' and neither of these are used after the loop. This should ring warning bells... That last time through the loop, size += conf->strip_zone[cur].size can index off the end of the strip_zone array. Depending on what it finds there, it might exit the loop cleanly, or it might spin going further and further beyond the array until it hits an unmapped address. This patch rearranges the code so that the last, pointless, iteration of the loop never happens. i.e. the one statement of the last loop that is needed is moved the the end of the previous loop - or to before the loop starts - and the loop counter starts from 1 instead of 0. Cc: "Don Dupuis" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2d395865faa2a7cd4620b07178e58cbb160ba08 Author: NeilBrown Date: Mon May 22 22:35:25 2006 -0700 [PATCH] knfsd: Fix two problems that can cause rmmod nfsd to die Both cause the 'entries' count in the export cache to be non-zero at module removal time, so unregistering that cache fails and results in an oops. 1/ exp_pseudoroot (used for NFSv4 only) leaks a reference to an export entry. 2/ sunrpc_cache_update doesn't increment the entries count when it adds an entry. Thanks to "david m. richter" for triggering the problem and finding one of the bugs. Cc: "david m. richter" Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e46e490368f87032a6e54969194413339b35a385 Author: Andrew Morton Date: Mon May 22 22:35:24 2006 -0700 [PATCH] sys_sync_file_range(): move exported flags outside __KERNEL__ These flags are needed by userspace - move them outside __KERNEL__ (Pointed out by dwmw2) Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42f142371e48fbc44956d57b4e506bb6ce673cd7 Author: David S. Miller Date: Tue May 23 02:07:22 2006 -0700 [SPARC64]: Respect gfp_t argument to dma_alloc_coherent(). Using asm-generic/dma-mapping.h does not work because pushing the call down to pci_alloc_coherent() causes the gfp_t argument of dma_alloc_coherent() to be ignored. Fix this by implementing things directly, and adding a gfp_t argument we can use in the internal call down to the PCI DMA implementation of pci_alloc_coherent(). This fixes massive memory corruption when using the sound driver layer, which passes things like __GFP_COMP down into these routines and (correctly) expects that to work. Signed-off-by: David S. Miller commit f41d5bb1d9f49b03af7126d07a511facbe283a92 Author: Patrick McHardy Date: Mon May 22 16:55:14 2006 -0700 [NETFILTER]: SNMP NAT: fix memory corruption Fix memory corruption caused by snmp_trap_decode: - When snmp_trap_decode fails before the id and address are allocated, the pointers contain random memory, but are freed by the caller (snmp_parse_mangle). - When snmp_trap_decode fails after allocating just the ID, it tries to free both address and ID, but the address pointer still contains random memory. The caller frees both ID and random memory again. - When snmp_trap_decode fails after allocating both, it frees both, and the callers frees both again. The corruption can be triggered remotely when the ip_nat_snmp_basic module is loaded and traffic on port 161 or 162 is NATed. Found by multiple testcases of the trap-app and trap-enc groups of the PROTOS c06-snmpv1 testsuite. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit f5565f4a90bdfea99e4bcd8411ff5272ebdbdbf8 Author: Alexey Dobriyan Date: Mon May 22 16:54:30 2006 -0700 [IRDA]: fixup type of ->lsap_state Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 405a42c5c8bd5731087c0ff01310731a3c1c9c24 Author: Alexey Dobriyan Date: Mon May 22 16:54:08 2006 -0700 [IRDA]: fix 16/32 bit confusion Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 4195f81453b9727f82bb8ceae03411b7fe52a994 Author: Alexey Dobriyan Date: Mon May 22 16:53:22 2006 -0700 [NET]: Fix "ntohl(ntohs" bugs Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit ae181bc44c65fdc93d0d2d908534b22e43f60f56 Author: Michael Chan Date: Mon May 22 16:39:20 2006 -0700 [BNX2]: Use kmalloc instead of array Use kmalloc() instead of a local array in bnx2_nvram_write(). Update version to 1.4.40. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit bae25761c92c5eec781b6ea72bbe7e98fc8382a0 Author: Michael Chan Date: Mon May 22 16:38:38 2006 -0700 [BNX2]: Fix bug in bnx2_nvram_write() Fix a bug in bnx2_nvram_write() caused by a counter variable not correctly incremented by 4. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 463d305bc51b8f5d0750a17ec0c9caf5181ec6d4 Author: Michael Chan Date: Mon May 22 16:36:27 2006 -0700 [TG3]: Add some missing rx error counters Add some missing rx error counters for 5705 and newer chips. Update version to 3.58. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 7dd1d9b85cfb63eebf48fa13d3c5d25a3deb3a25 Author: Magnus Kessler Date: Mon May 22 10:53:10 2006 +0100 [AGPGART] VIA PT880 Ultra support. This patch enables agpgart on a Via "PT880 Ultra" based motherboard (Asus P4V800D-X). The PCI ID of the PT880 Ultra is 0x0308 instead of 0x0258 of the PT880. The patched via-agp passes testgart. Signed-off-by: Magnus Kessler Signed-off-by: Dave Jones commit 353b28bafd1b962359a866ff263a7fad833d29a1 Author: David S. Miller Date: Sun May 21 21:22:53 2006 -0700 [SPARC]: Add robust futex syscall entries. Signed-off-by: David S. Miller commit 9a2a9bb2010ed7e56547e2bb2041dab14ab0510a Author: Andrew Morton Date: Mon May 15 14:10:11 2006 -0700 [SUNSU]: Fix license. FATAL: modpost: GPL-incompatible module sunsu uses the GPL-only symbol tty_insert_flip_string_flags Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit f1adad78dd2fc8edaa513e0bde92b4c64340245c Author: Linus Torvalds Date: Sun May 21 18:54:09 2006 -0700 Revert "[PATCH] sched: fix interactive task starvation" This reverts commit 5ce74abe788a26698876e66b9c9ce7e7acc25413 (and its dependent commit 8a5bc075b8d8cf7a87b3f08fad2fba0f5d13295e), because of audio underruns. Reported by Rene Herman , who also pinpointed the exact cause of the underruns: "Audio underruns galore, with only ogg123 and firefox (browsing the GIT tree online is also a nice trigger by the way). If I back it out, everything is fine for me again." Cc: Rene Herman Cc: Mike Galbraith Acked-by: Con Kolivas Signed-off-by: Linus Torvalds commit ca2797ffaabc1f73cf8a73a30f709f0c1a6bef34 Author: Dave Jones Date: Sun May 21 17:11:42 2006 -0400 [AGPGART] Fix Nforce3 suspend on amd64. kernel.org bugzilla #6206 Based on patch from Serge Belyshev Signed-off-by: Dave Jones commit 283a12c53b9abeed89491da4a1eda98f5764947b Author: Andi Kleen Date: Tue Mar 28 09:38:45 2006 +0200 [AGPGART] Enable SIS AGP driver on x86-64 for EM64T systems Enable SIS AGP driver on x86-64 for EM64T systems Untested so far Signed-off-by: Andi Kleen Signed-off-by: Dave Jones commit b307e8548921c686d2eb948ca418ab2941876daa Author: Andrew Morton Date: Sat May 20 15:00:36 2006 -0700 [PATCH] ad1848 section fix WARNING: sound/oss/ad1848.o - Section mismatch: reference to .init.data:ad1848_isapnp_list from .text between 'ad1848_init_generic' (at offset 0x46f0) and 'kmalloc' WARNING: sound/oss/ad1848.o - Section mismatch: reference to .init.data:ad1848_isapnp_list from .text between 'ad1848_init_generic' (at offset 0x46f8) and 'kmalloc' WARNING: sound/oss/ad1848.o - Section mismatch: reference to .init.data:ad1848_isapnp_list from .text between 'ad1848_init_generic' (at offset 0x4818) and 'kmalloc' Also, sound/oss/ad1848.c: In function `ad1848_init': sound/oss/ad1848.c:2029: warning: cast to pointer from integer of different size sound/oss/ad1848.c: In function `ad1848_unload': sound/oss/ad1848.c:2178: warning: cast to pointer from integer of different size sound/oss/ad1848.c: In function `adintr': sound/oss/ad1848.c:2207: warning: cast from pointer to integer of different size Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db31419404e5ccc7e8e07000a5f1ac440a0eafa0 Author: Andrew Morton Date: Sat May 20 15:00:35 2006 -0700 [PATCH] nm256_audio section fix WARNING: sound/oss/nm256_audio.o - Section mismatch: reference to .init.text:nm256_peek_for_sig from .text between 'nm256_install' (at offset 0x3ba4) and 'nm256_probe' WARNING: sound/oss/nm256_audio.o - Section mismatch: reference to .init.text:nm256_peek_for_sig from .text between 'nm256_install' (at offset 0x3bac) and 'nm256_probe' WARNING: sound/oss/nm256_audio.o - Section mismatch: reference to .init.text: from .text between 'nm256_install' (at offset 0x3dcc) and 'nm256_probe' WARNING: sound/oss/nm256_audio.o - Section mismatch: reference to .init.text: from .text between 'nm256_install' (at offset 0x3dd0) and 'nm256_probe' Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1caef6aa97a3a43a82f238d8b31bf177de34a4bf Author: Andrew Morton Date: Sat May 20 15:00:35 2006 -0700 [PATCH] es18xx build fix sound/isa/es18xx.c: In function `snd_es18xx_identify': sound/isa/es18xx.c:1606: warning: implicit declaration of function `udelay' Cc: Jaroslav Kysela Cc: Takashi Iwai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fad43488b8c9b3914fcdc48ee3b8d30aeb49fa30 Author: Andrew Morton Date: Sat May 20 15:00:34 2006 -0700 [PATCH] mpu401 section fix WARNING: sound/drivers/mpu401/snd-mpu401.o - Section mismatch: reference to .init.text: from .text between 'snd_mpu401_pnp_probe' (at offset 0x1f7) and 'snd_mpu401_pnp_remove' Cc: Jaroslav Kysela Cc: Takashi Iwai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e8a3d229b23c34adb9c20cc2875fc67dce12585 Author: Andrew Morton Date: Sat May 20 15:00:33 2006 -0700 [PATCH] i810 section fix WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_fix_offsets' (at offset 0x1b88) and 'i810_alloc_agp_mem' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_fix_offsets' (at offset 0x1b8f) and 'i810_alloc_agp_mem' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_fix_offsets' (at offset 0x1ba3) and 'i810_alloc_agp_mem' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_fix_offsets' (at offset 0x1bb5) and 'i810_alloc_agp_mem' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_fix_offsets' (at offset 0x1bc6) and 'i810_alloc_agp_mem' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_init_defaults' (at offset 0x1dd8) and 'i810_init_device' WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference to .init.data: from .text between 'i810_init_defaults' (at offset 0x1dfb) and 'i810_init_device' Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9781b8b055bd0a02a043ed80fb8d59d703a49daf Author: Andrew Morton Date: Sat May 20 15:00:32 2006 -0700 [PATCH] pd6729 section fix WARNING: drivers/pcmcia/pd6729.o - Section mismatch: reference to .init.text: from .text between 'pd6729_pci_probe' (at offset 0x9a8) and 'pd6729_pci_remove' Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e984bb43f7450312ba66fe0e67a99efa6be3b246 Author: Bob Picco Date: Sat May 20 15:00:31 2006 -0700 [PATCH] Align the node_mem_map endpoints to a MAX_ORDER boundary Andy added code to buddy allocator which does not require the zone's endpoints to be aligned to MAX_ORDER. An issue is that the buddy allocator requires the node_mem_map's endpoints to be MAX_ORDER aligned. Otherwise __page_find_buddy could compute a buddy not in node_mem_map for partial MAX_ORDER regions at zone's endpoints. page_is_buddy will detect that these pages at endpoints are not PG_buddy (they were zeroed out by bootmem allocator and not part of zone). Of course the negative here is we could waste a little memory but the positive is eliminating all the old checks for zone boundary conditions. SPARSEMEM won't encounter this issue because of MAX_ORDER size constraint when SPARSEMEM is configured. ia64 VIRTUAL_MEM_MAP doesn't need the logic either because the holes and endpoints are handled differently. This leaves checking alloc_remap and other arches which privately allocate for node_mem_map. Signed-off-by: Bob Picco Acked-by: Mel Gorman Cc: Dave Hansen Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae57a856429dd932c547530df1b234eb7e642297 Author: Greg Kroah-Hartman Date: Sat May 20 15:00:30 2006 -0700 [PATCH] kobject: quiet errors in kobject_add People don't like released kernels yelling at them, no matter how real the error might be. So only report it if CONFIG_KOBJECT_DEBUG is enabled. Sent on request of Andrew Morton. (akpm: should bring this back post-2.6.17) Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b3969e5831adac133b286600e74214e1ae42ec05 Author: Alessandro Zummo Date: Sat May 20 15:00:29 2006 -0700 [PATCH] rtc subsystem: use ENOIOCTLCMD and ENOTTY where appropriate Appropriately use -ENOIOCTLCMD and -ENOTTY when the ioctl is not implemented by a driver. (akpm: we're not allowed to return -ENOIOCTLCMD to userspace. This patch does the right thing). Signed-off-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eae07ac607f317ee6781983d3f9d8f77ef144b45 Author: Atsushi Nemoto Date: Sat May 20 15:00:28 2006 -0700 [PATCH] kbuild: fix modpost segfault for 64bit mipsel kernel Here is an updated r_info layout fix. Please apply "check SHT_REL sections" patch before this. 64bit mips has different r_info layout. This patch fixes modpost segfault for 64bit little endian mips kernel. Signed-off-by: Atsushi Nemoto Cc: Sam Ravnborg Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c1a51f39d9551a514d7a089d01c23c0c3a54ab8 Author: Atsushi Nemoto Date: Sat May 20 15:00:26 2006 -0700 [PATCH] kbuild: check SHT_REL sections I found that modpost can not detect section mismatch on mips and i386. On mips64, the modpost (with r_info layout fix) can detect it. The current modpst only checks SHT_RELA section but I suppose SHT_REL section should be checked also. This patch does not contain r_info layout fix. I'll post an updated r_info layout fix on next mail. Check SHT_REL sections as like as SHT_RELA sections to detect section mismatch. Signed-off-by: Atsushi Nemoto Cc: Sam Ravnborg Cc: Ralf Baechle Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92f63cd000059366af18712367216d96180e0ec0 Author: Martin Schwidefsky Date: Sat May 20 15:00:25 2006 -0700 [PATCH] s390: next_timer_interrupt overflow in stop_hz_timer The 32 bit unsigned substraction (next - jiffies) in stop_hz_timer can overflow if jiffies gets advanced between next_timer_interrupt and the read under the xtime lock. The cast to a u64 then results in a large value which causes the cpu to wait too long. Fix this by casting next and jiffies independently to u64 before subtracting them. (Spotted by Zachary Amsden ) Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0662b71322e211dba9a4bc0e6fbca7861a2b5a7d Author: Zachary Amsden Date: Sat May 20 15:00:24 2006 -0700 [PATCH] Fix a NO_IDLE_HZ timer bug Under certain timing conditions, a race during boot occurs where timer ticks are being processed on remote CPUs. The remote timer ticks can increment jiffies, and if this happens during a window when a timeout is very close to expiring but a local tick has not yet been delivered, you can end up with 1) No softirq pending 2) A local timer wheel which is not synced to jiffies 3) No high resolution timer active 4) A local timer which is supposed to fire before the current jiffies value. In this circumstance, the comparison in next_timer_interrupt overflows, because the base of the comparison for high resolution timers is jiffies, but for the softirq timer wheel, it is relative the the current base of the wheel (jiffies_base). Signed-off-by: Zachary Amsden Cc: Martin Schwidefsky Cc: Oleg Nesterov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8b1ea24c6cc529f6860c458b1c0872f22e74c950 Author: Rene Herman Date: Sat May 20 15:00:22 2006 -0700 [PATCH] missing newline in scsi/st.c st: Version 20050830, fixed bufsize 32768, s/g segs 256 st 0:0:6:0: Attached scsi tape st0<4>st0: try direct i/o: yes (alignment 512 B) Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dc49e3445aa703eb7fd33c7ddb7e4a7bbcf06d30 Author: Satoshi Oshima Date: Sat May 20 15:00:21 2006 -0700 [PATCH] kprobes: bad manipulation of 2 byte opcode on x86_64 Problem: If we put a probe onto a callq instruction and the probe is executed, kernel panic of Bad RIP value occurs. Root cause: If resume_execution() found 0xff at first byte of p->ainsn.insn, it must check the _second_ byte. But current resume_execution check _first_ byte again. I changed it checks second byte of p->ainsn.insn. Kprobes on i386 don't have this problem, because the implementation is a little bit different from x86_64. Cc: Andi Kleen Signed-off-by: Satoshi Oshima Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be0d03f1c3d3612fe2b6aa451ae87a89382c9231 Author: Vivek Goyal Date: Sat May 20 15:00:21 2006 -0700 [PATCH] i386 kdump boot cpu physical apicid fix o Kdump second kernel boot fails after a system crash if second kernel is UP and acpi=off and if crash occurred on a non-boot cpu. o Issue here is that MP tables report boot cpu lapic id as 0 but second kernel is booting on a different processor and MP table data is stale in this context. Hence apic_id_registered() check fails in setup_local_APIC() when called from APIC_init_uniprocessor(). o Problem is not seen if ACPI is enabled as in that case boot_cpu_physical_apicid is read from the LAPIC. o Problem is not seen with SMP kernels as well because in this case also boot_cpu_physical_apicid is read from LAPIC. (smp_boot_cpus()). o The problem is fixed by reading boot_cpu_physical_apicid from LAPIC if it is a UP kernel and CRASH_DUMP is enabled. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5daa3ba0c6a41a8bb4ba17ad8d5514172e103504 Author: Stephen Street Date: Sat May 20 15:00:19 2006 -0700 [PATCH] pxa2xx-spi update Fix some outstanding issues with the pxa2xx_spi driver when running on a PXA270: - Wrong timeout calculation in the setup function due to different peripheral clock rates in the PXAxxx family. - Bad handling of SSSR_TFS interrupts in interrupt_transfer function. - Added locking to interface between the pump_messages workqueue and the pump_transfers tasklet. Much thanks to Juergen Beisert for the extensive testing on the PXA270. Signed-off-by: Stephen Street Signed-off-by: David Brownell Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7fba53402eb0fb4209c74469814c583b6455e096 Author: Ben Dooks Date: Sat May 20 15:00:18 2006 -0700 [PATCH] S3C24XX: hardware SPI driver Hardware based SPI driver for Samsung S3C24XX SoC systems Signed-off-by: Ben Dooks Cc: David Brownell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1fc7547d4bfe5c8c8c79e196b955b6fbaa21bfd2 Author: Ben Dooks Date: Sat May 20 15:00:17 2006 -0700 [PATCH] S3C24XX: GPIO based SPI driver SPI driver for SPI by GPIO on the Samsung S3C24XX series of SoC processors. Signed-off-by: Ben Dooks Cc: Greg KH Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b81d6637d27a0e6a0506ecef65493b50d859cfc Author: Adrian Bunk Date: Sat May 20 15:00:16 2006 -0700 [PATCH] drivers/base/firmware_class.c: cleanups - remove the following global function that is both unused and unimplemented: - register_firmware() - make the following needlessly global function static: - firmware_class_uevent() Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ccf06998fe179ae2cc9517ed1d75433dc0b5032d Author: Kumar Gala Date: Sat May 20 15:00:15 2006 -0700 [PATCH] spi: add spi master driver for Freescale MPC83xx SPI controller This driver supports the SPI controller on the MPC83xx SoC devices from Freescale. Note, this driver supports only the simple shift register SPI controller and not the descriptor based CPM or QUICCEngine SPI controller. Signed-off-by: Kumar Gala Signed-off-by: David Brownell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba1a051319dc2bec9f43b7cef11c6e5270107fd6 Author: dmitry pervushin Date: Sat May 20 15:00:14 2006 -0700 [PATCH] minor SPI doc fix Because several developers asked me about referenced but missing spi_add_master(), I think that this patch should be applied ... it corrects comments so they refer to spi_register_master() instead. Signed-off-by: dmitry pervushin Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae0718f8e3fcfa3e4863f63db90d24bbec6b14a2 Author: Theodore Tso Date: Sat May 20 15:00:13 2006 -0700 [PATCH] Update ext2/ext3/jbd MAINTAINERS entries Signed-off-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c9ee133b914879e02796bccd840f75f185cf1bb7 Author: Alan Cox Date: Sat May 20 15:00:12 2006 -0700 [PATCH] Clarify maintainers and include linux-security info Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6a61c5494145c904bead0cceadd94080bd3a784 Author: Eric Sesterhenn Date: Sat May 20 15:00:12 2006 -0700 [PATCH] Overrun in isdn_tty.c This fixes coverity bug id #1237. After the while loop, it is possible for i == ISDN_LMSNLEN. If this happens the terminating '\0' is written after the end of the array. Signed-off-by: Eric Sesterhenn Cc: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 92d1dbd27417c54c23aac6a84c285e256f6118b6 Author: Paul Jackson Date: Sat May 20 15:00:11 2006 -0700 [PATCH] cpuset: might_sleep_if check in cpuset_zones_allowed It's too easy to incorrectly call cpuset_zone_allowed() in an atomic context without __GFP_HARDWALL set, and when done, it is not noticed until a tight memory situation forces allocations to be tried outside the current cpuset. Add a 'might_sleep_if()' check, to catch this earlier on, instead of waiting for a similar check in the mutex_lock() code, which is only rarely invoked. Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 36be57ffe39e03aab9fbe857f70c7a6a15bd9e08 Author: Paul Jackson Date: Sat May 20 15:00:10 2006 -0700 [PATCH] cpuset: update cpuset_zones_allowed comment Update the kernel/cpuset.c:cpuset_zone_allowed() comment. The rule for when mm/page_alloc.c should call cpuset_zone_allowed() was intended to be: Don't call cpuset_zone_allowed() if you can't sleep, unless you pass in the __GFP_HARDWALL flag set in gfp_flag, which disables the code that might scan up ancestor cpusets and sleep. The explanation of this rule in the comment above cpuset_zone_allowed() was stale, as a result of a restructuring of some __alloc_pages() code in November 2005. Rewrite that comment ... Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bdd804f478a0cc74bf7db8e9f9d5fd379d1b31ca Author: Paul Jackson Date: Sat May 20 15:00:09 2006 -0700 [PATCH] Cpuset: might sleep checking zones allowed fix Fix a couple of infrequently encountered 'sleeping function called from invalid context' in the cpuset hooks in __alloc_pages. Could sleep while interrupts disabled. The routine cpuset_zone_allowed() is called by code in mm/page_alloc.c __alloc_pages() to determine if a zone is allowed in the current tasks cpuset. This routine can sleep, for certain GFP_KERNEL allocations, if the zone is on a memory node not allowed in the current cpuset, but might be allowed in a parent cpuset. But we can't sleep in __alloc_pages() if in interrupt, nor if called for a GFP_ATOMIC request (__GFP_WAIT not set in gfp_flags). The rule was intended to be: Don't call cpuset_zone_allowed() if you can't sleep, unless you pass in the __GFP_HARDWALL flag set in gfp_flag, which disables the code that might scan up ancestor cpusets and sleep. This rule was being violated in a couple of places, due to a bogus change made (by myself, pj) to __alloc_pages() as part of the November 2005 effort to cleanup its logic, and also due to a later fix to constrain which swap daemons were awoken. The bogus change can be seen at: http://linux.derkeiler.com/Mailing-Lists/Kernel/2005-11/4691.html [PATCH 01/05] mm fix __alloc_pages cpuset ALLOC_* flags This was first noticed on a tight memory system, in code that was disabling interrupts and doing allocation requests with __GFP_WAIT not set, which resulted in __might_sleep() writing complaints to the log "Debug: sleeping function called ...", when the code in cpuset_zone_allowed() tried to take the callback_sem cpuset semaphore. We haven't seen a system hang on this 'might_sleep' yet, but we are at decent risk of seeing it fairly soon, especially since the additional cpuset_zone_allowed() check was added, conditioning wakeup_kswapd(), in March 2006. Special thanks to Dave Chinner, for figuring this out, and a tip of the hat to Nick Piggin who warned me of this back in Nov 2005, before I was ready to listen. Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 593ee20766921fec643194dff829e17f30552220 Author: Kristen Accardi Date: Sat May 20 15:00:08 2006 -0700 [PATCH] pci: correctly allocate return buffers for osc calls The OSC set and query functions do not allocate enough space for return values, and set the output buffer length to a false, too large value. This causes the acpi-ca code to assume that the output buffer is larger than it actually is, and overwrite memory when copying acpi return buffers into this caller provided buffer. In some cases this can cause kernel oops if the memory that is overwritten is a pointer. This patch will change these calls to use a dynamically allocated output buffer, thus allowing the acpi-ca code to decide how much space is needed. Signed-off-by: Kristen Carlson Accardi Cc: "Brown, Len" Cc: "Yu, Luming" Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d66fd908acc8ba88541ecc570d89b0243f947c5e Author: Amy Griffis Date: Sat May 20 15:00:07 2006 -0700 [PATCH] fix NULL dereference in inotify_ignore Don't reassign to watch. If idr_find() returns NULL, then put_inotify_watch() will choke. Signed-off-by: Amy Griffis Cc: John McCutchan Cc: Robert Love Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 66055a4e7334b05354c835123ff621c5f700e56a Author: Amy Griffis Date: Sat May 20 15:00:06 2006 -0700 [PATCH] fix race in inotify_release While doing some inotify stress testing, I hit the following race. In inotify_release(), it's possible for a watch to be removed from the lists in between dropping dev->mutex and taking inode->inotify_mutex. The reference we hold prevents the watch from being freed, but not from being removed. Checking the dev's idr mapping will prevent a double list_del of the same watch. Signed-off-by: Amy Griffis Acked-by: John McCutchan Cc: Robert Love Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12783b002db1f02c29353c8f698a85514420b9f4 Author: Mike Kravetz Date: Sat May 20 15:00:05 2006 -0700 [PATCH] SPARSEMEM incorrectly calculates section number A bad calculation/loop in __section_nr() could result in incorrect section information being put into sysfs memory entries. This primarily impacts memory add operations as the sysfs information is used while onlining new memory. Fix suggested by Dave Hansen. Note that the bug may not be obvious from the patch. It actually occurs in the function's return statement: return (root_nr * SECTIONS_PER_ROOT) + (ms - root); In the existing code, root_nr has already been multiplied by SECTIONS_PER_ROOT. Signed-off-by: Mike Kravetz Cc: Dave Hansen Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad8f5797302ed389476debcc51b4630f387618b9 Author: KAMEZAWA Hiroyuki Date: Sat May 20 15:00:03 2006 -0700 [PATCH] build fix: CONFIG_MEMORY_HOTPLUG=y on i386 typo in #ifdefs. Fixes http://bugme.osdl.org/show_bug.cgi?id=6538 Signed-off-by: KAMEZAWA Hiroyuki Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d4e9dc63dca91cd89086b5a686d7f7635c8319e5 Author: Alexey Dobriyan Date: Sat May 20 15:00:02 2006 -0700 [PATCH] selinux: endian fix Signed-off-by: Alexey Dobriyan Cc: Stephen Smalley Acked-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df88912a2165f56a7402db80126cf8ea075221fe Author: Andrew Morton Date: Sat May 20 15:00:01 2006 -0700 [PATCH] binfmt_flat: don't check for EMFILE Bernd Schmidt points out that binfmt_flat is now leaving the exec file open while the application runs. This offsets all the application's fd numbers. We should have closed the file within exec(), not at exit()-time. But there doesn't seem to be a lot of point in doing all this just to avoid going over RLIMIT_NOFILE by one fd for a few microseconds. So take the EMFILE checking out again. This will cause binfmt_flat to again fail LTP's exec-should-return-EMFILE-when-fdtable-is-full test. That test appears to be wrong anyway - Open Group specs say nothing about exec() returning EMFILE. Cc: Bernd Schmidt Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48d705522da4fa04bb0169a7ca3c9ab92e28b613 Author: Micon, David Date: Sat May 20 14:59:59 2006 -0700 [PATCH] HID read busywait fix Make a read of a HID device block until data is available. Without it, the read goes into a busy-wait loop until data is available. Cc: Greg KH Acked-by: Vojtech Pavlik Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9ccfc29c671c9d0a83c2a114d4bc5f85f3cd749d Author: Florin Malita Date: Sat May 20 14:59:58 2006 -0700 [PATCH] nfsd: sign conversion obscuring errors in nfsd_set_posix_acl() Assigning the result of posix_acl_to_xattr() to an unsigned data type (size/size_t) obscures possible errors. Coverity CID: 1206. Signed-off-by: Florin Malita Acked-by: NeilBrown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2adc7d47c4dbf684e69ee3980c158ff684dc170e Author: NeilBrown Date: Sat May 20 14:59:57 2006 -0700 [PATCH] md: Fix inverted test for 'repair' directive. We should be able to write 'repair' to /sys/block/mdX/md/sync_action, however due to and inverted test, that always given EINVAL. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c7b389e532e964f07057dac8a56c43465544759 Author: Peter Staubach Date: Sat May 20 14:59:56 2006 -0700 [PATCH] NFS server subtree_check returns dubious value Address a problem found when a Linux NFS server uses the "subtree_check" export option. The "subtree_check" NFS export option was designed to prohibit a client from using a file handle for which it should not have permission. The algorithm used is to ensure that the entire path to the file being referenced is accessible to the user attempting to use the file handle. If some part of the path is not accessible, then the operation is aborted and the appropriate version of ESTALE is returned to the NFS client. The error, ESTALE, is unfortunate in that it causes NFS clients to make certain assumptions about the continued existence of the file. They assume that the file no longer exists and refuse to attempt to access it again. In this case, the file really does exist, but access was denied by the server for a particular user. A better error to return would be an EACCES sort of error. This would inform the client that the particular operation that it was attempting was not allowed, without the nasty side effects of the ESTALE error. Signed-off-by: Peter Staubach Acked-By: NeilBrown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ea6c20891eb25e4884b852c040136f44cb173f3e Author: Vivek Goyal Date: Sat May 20 14:59:55 2006 -0700 [PATCH] Kdump maintainer info update Update MAINTAINERS file for info regarding kdump maintainership. Signed-off-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22192ccd6d1dfea2a41e40442997ccad5b7b160e Author: Benjamin Herrenschmidt Date: Sat May 20 14:59:53 2006 -0700 [PATCH] powerpc: Fix ide-pmac sysfs entry It looks like the generic ide code now wants ide_init_hwif_ports() to set the parent struct device into the ide_hw structure (new field ?). Without this, the mac ide code can cause the ide probing code to explode in flames in sysfs registration due to what looks like a stale pointer in there (happens when removing/re-inserting one of the hotswap media bays on some laptops). Signed-off-by: Benjamin Herrenschmidt Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c44b20d51142acdc9c66108b758c0454a7e2ce11 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Sat May 20 14:59:52 2006 -0700 [PATCH] i386: remove junk from stack dump i386 stack dump has a "<0>" in the middle of the line and an extra space between columns in multicolumn mode. Remove those and also remove an extra blank line of source code. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d39bedc47fbf18a940f5843981767c221d22cfe Author: Paul A. Clarke Date: Sat May 20 14:59:51 2006 -0700 [PATCH] matroxfb: fix DVI setup to be more compatible There has been a longstanding problem with the Matrox G450 and perhaps other similar cards, with modes "above" 1280x1024-60 on ppc/ppc64 boxes running Linux. Higher resolutions and/or higher refresh rates resulted in a very noticably "jittery" display, and sometimes no display, depending on the physical monitor. This patch fixes that problem on the systems I have easy access to... I've tested with SLES9SP3 (2.6.5+ kernel) and 2.6.16-rc6 custom kernels on an IBM eServer p5 520 w/G450 (a.k.a GXT135P on IBM's ppc64 systems), and a colleague of mine (Ian Romanick) tested it successfully on an Apple ppc32 box (w/GXT135P). I also tested it on IA32 box I have with a GXT135P to verify that it didn't obviously break anything. In my testing, I covered single-card, single and dual-head setups using both HD15 and DVI-D signals, on both the IA32 and ppc64 boxes. While everything appeared fine on both boxes, I did encounter one problem: I can't get any signal on the DVI-D output on the ppc64 box. However, this is also the case without my patch. I just noticed that screen-blanking only occurs on the primary display as well. Signed-off-by: Paul A. Clarke Signed-off-by: Ian Romanick Signed-off-by: Petr Vandrovec Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d64b1c878fc1e384ae53d1d40034239bc33848f4 Author: Lin Feng Shen Date: Sat May 20 14:59:49 2006 -0700 [PATCH] NFS: fix error handling on access_ok in compat_sys_nfsservctl Functions compat_nfs_svc_trans, compat_nfs_clnt_trans, compat_nfs_exp_trans, compat_nfs_getfd_trans and compat_nfs_getfs_trans, which are called by compat_sys_nfsservctl(fs/compat.c), don't handle the return value of access_ok properly. access_ok return 1 when the addr is valid, and 0 when it's not, but these functions have the reversed understanding. When the address is valid, they always return -EFAULT to compat_sys_nfsservctl. An example is to run /usr/sbin/rpc.nfsd(32bit program on Power5). It doesn't function as expected. strace showes that nfsservctl returns -EFAULT. The patch fixes this by correcting the error handling on the return value of access_ok in the five functions. Signed-off-by: Lin Feng Shen Cc: Trond Myklebust Acked-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 84b3932bf0fd8cdc8c75a5be77e1dded1e6479c6 Author: Ayaz Abdulla Date: Sat May 20 14:59:48 2006 -0700 [PATCH] forcedeth: fix multi irq issues With Manfred Spraul and Andrew Morton Bring back this recently-reverted patch, only fixed. Original changelog: From: Ayaz Abdulla This patch fixes the issues with multiple irqs. I am resending based on feedback. I decoupled the dma mask for consistent memory and fixed leak with multiple irq in error path. Thanks to Manfred for catching the spin lock problem. Fix it: From: Manfred Spraul Fix bug introduced by ebf34c9b6fcd22338ef764b039b3ac55ed0e297b, covered in http://bugzilla.kernel.org/show_bug.cgi?id=6568. Remove second instance of the request_irq() calls: they were moved from nv_open into nv_request_irq. Thanks to Alistair Strachan for reporting and persisting. Signed-off-by: Ayaz Abdulla Signed-off-by: Manfred Spraul Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9f434d4f84a235f6b61aec6e691d6b07bc46fc24 Author: Eric Moore Date: Wed May 17 18:19:43 2006 -0600 [SCSI] scsi_transport_sas: make write attrs writeable A couple write attributes in sas transport layer have a small bug that prevents them from being written to. Those attributes are the link_reset and write_reset. This is due the store field being set to NULL. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 6d99a3f372181160a56d7b1ee3259dbe03663f0d Author: James Bottomley Date: Fri May 19 10:49:37 2006 -0500 [SCSI] scsi_transport_sas; fix user_scan the user_scan() callback currently has the potential to identify the wrong device in the presence of expanders. This is because it finds the first device with a matching target_id, which might be an expander. Fix this by making it look specifically for end devices. Signed-off-by: James Bottomley commit e2a7f77a7b4ab298a38c8d1f624628456069bdb0 Author: Randy Dunlap Date: Thu May 18 10:50:18 2006 -0700 [PATCH] libata-core: fix current kernel-doc warnings Fix all current kernel-doc warnings. Signed-off-by: Randy Dunlap Signed-off-by: Jeff Garzik commit 63a25355cd5cd9a2d19a7c50eed4f0a8aa622f72 Author: Mark Lord Date: Fri May 19 16:41:27 2006 -0400 [PATCH] sata_mv: version bump Increment the version number inside sata_mv.c. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 559eedad7f7764dacca33980127b4615011230e4 Author: Mark Lord Date: Fri May 19 16:40:15 2006 -0400 [PATCH] sata_mv: endian fix This fixes a byte-swap issue on PPC, found by Zang Roy-r61911 on the powerpc platform. His original patch also had some other platform-specific changes in #ifdef's, but I'm not sure yet how to incorporate them. Look for another patch for those (soon). Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit a6432436c5e14b416f27c8f87c5bf0bc36771f49 Author: Mark Lord Date: Fri May 19 16:36:36 2006 -0400 [PATCH] sata_mv: remove local copy of queue indexes The driver currently keeps local copies of the hardware request/response queue indexes. But it expends significant effort ensuring consistency between the two views, and still gets it wrong after an error or reset occurs. This patch removes the local copies, in favour of just accessing the hardware whenever we need them. Eventually this may need to be tweaked again for NCQ, but for now this works and solves problems some users were seeing. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit e857f141945f29c16f72ffcfdbce097f8be6c4e9 Author: Mark Lord Date: Fri May 19 16:33:03 2006 -0400 [PATCH] sata_mv: spurious interrupt workaround The 60xx chips, and possibly others, incorrectly assert DEV_IRQ interrupts on a regular basis. The cause of this is under investigation (by me and in theory by Marvell also), but regardless we do need to deal with these events. This patch tidies up some interrupt handler code, and ensures that we ignore DEV_IRQ interrupts when the drive still has ATA_BUSY asserted. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit eb46d684600ac145501805a294c94675e82eab2e Author: Mark Lord Date: Fri May 19 16:29:21 2006 -0400 [PATCH] sata_mv: chip initialization fixes The interface control register of the 60xx (and later) Marvell chip requires certain bits to always be set when writing to it. These bits incorrectly read-back as zeros, so the pattern must be ORed in with each write of the register. Also, bit 12 should NOT be set (note that Marvell's own driver also had bit-12 wrong here). While we're at it, we also now do pci_set_master() in the init code. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 615ab95342f6245026d8974b9724f7ea57d9a184 Author: Mark Lord Date: Fri May 19 16:24:56 2006 -0400 [PATCH] sata_mv: deal with interrupt coalescing interrupts In some systems, it is possible that the BIOS may have enabled interrupt coalescing for the Marvell controllers which support it. This patch adds code to detect/ack interrupts from the chip's coalescing (combing) logic. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 9b358e305c1d783c8a4ebf00344e95deb9e38f3d Author: Mark Lord Date: Fri May 19 16:21:03 2006 -0400 [PATCH] sata_mv: prevent unnecessary double-resets The mv_err_intr() function is invoked from the driver's interrupt handler, as well as from the timeout function. This patch prevents it from triggering a one-after-the-other double reset of the controller when invoked from the timeout function. This also adds a check for a timeout race condition that has been observed to occur with this driver in earlier kernels. This should not be needed, in theory, but in practice it has caught bugs. Maybe nuke it at a later date. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit bb02aacc02c6002143a1cfc313d144a413eec8d0 Author: Erling A. Jacobsen Date: Sun Apr 30 21:46:56 2006 +0200 [PATCH] winbond-840-remove-badness-in-pci_map_single Call pci_map_single() with the actual size of the receive buffers, not 0 (which skb->len is initialized to by dev_alloc_skb()). Signed-off-by: Erling A. Jacobsen Signed-off-by: Jeff Garzik commit f905703a93b7014a0fd95d0edac2b734bf0d1522 Author: Komuro Date: Sun Apr 30 09:54:13 2006 +0900 [PATCH] network: axnet_cs: bug fix multicast code (support older ax88190 chipset) Dear Jeff axnet_cs: bug fix multicast code (support older ax88190 chipset) Signed-off-by: komurojun-mbn@nifty.com Best Regards Komuro Signed-off-by: Jeff Garzik commit a06631cbdc09fe33892f08238be498eaa84892ee Author: Stephen Hemminger Date: Mon May 15 16:32:39 2006 -0700 [PATCH] skge: don't allow transmit ring to be too small The driver will get stuck (permanent transmit timeout), if the transmit ring size is set too small. It needs to have enough ring elements to hold one maximum size transmit. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 20e777a2a7dc9fad3d0b016c662c2fb60e6b20e7 Author: Stephen Hemminger Date: Mon May 15 16:30:25 2006 -0700 [PATCH] skge: bad checksums on big-endian platforms Skge driver always causes bad checksums on big-endian. The checksum in the receive control block was being swapped when it doesn't need to be. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit c9b84dcac6e20ec8e5424f3dff853daa863bfdd0 Author: Stephen Hemminger Date: Wed May 17 14:37:07 2006 -0700 [PATCH] sky2 version 1.4 Need to track impact of this group of changes. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 86fba6342dee30a1533b14da284d79e4eb66de26 Author: Stephen Hemminger Date: Wed May 17 14:37:06 2006 -0700 [PATCH] sky2: force NAPI repoll if busy If the status ring processing can't keep up with the incoming frames, it is more efficient to have NAPI keep scheduling the poll routine rather than causing another interrupt. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 86a31a759f2117816b8c78a049c41ead3ef9ef1c Author: Stephen Hemminger Date: Wed May 17 14:37:05 2006 -0700 [PATCH] sky2: more fixes for Yukon Ultra Logic error in the phy initialization code. Also, turn on wake on lan bit in status control. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2d2a387199bf38c6628adb9c6184d7ab6e306148 Author: Stephen Hemminger Date: Wed May 17 14:37:04 2006 -0700 [PATCH] Subjec: sky2, skge: correct PCI id for DGE-560T The Dlink DGE-560T uses Yukon2 chipset so it needs sky2 driver; and the DGE-530T uses Yukon1 so it uses skge driver. Bug: http://bugzilla.kernel.org/show_bug.cgi?id=6544 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit ee7abb04df92b444069be8fe47d66d809de23782 Author: Stephen Hemminger Date: Thu May 18 11:16:21 2006 -0700 [PATCH] sky2: allow dual port usage If both ports are receiving on the SysKonnect dual port cards, then it appears the bus interface unit can give an interrupt status for frame before DMA has completed. This leads to bogus frames and general confusion. This is why receive checksumming is also messed up on dual port cards. A workaround for the out of order receive problem is to eliminating split transactions on PCI-X. This version is based of the current linux-2.6.git including earlier patch to disable dual ports. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 38bb6b288bf4fb954a3793e57c7339774c842a54 Author: John W. Linville Date: Fri May 19 10:51:21 2006 -0400 [PATCH] via-rhine: revert "change mdelay to msleep and remove from ISR path" Revert previous patch with subject "change mdelay to msleep and remove from ISR path". This patch seems to have caused bigger problems than it solved, and it didn't solve much of a problem to begin with... Discussion about backing-out this patch can be found here: http://marc.theaimsgroup.com/?l=linux-netdev&m=114321570402396&w=2 The git commit associated w/ the original patch is: 6ba98d311d0a4ff7dc36d8f435ce60174f4c30ec Signed-off-by: John W. Linville commit f34ba4e1edd82272dbc192e488c7dc9e56c4ec62 Author: Andrew Morton Date: Fri May 19 02:13:21 2006 -0700 [PATCH] revert "forcedeth: fix multi irq issues" Revert ebf34c9b6fcd22338ef764b039b3ac55ed0e297b. Maybe. Due to crashes at shutdown - see http://bugzilla.kernel.org/show_bug.cgi?id=6568. Cc: Ayaz Abdulla Cc: Manfred Spraul Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 78a904b65420e02bf964af6a83c1fd7a85e0b59d Author: Randy.Dunlap Date: Fri May 19 10:11:02 2006 -0700 [SCSI] ppa: fix for machines with highmem ppa cannot handle highmem pages, and like imm, which already has this patch, the device is slow, so performance is not a big issue, so just force pages to be in low memory (hence mapped). Signed-off-by: Randy Dunlap Signed-off-by: James Bottomley commit 4ff42a669a9ad3eb8274da31c7baabd968c2d365 Author: James Bottomley Date: Wed May 17 18:06:52 2006 -0500 [SCSI] mptspi: reset handler shouldn't be called for other bus protocols All registered reset callback handlers are called during reset processing. The mptspi modules has its own reset callback handler, just recently added for issuing domain validation after host reset. If either the mptsas or mptfc driver are loaded, this callback could be called. Thus resulting in domain validation being issued for sas or fibre end devices. Fix this by having mptbase.c check the bus type against the driver type and only call the reset handler if they match (or if it's a non-bus specific reset handler). Signed-off-by: James Bottomley commit c3d833685583f943fb0b5511a9e4602becb1668b Author: Thomas Bogendoerfer Date: Tue May 16 06:38:29 2006 +0200 [SCSI] Blacklist entry for HP dat changer after upgrading our SUN E250 from 2.4 to 2.6 I'm seeing following error when the HP DDS4 DAT changer gets probed: scsi: host 1 channel 0 id 5 lun16777216 has a LUN larger than allowed by the host adapter The device is connected to a symbios 875 host. I've talked to Willy about the problem, and he asked me to try to blacklist the device for reportlun. I did that with the patch below and it solved the problem. It now gets properly detected: target1:0:5: FAST-20 WIDE SCSI 40.0 MB/s ST (50 ns, offset 16) Vendor: HP Model: C5713A Rev: H307 Type: Sequential-Access ANSI SCSI revision: 03 target1:0:5: Beginning Domain Validation target1:0:5: FAST-20 SCSI 20.0 MB/s ST (50 ns, offset 16) target1:0:5: FAST-20 WIDE SCSI 40.0 MB/s ST (50 ns, offset 16) target1:0:5: Domain Validation skipping write tests target1:0:5: Ending Domain Validation Vendor: HP Model: C5713A Rev: H307 Type: Medium Changer ANSI SCSI revision: 03 Signed-off-by: tsbogend@alpha.franken.de Signed-off-by: James Bottomley commit b89498a1c2941c00889dd025f52dcb653a5083bc Author: Vladislav Yasevich Date: Fri May 19 14:32:06 2006 -0700 [SCTP]: Allow linger to abort 1-N style sockets. Enable SO_LINGER functionality for 1-N style sockets. The socket API draft will be clarfied to allow for this functionality. The linger settings will apply to all associations on a given socket. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala commit a601266e4f3c479790f373c2e3122a766d123652 Author: Vladislav Yasevich Date: Fri May 19 14:25:53 2006 -0700 [SCTP]: Validate the parameter length in HB-ACK chunk. If SCTP receives a badly formatted HB-ACK chunk, it is possible that we may access invalid memory and potentially have a buffer overflow. We should really make sure that the chunk format is what we expect, before attempting to touch the data. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala commit c2a4c40651e08e465d3a6130bd9f6dcc1ce21d83 Author: Catalin Marinas Date: Fri May 19 21:55:35 2006 +0100 [ARM] 3533/1: Implement the __raw_(read|write)_can_lock functions on ARM Patch from Catalin Marinas Recent patches introduced the write_can_lock() call in the kernel/ptrace.c file. Implement the __raw_* variants on ARM (SMP) as well. Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 2c171bf13423dc5293188cea7f6c2da1720926e2 Author: Pavel Pisa Date: Fri May 19 21:48:03 2006 +0100 [ARM] 3531/1: i.MX/MX1 SD/MMC ensure, that clock are stopped before new command and cleanups Patch from Pavel Pisa There has been problems that for some paths that clock are not stopped during new command programming and initiation. Result is issuing of incorrect command to the card. Some other problems are cleaned too. Noisy report of known ERRATUM #4 has been suppressed. Signed-off-by: Pavel Pisa Signed-off-by: Russell King commit dd2d1c6f2958d027e4591ca5d2a04dfe36ca6512 Author: Vladislav Yasevich Date: Fri May 19 11:52:20 2006 -0700 [SCTP]: Respect the real chunk length when walking parameters. When performing bound checks during the parameter processing, we want to use the real chunk and paramter lengths for bounds instead of the rounded ones. This prevents us from potentially walking of the end if the chunk length was miscalculated. We still use rounded lengths when advancing the pointer. This was found during a conformance test that changed the chunk length without modifying parameters. Signed-off-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala commit 61c9fed41638249f8b6ca5345064eb1beb50179f Author: Vladislav Yasevich Date: Fri May 19 11:01:18 2006 -0700 [SCTP]: A better solution to fix the race between sctp_peeloff() and sctp_rcv(). The goal is to hold the ref on the association/endpoint throughout the state-machine process. We accomplish like this: /* ref on the assoc/ep is taken during lookup */ if owned_by_user(sk) sctp_add_backlog(skb, sk); else inqueue_push(skb, sk); /* drop the ref on the assoc/ep */ However, in sctp_add_backlog() we take the ref on assoc/ep and hold it while the skb is on the backlog queue. This allows us to get rid of the sock_hold/sock_put in the lookup routines. Now sctp_backlog_rcv() needs to account for potential association move. In the unlikely event that association moved, we need to retest if the new socket is locked by user. If we don't this, we may have two packets racing up the stack toward the same socket and we can't deal with it. If the new socket is still locked, we'll just add the skb to its backlog continuing to hold the ref on the association. This get's rid of the need to move packets from one backlog to another and it also safe in case new packets arrive on the same backlog queue. The last step, is to lock the new socket when we are moving the association to it. This is needed in case any new packets arrive on the association when it moved. We want these to go to the backlog since we would like to avoid the race between this new packet and a packet that may be sitting on the backlog queue of the old socket toward the same association. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala commit 8de8c8738086501bbe3057ed6f4b70dded657488 Author: Sridhar Samudrala Date: Fri May 19 10:58:12 2006 -0700 [SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure. Also fix some other cases where sk_err is not set for 1-1 style sockets. Signed-off-by: Sridhar Samudrala commit ee433530d96a7b0af24ab616e5b51f1d89f9ae38 Author: Patrick McHardy Date: Fri May 19 02:17:18 2006 -0700 [NETFILTER]: nfnetlink_log: fix byteorder confusion flags is a u16, so use htons instead of htonl. Also avoid double conversion. Noticed by Alexey Dobriyan Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2c8ac66bb2ff89e759f0d632a27cc64205e9ddd9 Author: Solar Designer Date: Fri May 19 02:16:52 2006 -0700 [NETFILTER]: Fix do_add_counters race, possible oops or info leak (CVE-2006-0039) Solar Designer found a race condition in do_add_counters(). The beginning of paddc is supposed to be the same as tmp which was sanity-checked above, but it might not be the same in reality. In case the integer overflow and/or the race condition are triggered, paddc->num_counters might not match the allocation size for paddc. If the check below (t->private->number != paddc->num_counters) nevertheless passes (perhaps this requires the race condition to be triggered), IPT_ENTRY_ITERATE() would read kernel memory beyond the allocation size, potentially causing an oops or leaking sensitive data (e.g., passwords from host system or from another VPS) via counter increments. This requires CAP_NET_ADMIN. Signed-off-by: Solar Designer Signed-off-by: Kirill Korotaev Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a467704dcb4fa45da48079486f1b0e6baffb12d2 Author: Alexey Dobriyan Date: Fri May 19 02:16:29 2006 -0700 [NETFILTER]: GRE conntrack: fix htons/htonl confusion GRE keys are 16 bit. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 5c170a09d9092e63af1658179f29867d32d56b55 Author: Philip Craig Date: Fri May 19 02:15:47 2006 -0700 [NETFILTER]: fix format specifier for netfilter log targets The prefix argument for nf_log_packet is a format specifier, so don't pass the user defined string directly to it. Signed-off-by: Philip Craig Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 493e2428aa1db0e592736ad15885c6ed1e81b8af Author: Jesper Juhl Date: Fri May 19 02:15:13 2006 -0700 [NETFILTER]: Fix memory leak in ipt_recent The Coverity checker spotted that we may leak 'hold' in net/ipv4/netfilter/ipt_recent.c::checkentry() when the following is true: if (!curr_table->status_proc) { ... if(!curr_table) { ... return 0; <-- here we leak. Simply moving an existing vfree(hold); up a bit avoids the possible leak. Signed-off-by: Jesper Juhl Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 23f3bc0f2c1e26215b671499c07047c325d54d9c Author: Michael S. Tsirkin Date: Thu May 18 18:32:54 2006 +0300 IB/mthca: Fix posting lists of 256 receive requests for Tavor If we post a list of length 256 exactly, nreq in doorbell gets set to 256 which is wrong: it should be encoded by 0. This is because we only zero it out on the next WR, which may not be there. The solution is to ring the doorbell after posting a WQE, not before posting the next one. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 0cb4fe8d2658dc0bd1accfbb74ee288a9d6788f4 Author: Roland Dreier Date: Wed May 17 22:20:50 2006 -0700 IB/uverbs: Don't leak ref to mm on error path In ib_umem_release_on_close(), if the kmalloc() fails, then a reference to current->mm will be leaked. Fix this by adding a mmput() instead of just returning on kmalloc() failure. Signed-off-by: Roland Dreier commit a54c9d30dbb06391ec4422aaf0e1dc2c8c53bd3e Author: Stefan Richter Date: Mon May 15 22:09:46 2006 +0200 [PATCH] ohci1394, sbp2: fix "scsi_add_device failed" with PL-3507 based devices Re-enable posted writes for status FIFO. Besides bringing back a very minor bandwidth tweak from Linux 2.6.15.x and older, this also fixes an interoperability regression since 2.6.16: http://bugzilla.kernel.org/show_bug.cgi?id=6356 (sbp2: scsi_add_device failed. IEEE1394 HD is not working anymore.) Signed-off-by: Stefan Richter Tested-by: Vanei Heidemann Tested-by: Martin Putzlocher (chip type unconfirmed) Signed-off-by: Linus Torvalds commit 679c0cd2dd61c825ab910fdbf347a8b7d1dddec4 Author: Stefan Richter Date: Mon May 15 22:08:09 2006 +0200 [PATCH] sbp2: add ability to override hardwired blacklist In case the blacklist with workarounds for device bugs yields a false positive, the module load parameter can now also be used as an override instead of an addition to the blacklist. Signed-off-by: Stefan Richter Signed-off-by: Linus Torvalds commit e9a1c52c7b19d10342226c12f170d7ab644427e2 Author: Stefan Richter Date: Mon May 15 22:06:37 2006 +0200 [PATCH] sbp2: add read_capacity workaround for iPod Apple decided to copy some USB stupidity over to FireWire. The sector number returned by iPods from read_capacity is one too many. This may cause I/O errors, especially if the kernel is configured for EFI partition support. We use the same workaround as usb-storage but have to check for different model IDs. http://marc.theaimsgroup.com/?t=114233262300001 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187409 Acknowledgements: Diagnosis and therapy by Mathieu Chouquet-Stringer , additional data about affected and unaffected Apple hardware from Vladimir Kotal, Sander De Graaf, Bryan Olmstead and Hugh Dixon. Signed-off-by: Stefan Richter Signed-off-by: Linus Torvalds commit 24d3bf884e093f9de52d31c97187f4b9b4ad7dcb Author: Stefan Richter Date: Mon May 15 22:04:59 2006 +0200 [PATCH] sbp2: consolidate workarounds Grand unification of the three types of workarounds we have so far. The "skip mode page 8" workaround is now limited to devices which pretend to be of TYPE_DISK instead of TYPE_RBC. This workaround is no longer enabled for Initio bridges. Patch update in anticipation of more workarounds: - Add module parameter "workarounds". - Deprecate parameter "force_inquiry_hack". - Compose the blacklist of a compound type for better readability and extensibility. - Remove a now unused #define. Signed-off-by: Stefan Richter Signed-off-by: Linus Torvalds commit cef0893dcf1fdf22943aa49e75ee1eb3bfffe5f5 Author: Joel Becker Date: Wed May 3 11:38:53 2006 -0700 configfs: Make sure configfs_init() is called before consumers. configfs_init() needs to be called first to register configfs before anyconsumers try to access it. Move up configfs in fs/Makefile to make sure it is initialized early. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit eed7a0db460595b139428d252798a83f1e1ce1d3 Author: Joel Becker Date: Tue Apr 11 21:37:20 2006 -0700 configfs: configfs_mkdir() failed to cleanup linkage. If configfs_mkdir() errored in certain ways after the parent<->child linkage was already created, it would not undo the linkage. Also, comment the reference counting for clarity. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit 84efad1a53dd05969094f9a2562b4e6666571c00 Author: Joel Becker Date: Mon Mar 27 18:46:09 2006 -0800 configfs: Fix a reference leak in configfs_mkdir(). configfs_mkdir() failed to release the working parent reference in most exit paths. Also changed the exit path for readability. Signed-off-by: Joel Becker Signed-off-by: Mark Fasheh commit afae00ab45ea71d89086f924ebee6ca51c81e48e Author: Sunil Mushran Date: Wed Apr 12 14:37:00 2006 -0700 ocfs2: fix gfp mask in some file system paths We were using GFP_KERNEL in a handful of places which really wanted GFP_NOFS. Fix this. Signed-off-by: Sunil Mushran Signed-off-by: Mark Fasheh commit dd4a2c2bfe159cc39e9672e875c8314563699764 Author: Mark Fasheh Date: Wed Apr 12 14:24:05 2006 -0700 ocfs2: Don't populate uptodate cache in ocfs2_force_read_journal() This greatly reduces the amount of memory useded during recovery. Signed-off-by: Mark Fasheh commit c4374f8a6093fbee42ac4368b3ca180d1d0c7c6d Author: Mark Fasheh Date: Fri May 5 19:04:35 2006 -0700 ocfs2: take meta data lock in ocfs2_file_aio_read() Temporarily take the meta data lock in ocfs2_file_aio_read() to allow us to update our inode fields. Signed-off-by: Mark Fasheh commit 53013cba4118a5cfe8f7c7ea5e5bc1c48b160f76 Author: Mark Fasheh Date: Fri May 5 19:04:03 2006 -0700 ocfs2: take data locks around extend We need to take a data lock around extends to protect the pages that ocfs2_zero_extend is going to be pulling into the page cache. Otherwise an extend on one node might populate the page cache with data pages that have no lock coverage. Signed-off-by: Mark Fasheh commit ec64152fee25e2a63f06d40d32c7b4cb62eab9a3 Author: Thomas Gleixner Date: Wed May 17 20:14:29 2006 +0100 [ARM] 3530/1: PXA Mainstone: prevent double enable_irq() in pcmcia Patch from Thomas Gleixner The mainstone board pcmcia interrupt have been enabled via setup_irq() and the following socket check calls enable_irq again. Set the NOAUTOEN flag so the interrupt is not automatically enabled in setup_irq() Signed-off-by: Thomas Gleixner Acked-by: Nicolas Pitre Signed-off-by: Russell King commit bc519f30eb039f023c15167663d5a8a14fed7dcb Author: David Woodhouse Date: Fri May 5 17:38:27 2006 +0100 [PATCH] bcm43xx: associate on 'ifconfig up' I still need this hack to work around the fact that softmac doesn't attempt to associate when we bring the device up... Signed-off-by: David Woodhouse Signed-off-by: John W. Linville commit 093beac189e4295d968f0d38787b46f76cb0eaaa Author: Ishai Rabinovitz Date: Wed May 17 09:20:48 2006 -0700 IB/srp: Complete correct SCSI commands on device reset When flushing out queued commands after a successful device reset, make sure that SRP completes the right commands, instead of calling scsi_done on the command passed into the device reset handler over and over. Signed-off-by: Ishai Rabinovitz Signed-off-by: Roland Dreier commit ec2d7208494fe599a5ff13b40a0a20c9881f2737 Author: Roland Dreier Date: Wed May 17 09:16:03 2006 -0700 IB/srp: Get rid of extra scsi_host_put()s if reconnection fails If a reconnection attempt fails, then SRP does two scsi_host_put()s. This is a historical relic from an earlier version of the driver that took a reference on the scsi_host before trying to reconnect, so get rid of the extra scsi_host_put(). Signed-off-by: Roland Dreier commit e65810566f3e613d9baa5512b8724ebde42ace0f Author: Roland Dreier Date: Wed May 17 09:13:21 2006 -0700 IB/srp: Don't wait for disconnection if sending DREQ fails Sending a DREQ may fail, for example because the remote target has already broken the connection. If so, then SRP should not wait for the disconnection to complete, because it never will. Signed-off-by: Roland Dreier commit c3fb04162a1c8ddcf6caa6e19020da3f0fd23103 Author: Dimitry Andric Date: Wed May 17 16:31:11 2006 +0100 [ARM] 3529/1: s3c24xx: fix restoring control register with undefined instruction Patch from Dimitry Andric In arch/arm/mach-s3c2410/sleep.S, the coprocessor registers are saved at suspend time, and restored at resume time. However, an undefined instruction is used when attempting to restore a non-existent "auxiliary control register". This leads to a crash on S3C2412, which has an ARM926 core instead of an ARM920. At suspend time, the following fragment runs: mrc p15, 0, r7, c2, c0, 0 @ translation table base address mrc p15, 0, r8, c2, c0, 0 @ auxiliary control register mrc p15, 0, r9, c1, c0, 0 @ control register and at resume time, the following fragment runs: mcr p15, 0, r7, c2, c0, 0 @ translation table base mcr p15, 0, r8, c1, c1, 0 @ auxilliary control ... mcr p15, 0, r9, c1, c0, 0 @ turn on MMU, etc There are several problems with these fragments: 1. The ARM920 and ARM926 cores don't have any "auxiliary control register", at least not according to the ARM920 and ARM926 TRM's. 2. The 2nd line of suspend erroneously saves the c2 register again. 3. This saved c2 value is restored using an undefined instruction. For some reason this does not crash on ARM920, but does crash on ARM926. The following patch fixes all these problems. Signed-off-by: Dimitry Andric Yes, this looks sensible Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 1db76c14d215c8b26024dd532de3dcaf66ea30f7 Author: Roland Dreier Date: Wed May 17 07:48:07 2006 -0700 IB/mthca: Make fw_cmd_doorbell default to 0 Setting fw_cmd_doorbell allows FW command to be queued using posted writes instead of requiring polling on a "go" bit, so it should be a performance boost. However, the option causes problems with at least some device/firmware combinations, so set the default to 0 until we understand what's going on better. Signed-off-by: Roland Dreier commit 4c31ce8fea9760961a2d1b1d6c84b7590c17ae38 Author: Chen, Kenneth W Date: Tue May 16 16:34:57 2006 -0700 [IA64] one-line cleanup on set_irq_affinity_info Calls to set_irq_info in set_irq_affinity_info() is redundant because irq_affinity mask was set just one line immediately above it. Remove that duplicate call. Signed-off-by: Ken Chen Signed-off-by: Tony Luck commit 41503def5d83bada6a2fd792e636ccc28a285f38 Author: Chen, Kenneth W Date: Tue May 16 16:29:00 2006 -0700 [IA64] fix broken irq affinity When CONFIG_PCI_MSI is set, move_irq() is an empty function, causing grief when sys admin tries to bind interrupt to CPU. Signed-off-by: Ken Chen Signed-off-by: Tony Luck commit 1101ece44e00cfe31a2fd9d3222d05f927b00ef8 Author: Jes Sorensen Date: Mon May 15 05:07:54 2006 -0400 [IA64] sn2 defconfig Set node shift to 10 on SN2 and disable mutex debugging. Signed-off-by: Jes Sorensen Signed-off-by: Tony Luck commit 8872d8e1c4311dd7e5086975df9c76120a0be83b Author: Angelo P. Castellani Date: Tue May 16 21:42:11 2006 -0700 [TCP]: reno sacked_out count fix From: "Angelo P. Castellani" Using NewReno, if a sk_buff is timed out and is accounted as lost_out, it should also be removed from the sacked_out. This is necessary because recovery using NewReno fast retransmit could take up to a lot RTTs and the sk_buff RTO can expire without actually being really lost. left_out = sacked_out + lost_out in_flight = packets_out - left_out + retrans_out Using NewReno without this patch, on very large network losses, left_out becames bigger than packets_out + retrans_out (!!). For this reason unsigned integer in_flight overflows to 2^32 - something. Signed-off-by: David S. Miller commit d8fd0a73169e90022dc3ccf3083ca24573b44b5c Author: Alexey Dobriyan Date: Tue May 16 15:24:41 2006 -0700 [IPV6]: Endian fix in net/ipv6/netfilter/ip6t_eui64.c:match(). Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 6599519e9c6c56ff0f9a4ffd53f90c5b65b902f4 Author: Adrian Bunk Date: Tue May 16 15:23:40 2006 -0700 [TR]: Remove an unused export. This patch removes the unused EXPORT_SYMBOL(tr_source_route). (Note, the usage in net/llc/llc_output.c can't be modular.) Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 4ac396c0467993853d3d58c0975151515700c07b Author: Alexey Dobriyan Date: Tue May 16 15:17:49 2006 -0700 [IPX]: Correct return type of ipx_map_frame_type(). Casting BE16 to int and back may or may not work. Correct, to be sure. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 53d42f541278b6c97724465b19bae4730d7a85c8 Author: Alexey Dobriyan Date: Tue May 16 15:07:28 2006 -0700 [IPX]: Correct argument type of ipxrtr_delete(). A single caller passes __u32. Inside function "net" is compared with __u32 (__be32 really, just wasn't annotated). Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 338f7566e5c26a9547e25d54863ae4e4e5c856d1 Author: Stephen Hemminger Date: Tue May 16 15:02:12 2006 -0700 [PKT_SCHED]: Potential jiffy wrap bug in dev_watchdog(). There is a potential jiffy wraparound bug in the transmit watchdog that is easily avoided by using time_after(). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1e316d7566b63767aa18902235c719e9e95465d0 Author: David Brownell Date: Thu Apr 6 22:25:56 2006 -0700 [PATCH] SPI: spi_bitbang: clocking fixes This fixes two problems triggered by the MMC stack updating clocks: - SPI masters driver should accept a max clock speed of zero; that's one convention for marking idle devices. (Presumably that helps controllers that don't autogate clocks to "off" when not in use.) - There are more than 1000 nanoseconds per millisecond; setting the clock down to 125 KHz now works properly. Showing once again that Zero (http://en.wikipedia.org/wiki/Zero) is still an inexhaustible number of bugs. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 9708c121c38fe864eb6f5a119f7525729686e095 Author: Stephen Street Date: Tue Mar 28 14:05:23 2006 -0800 [PATCH] spi: Update to PXA2xx SPI Driver Fix two outstanding issues with the pxa2xx_spi driver: 1) Bad cast in the function u32_writer. Thanks to Henrik Bechmann 2) Adds support for per transfer changes to speed and bits per word Signed-off-by: Stephen Street Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit a020ed7521a9737bcf3e34eb880867c60c3c68d0 Author: David Brownell Date: Mon Apr 3 15:49:04 2006 -0700 [PATCH] SPI: busnum == 0 needs to work We need to be able to have a "SPI bus 0" matching chip numbering; but that number was wrongly used to flag dynamic allocation of a bus number. This patch resolves that issue; now negative numbers trigger dynamic alloc. It also updates the how-to-write-a-controller-driver overview to mention this stuff. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit ccf77cc4af5b048e20cfd9327fcc286cb69c34cc Author: David Brownell Date: Mon Apr 3 15:46:22 2006 -0700 [PATCH] SPI: devices can require LSB-first encodings Add spi_device hook for LSB-first word encoding, and update all the (in-tree) controller drivers to reject such devices. Eventually, some controller drivers will be updated to support lsb-first encodings on the wire; no current drivers need this. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit ff9f4771b5f017ee0f57629488b6cd7a6ef3d19b Author: Kumar Gala Date: Sun Apr 2 16:06:35 2006 -0500 [PATCH] SPI: Renamed bitbang_transfer_setup to spi_bitbang_setup_transfer and export it Renamed bitbang_transfer_setup to follow convention of other exported symbols from spi-bitbang. Exported spi_bitbang_setup_transfer to allow users of spi-bitbang to use the function in their own setup_transfer. Signed-off-by: Kumar Gala Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 025c398710ac24456f0288fc7e64f426c5c5508f Author: Kumar Gala Date: Sun Apr 2 16:05:54 2006 -0500 [PATCH] SPI: Add David as the SPI subsystem maintainer Add David as the SPI subsystem maintainer Signed-off-by: Kumar Gala Signed-off-by: Greg Kroah-Hartman commit a9948b6194b46e489aa3b4d111d6dfd786c39c4b Author: David Brownell Date: Sun Apr 2 10:37:40 2006 -0800 [PATCH] SPI: spi bounce buffer has a minimum length Make sure that spi_write_then_read() can always handle at least 32 bytes of transfer (total, both directions), minimizing one portability issue. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 747d844ee9a183ff3067bb1181f2a25c50649538 Author: David Brownell Date: Sun Apr 2 10:33:37 2006 -0800 [PATCH] SPI: spi whitespace fixes This removes superfluous whitespace in the header. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit e0c9905e87ac1bc56c9ea8f5b2934aeee53dce26 Author: Stephen Street Date: Tue Mar 7 23:53:24 2006 -0800 [PATCH] SPI: add PXA2xx SSP SPI Driver This driver turns a PXA2xx synchronous serial port (SSP) into a SPI master controller (see Documentation/spi/spi_summary). The driver has the following features: - Support for any PXA2xx SSP - SSP PIO and SSP DMA data transfers. - External and Internal (SSPFRM) chip selects. - Per slave device (chip) configuration. - Full suspend, freeze, resume support. Signed-off-by: Stephen Street Signed-off-by: Andrew Morton Cc: David Brownell Signed-off-by: Greg Kroah-Hartman commit 4cff33f94fefcce1b3c01a9d1da6bb85fe3cbdfa Author: Imre Deak Date: Fri Feb 17 10:02:18 2006 -0800 [PATCH] SPI: per-transfer overrides for wordsize and clocking Some protocols (like one for some bitmap displays) require different clock speed or word size settings for each transfer in an SPI message. This adds those parameters to struct spi_transfer. They are to be used when they are nonzero; otherwise the defaults from spi_device are to be used. The patch also adds a setup_transfer callback to spi_bitbang, uses it for messages that use those overrides, and implements it so that the pure bitbanging code can help resolve any questions about how it should work. Signed-off-by: Imre Deak Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 3170a5e80be7db29ab5ccb6b4145cf28b4a156de Author: Adrian Bunk Date: Tue May 16 22:09:46 2006 +0100 [ARM] arch/arm/kernel/dma-isa.c: named initializers This patch converts struct dma_resources to named initializers. Besides fixing a compile error in -mm, it didn't sound like a bad idea. Signed-off-by: Adrian Bunk Acked-by: Alexander Schulz Signed-off-by: Russell King commit bb1a2aa617e67e2d60f22052b13422c7caeaf798 Author: Harry Fearnhamm Date: Tue May 16 16:50:21 2006 +0100 [ARM] 3527/1: MPCore Boot Lockup Fix Patch from Harry Fearnhamm This patch fixes the occasional lockup seen in early boot stage on RealView MPCore system. Signed-off-by: Harry Fearnhamm Signed-off-by: Russell King commit a4523a8b38089478f93bc053c31f678c63f5ee1b Author: Roland Dreier Date: Mon May 15 11:41:00 2006 -0700 [PATCH] slab: Fix kmem_cache_destroy() on NUMA With CONFIG_NUMA set, kmem_cache_destroy() may fail and say "Can't free all objects." The problem is caused by sequences such as the following (suppose we are on a NUMA machine with two nodes, 0 and 1): * Allocate an object from cache on node 0. * Free the object on node 1. The object is put into node 1's alien array_cache for node 0. * Call kmem_cache_destroy(), which ultimately ends up in __cache_shrink(). * __cache_shrink() does drain_cpu_caches(), which loops through all nodes. For each node it drains the shared array_cache and then handles the alien array_cache for the other node. However this means that node 0's shared array_cache will be drained, and then node 1 will move the contents of its alien[0] array_cache into that same shared array_cache. node 0's shared array_cache is never looked at again, so the objects left there will appear to be in use when __cache_shrink() calls __node_shrink() for node 0. So __node_shrink() will return 1 and kmem_cache_destroy() will fail. This patch fixes this by having drain_cpu_caches() do drain_alien_cache() on every node before it does drain_array() on the nodes' shared array_caches. The problem was originally reported by Or Gerlitz . Signed-off-by: Roland Dreier Acked-by: Christoph Lameter Acked-by: Pekka Enberg Signed-off-by: Linus Torvalds commit 40e59a61669a3cab9e0bd24644e29155d6b00970 Author: Andi Kleen Date: Mon May 15 18:19:47 2006 +0200 [PATCH] x86_64: Don't schedule on exception stack on preemptive kernels Extends an earlier patch from John Blackwood to more exception handlers that also run on the exception stacks. Expand the use of preempt_conditional_{sti,cli} to all cases where interrupts are to be re-enabled during exception handling while running on an IST stack. Based on original patch from Jan Beulich. Cc: John Blackwood Cc: jbeulich@novell.com Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit fad7906d16e8c4926aeb5b0f1756eb9f55b2837d Author: Andi Kleen Date: Mon May 15 18:19:44 2006 +0200 [PATCH] x86_64: Fix memory hotadd heuristics This fixes some boot failures on Dell and Unisys systems with memory hotadd added. - Set hotadd_percent to 0 by default. This means anybody using hotadd memory needs to specify the value on the command line. That's because there are lots of Intel boxes which have a bogus hotplug area in their SRAT and they would waste a lot of memory before. - Fix calculation of how much memory to use when the hotplug area exceeds hotadd_percent - Fix fallback when the - Fix fallback if memory hotadd is not compiled in. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 5491d0f3e206beb95eeb506510d62a1dab462df1 Author: Andi Kleen Date: Mon May 15 18:19:41 2006 +0200 [PATCH] i386/x86_64: Force pci=noacpi on HP XW9300 This is needed to see all devices. The system has multiple PCI segments and we don't handle that properly yet in PCI and ACPI. Short term before this is fixed blacklist it to pci=noacpi. Acked-by: len.brown@intel.com Cc: gregkh@suse.de Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit f0fdabf8bf187c9aafeb139a828c530ef45cf022 Author: Andi Kleen Date: Mon May 15 18:19:38 2006 +0200 [PATCH] x86_64: Don't warn for overflow in nommu case when dma_mask is < 32bit This triggers for b44's 1GB DMA workaround which tries to map first and then bounces. The 32bit heuristic is reasonable because the IOMMU doesn't attempt to handle < 32bit masks anyways. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 639b421b911bbde1e3fb5ed037a4f8c85a5bffcb Author: Andi Kleen Date: Mon May 15 18:19:35 2006 +0200 [PATCH] x86_64: Check for bad dma address in b44 1GB DMA workaround Needed for interaction with the nommu code in x86-64 which will return bad_dma_address if the address exceeds dma_mask. Cc: netdev@vger.kernel.org Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit cb6b2eb9bcf2f61e84dc0b55ef7e3d4923842313 Author: Benjamin Herrenschmidt Date: Mon May 15 15:46:03 2006 +1000 [PATCH] Fix pSeries identification in prom_init.c The OF trampoline code prom_init.c still needs to identify IBM pSeries (PAPR) machines in order to run some platform specific code on them like instanciating the TCE tables. The code doing that detection was changed recently in 2.6.17 early stages but was done slightly incorrectly. It should be testing for an exact match of "chrp" and it currently tests for anything that begins with "chrp". That means it will incorrectly match with platforms using Maple-like device-trees and have open firmware. This fixes it by using strcmp instead of strncmp to match what the actual platform detection code does. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 3de620e8394406fd01f450b8c6e3e74464e81a78 Author: Anton Blanchard Date: Wed May 10 13:05:54 2006 +1000 [PATCH] powerpc: fix kernel version display on pseries boxes We are displaying the wrong thing on the operator panel (2x40 character LCD). This got broken in commit cebb21b5, when UTS_RELEASE got changed to system_utsname.version. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit 9d494ccb9ca297f80dc61a0d6357e88c86f44e92 Author: Russell King Date: Tue May 16 11:33:15 2006 +0100 [ARM] arch/arm/kernel/process.c: Fix warning arch/arm/kernel/process.c:314: warning: assignment makes integer from pointer without a cast Signed-off-by: Russell King commit 478922c2b3c4ec8844ff2dec7eb1eba6f89a10ee Author: Catalin Marinas Date: Tue May 16 11:30:26 2006 +0100 [ARM] 3526/1: ioremap should use vunmap instead of vfree on ARM Patch from Catalin Marinas This patch modifies the __ioremap_pfn and __iounmap functions in arch/arm/mm/ioremap.c to use vunmap instead of vfree. Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 1d6760a3ac6b5691e4914a3333b48fee5c2e275d Author: Nicolas Pitre Date: Tue May 16 11:29:46 2006 +0100 [ARM] 3524/1: ARM EABI: more 64-bit aligned stack fixes Patch from Nicolas Pitre Assembly code that calls C code must ensure the C code sees a 64-bit aligned stack pointer. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit 2ceec0c8c6e2780d58dece91b4b787729405d9e7 Author: Uwe Zeisberger Date: Wed May 10 18:11:05 2006 +0100 [ARM] 3517/1: move definition of PROC_INFO_SZ from procinfo.h to asm-offsets.h Patch from Uwe Zeisberger The symbol is only used in arch/arm/kernel/head-common.S. This in turn is included from arch/arm/kernel/head.S and arch/arm/kernel/head-nommu.S which include asm-offsets.h . Signed-off-by: Uwe Zeisberger Signed-off-by: Russell King commit 1281e36027a9119356bd93b5e7853c72c35dd462 Author: Andrew Victor Date: Tue May 16 11:28:49 2006 +0100 [ARM] 3523/1: Serial core pm_state Patch from Andrew Victor The serial_core already manages the power state of the UARTs, and therefore it shouldn't suspend a UART which was previously suspended. This patch modifies serial_core only call the UART-specific power-management function if the PM state is actually changing. Signed-off-by: Andrew Victor Signed-off-by: Russell King commit 655516c80ccb3ab2ba2d3063715889b00552a8b3 Author: Ben Dooks Date: Wed Apr 19 23:02:56 2006 +0100 [WATCHDOG] s3c2410_wdt.c stop watchdog after boot If the s3c2410 watchdog timer is not enabled by the driver at startup, ensure that it is stopped in-case the boot process has enabled it. Signed-off-by: Ben Dooks Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 03a8e359cf760a876f4da9b5c0c165c49564f95a Author: Wim Van Sebroeck Date: Sun Apr 16 12:52:35 2006 +0200 [WATCHDOG] i8xx_tco.c - remove support for ICH6 + ICH7 Temporary remove support for ICH6 + ICH7. In these newer TCO's the watchdog timer has changed: the TCO_TMR register is not at the TCOBASE+0x1 offset, but changed it's place to TCOBASE+0x12 and became 10 bit long [0:9]. (Kernel BUG 6031). ICH6 + ICH7 support will be added in a new driver. Code is under test. Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 92930d9e8121223e14131809c6e9959ee9e0c43f Author: Randy Dunlap Date: Tue Apr 4 20:17:26 2006 -0700 [WATCHDOG] Documentation/watchdog/watchdog-api.txt - fix watchdog daemon Fix the simple watchdog daemon program in Doc/watchdog/watchdog-api.txt to build cleanly. Signed-off-by: Randy Dunlap Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 7071e522a58cb1b3469e4cd8664ef03a32076349 Author: Dave Jones Date: Mon Apr 3 16:04:48 2006 -0700 [WATCHDOG] sc1200wdt.c printk fix Fix printk output. sc1200wdt: build 20020303<3>sc1200wdt: io parameter must be specified Signed-off-by: Dave Jones Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 843a46f423a508b3a443a08baa903c6da02f3297 Author: Stephen Hemminger Date: Thu May 11 15:07:28 2006 -0700 sky2: prevent dual port receiver problems When both ports are receiving simultaneously, the receive logic gets confused and may pass up a packet before it is full. This causes hangs, and IP will see lots of garbage packets. There is even the potential for data corruption if a later arriving packet DMA's into freed memory. It looks like a hardware bug because status arrives for a packet but no data is there. Until this bug is worked out, block the user from bringing up both ports at once. Signed-off-by: Stephen Hemminger commit de54bc0f00c23a805f4ad2146c5a1fd5e2abe1e9 Author: Andi Kleen Date: Mon May 15 18:19:35 2006 +0200 x86_64: Check for bad dma address in b44 1GB DMA workaround Needed for interaction with the nommu code in x86-64 which will return bad_dma_address if the address exceeds dma_mask. Cc: netdev@vger.kernel.org Signed-off-by: Andi Kleen Signed-off-by: Stephen Hemminger commit 1ea739a5f9f469a57d804ebcf70514b8a5efe9da Author: Lennert Buytenhek Date: Mon May 15 12:25:29 2006 -0700 The ixp2000 driver for the enp2611 was developed on a board with three gigabit ports, but some enp2611 models only have two ports (and only one onboard PM3386.) The current driver assumes there are always three ports and so it doesn't work on the two-port version of the board at all. This patch adds a bit of logic to the enp2611 driver to limit the number of ports to 2 if the second PM3386 isn't detected. Signed-off-by: Lennert Buytenhek Signed-off-by: Stephen Hemminger commit c4694c76ce28dd7e415b4f3014d8c6e580b5f3d2 Author: Andrew Morton Date: Mon May 15 09:44:43 2006 -0700 [PATCH] dl2k needs dma-mapping.h On alpha: drivers/net/dl2k.c: In function `rio_free_tx': drivers/net/dl2k.c:768: error: `DMA_48BIT_MASK' undeclared (first use in this function) drivers/net/dl2k.c:768: error: (Each undeclared identifier is reported only once drivers/net/dl2k.c:768: error: for each function it appears in.) drivers/net/dl2k.c: In function `receive_packet': drivers/net/dl2k.c:896: error: `DMA_48BIT_MASK' undeclared (first use in this function) drivers/net/dl2k.c: In function `rio_close': drivers/net/dl2k.c:1803: error: `DMA_48BIT_MASK' undeclared (first use in this function) Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 194a61b8e09ac526c33777a688ee2a1504d7fbc3 Author: Andrew Morton Date: Mon May 15 09:44:42 2006 -0700 [PATCH] jffs2 warning fixes fs/jffs2/nodelist.c: In function `check_node_data': fs/jffs2/nodelist.c:441: warning: unsigned int format, different type arg (arg 4) fs/jffs2/nodelist.c:464: warning: int format, different type arg (arg 5) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d3779e7989cfdba854b843fe605f8df9e991cd18 Author: Peter Osterlund Date: Mon May 15 09:44:40 2006 -0700 [PATCH] devices.txt: remove pktcdvd entry Changing the driver to use dynamic device numbers was one of the many changes that were made in order to have the driver accepted into the mainline kernel. Therefore I would say that the entry in devices.txt is obsolete. This patch removes it. Signed-off-by: Peter Osterlund Cc: Torben Mathiasen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 264a341231e8af2c2e35ac15d26de76f1198525b Author: Thomas Kleffel Date: Mon May 15 09:44:37 2006 -0700 [PATCH] ide_cs: Add IBM microdrive to known IDs Add the IBM microdrive to the known PCMCIA IDs for ide_cs. Signed-off-by: Thomas Kleffel Cc: Bartlomiej Zolnierkiewicz Cc: Alan Cox Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 79afecfaabbe42e2a8a7e28880517f1721f2f3a7 Author: Aneesh Kumar Date: Mon May 15 09:44:36 2006 -0700 [PATCH] Fix typos in Documentation/memory-barriers.txt Fix some typos in Documentation/memory-barriers.txt Signed-off-by: Aneesh Kumar K.V Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bfe2e9349f318883c036607c64b6205d573a28ff Author: Alexey Dobriyan Date: Mon May 15 09:44:35 2006 -0700 [PATCH] gigaset: endian fix Signed-off-by: Alexey Dobriyan Cc: Hansjoerg Lipp Cc: Tilman Schmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b2d596d8e08099b47e0a75aa4b7f82aae780e851 Author: Pavel Machek Date: Mon May 15 09:44:34 2006 -0700 [PATCH] fix hotplug kconfig help HOTPLUG_CPU entry says "Say Y..." then "Say N.". Slightly ugly, so I fixed it up, and added remark about suspend on SMP as a bonus. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ce007ea59729d627f62bb5fa8c1a81e25653a0ad Author: Carl-Daniel Hailfinger Date: Mon May 15 09:44:33 2006 -0700 [PATCH] smbus unhiding kills thermal management Do not enable the SMBus device on Asus boards if suspend is used. We do not reenable the device on resume, leading to all sorts of undesirable effects, the worst being a total fan failure after resume on Samsung P35 laptop. Signed-off-by: Carl-Daniel Hailfinger Signed-off-by: Pavel Machek Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eee391a66d774e644bf3cbb35403562e09d88bb2 Author: Andrew Morton Date: Mon May 15 09:44:30 2006 -0700 [PATCH] revert "vfs: propagate mnt_flags into do_loopback/vfsmount" Revert commit f6422f17d3a480f21917a3895e2a46b968f56a08, due to Valdis.Kletnieks@vt.edu wrote: > > There seems to have been a bug introduced in this changeset: > > Am running 2.6.17-rc3-mm1. When this changeset is applied, 'mount --bind' > misbehaves: > > > # mkdir /foo > > # mount -t tmpfs -o rw,nosuid,nodev,noexec,noatime,nodiratime none /foo > > # mkdir /foo/bar > > # mount --bind /foo/bar /foo > > # tail -2 /proc/mounts > > none /foo tmpfs rw,nosuid,nodev,noexec,noatime,nodiratime 0 0 > > none /foo tmpfs rw 0 0 > > Reverting this changeset causes both mounts to have the same options. > > (Thanks to Stephen Smalley for tracking down the changeset...) > Cc: Herbert Poetzl Cc: Christoph Hellwig Cc: Cc: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be6e028b6422878df2e799a74609a03a553c7dad Author: Andy Whitcroft Date: Mon May 15 09:44:29 2006 -0700 [PATCH] root mount failure: emit filesystems attempted When we fail to mount from a valid root device list out the filesystems we have tried to mount it with. This gives the user vital diagnostics as to what is missing from their kernel. For example in the fragment below the kernel does not have CRAMFS compiled into the kernel and yet appears to recognise it at the RAMDISK detect stage. Later the mount fails as we don't have the filesystem. RAMDISK: cramfs filesystem found at block 0 RAMDISK: Loading 1604KiB [1 disk] into ram disk... done. XFS: bad magic number XFS: SB validate failed No filesystem could mount root, tried: reiserfs ext3 ext2 msdos vfat iso9660 jfs xfs Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1) Signed-off-by: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3835a9bd07778d87dea37fbf190f70883515e8fc Author: Alexey Dobriyan Date: Mon May 15 09:44:27 2006 -0700 [PATCH] fs/compat.c: fix 'if (a |= b )' typo Mentioned by Mark Armbrust somewhere on Usenet. Signed-off-by: Alexey Dobriyan Cc: David Woodhouse Cc: Ulrich Drepper Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb53a76116a8af13ee2581c85c02fe40e0c1a599 Author: Daniel Walker Date: Mon May 15 09:44:27 2006 -0700 [PATCH] tpm_register_hardware gcc 4.1 warning fix drivers/char/tpm/tpm.c: In function 'tpm_register_hardware': drivers/char/tpm/tpm.c:1157: warning: assignment from incompatible pointer type Signed-off-by: Daniel Walker Acked-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 655fdeab809a5612b0eab6aee873b00d26404ca7 Author: Alan Cox Date: Mon May 15 09:44:26 2006 -0700 [PATCH] Final rio polish Signed-off-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2a7362f52a17e8dbeab57c00c3c45fcfeb0dff54 Author: Kylene Jo Hall Date: Mon May 15 09:44:25 2006 -0700 [PATCH] tpm: fix constant Fix the constant used for the base address when it cannot be determined from ACPI. It was off by one order of magnitude. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 64471ebe534dc6cedd72849b2324b52cb5249eb9 Author: Benjamin LaHaise Date: Mon May 15 09:44:24 2006 -0700 [PATCH] Add Core Solo and Core Duo support to oprofile Add support to oprofile for the Intel Core Solo and Core Duo processors. See also the patch to add support to oprofile-0.9.1-8.1.1 at http://www.kvack.org/~bcrl/patches/oprofile/oprofile-core-0.9.1.diff . Signed-off-by: Benjamin LaHaise Cc: Philippe Elie Cc: John Levon Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e6333fd4ddf7a583480017f535b9ea53c116ab81 Author: Hua Zhong Date: Mon May 15 09:44:22 2006 -0700 [PATCH] fix can_share_swap_page() when !CONFIG_SWAP can_share_swap_page() is used to check if the page has the last reference. This avoids allocating a new page for COW if it's the last page. However, if CONFIG_SWAP is not set, can_share_swap_page() is defined as 0, thus always causes a copy for the last COW page. The below simple patch fixes it. Signed-off-by: Hua Zhong Cc: David Howells Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41e5a6ac80c600e1f8bda0a4871f0b797e097d78 Author: Latchesar Ionkov Date: Mon May 15 09:44:21 2006 -0700 [PATCH] v9fs: signal handling fixes Multiple races can happen when v9fs is interrupted by a signal and Tflush message is sent to the server. After v9fs sends Tflush it doesn't wait until it receives Rflush, and possibly the response of the original message. This behavior may confuse v9fs what fids are allocated by the file server. This patch fixes the races and the fid allocation. Signed-off-by: Latchesar Ionkov Cc: Eric Van Hensbergen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 343f1fe6f2e3fb4912db241e639b0721c2e14f2e Author: Latchesar Ionkov Date: Mon May 15 09:44:18 2006 -0700 [PATCH] v9fs: Twalk memory leak v9fs leaks memory if the file server responds with Rerror to a Twalk message. The patch fixes the leak. Signed-off-by: Latchesar Ionkov Cc: Eric Van Hensbergen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3dc7b82ea7649356bf027fba50c16ca50cec31e2 Author: Richard Purdie Date: Mon May 15 09:44:17 2006 -0700 [PATCH] LED: Fix sysfs store function error handling Fix the error handling of some LED _store functions. This corrects them to return -EINVAL if the value is not numeric with an optional byte of trailing whitespace. Signed-off-by: Richard Purdie Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 263de9b582b0f9b6ad5a0651b7df884fe80d6c3c Author: Richard Purdie Date: Mon May 15 09:44:16 2006 -0700 [PATCH] LED: Add maintainer entry for the LED subsystem Add a MAINTAINERS entry for the LED subsystem. Signed-off-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68673afd443c5eeb4cebfb9026e3675f43d79f2b Author: Richard Purdie Date: Mon May 15 09:44:15 2006 -0700 [PATCH] Backlight/LCD Class: Fix sysfs _store error handling The backlight and LCD class _store functions currently accept values like "34 some random strings" without error. This corrects them to return -EINVAL if the value is not numeric with an optional byte of trailing whitespace. Signed-off-by: Richard Purdie Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8d2e7d95229db9999682113bfac40b49978f212 Author: Richard Purdie Date: Mon May 15 09:44:14 2006 -0700 [PATCH] LED: Improve Kconfig information Improve the NEW_LEDS Kconfig information to say what it does as well as what it doesn't. Signed-off-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39d24e64263cd3211705d3b61ea4171c65030921 Author: Mike Kravetz Date: Mon May 15 09:44:13 2006 -0700 [PATCH] add slab_is_available() routine for boot code slab_is_available() indicates slab based allocators are available for use. SPARSEMEM code needs to know this as it can be called at various times during the boot process. Signed-off-by: Mike Kravetz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48564e628bd7662d7a0b3ac81c41cd0e4cc36dae Author: Jan Niehusmann Date: Mon May 15 09:44:12 2006 -0700 [PATCH] smbfs: Fix slab corruption in samba error path Yesterday, I got the following error with 2.6.16.13 during a file copy from a smb filesystem over a wireless link. I guess there was some error on the wireless link, which in turn caused an error condition for the smb filesystem. In the log, smb_file_read reports error=4294966784 (0xfffffe00), which also shows up in the slab dumps, and also is -ERESTARTSYS. Error code 27499 corresponds to 0x6b6b, so the rq_errno field seems to be the only one being set after freeing the slab. In smb_add_request (which is the only place in smbfs where I found ERESTARTSYS), I found the following: if (!timeleft || signal_pending(current)) { /* * On timeout or on interrupt we want to try and remove the * request from the recvq/xmitq. */ smb_lock_server(server); if (!(req->rq_flags & SMB_REQ_RECEIVED)) { list_del_init(&req->rq_queue); smb_rput(req); } smb_unlock_server(server); } [...] if (signal_pending(current)) req->rq_errno = -ERESTARTSYS; I guess that some codepath like smbiod_flush() caused the request to be removed from the queue, and smb_rput(req) be called, without SMB_REQ_RECEIVED being set. This violates an asumption made by the quoted code. Then, the above code calls smb_rput(req) again, the req gets freed, and req->rq_errno = -ERESTARTSYS writes into the already freed slab. As list_del_init doesn't cause an error if called multiple times, that does cause the observed behaviour (freed slab with rq_errno=-ERESTARTSYS). If this observation is correct, the following patch should fix it. I wonder why the smb code uses list_del_init everywhere - using list_del instead would catch such situations by poisoning the next and prev pointers. May 4 23:29:21 knautsch kernel: [17180085.456000] ipw2200: Firmware error detected. Restarting. May 4 23:29:21 knautsch kernel: [17180085.456000] ipw2200: Sysfs 'error' log captured. May 4 23:33:02 knautsch kernel: [17180306.316000] ipw2200: Firmware error detected. Restarting. May 4 23:33:02 knautsch kernel: [17180306.316000] ipw2200: Sysfs 'error' log already exists. May 4 23:33:02 knautsch kernel: [17180306.968000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:34:18 knautsch kernel: [17180383.256000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:34:18 knautsch kernel: [17180383.284000] SMB connection re-established (-5) May 4 23:37:19 knautsch kernel: [17180563.956000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:40:09 knautsch kernel: [17180733.636000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:40:26 knautsch kernel: [17180750.700000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:43:02 knautsch kernel: [17180907.304000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:43:08 knautsch kernel: [17180912.324000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:43:34 knautsch kernel: [17180938.416000] smb_errno: class Unknown, code 27499 from command 0x6b May 4 23:43:34 knautsch kernel: [17180938.416000] Slab corruption: start=c4ebe09c, len=244 May 4 23:43:34 knautsch kernel: [17180938.416000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:43:34 knautsch kernel: [17180938.416000] Last user: [](smb_rput+0x53/0x90 [smbfs]) May 4 23:43:34 knautsch kernel: [17180938.416000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b May 4 23:43:34 knautsch kernel: [17180938.416000] 0f0: 00 fe ff ff May 4 23:43:34 knautsch kernel: [17180938.416000] Next obj: start=c4ebe19c, len=244 May 4 23:43:34 knautsch kernel: [17180938.416000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:43:34 knautsch kernel: [17180938.416000] Last user: [<00000000>](_stext+0x3feffde0/0x30) May 4 23:43:34 knautsch kernel: [17180938.416000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:43:34 knautsch kernel: [17180938.416000] 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:43:34 knautsch kernel: [17180938.460000] SMB connection re-established (-5) May 4 23:43:42 knautsch kernel: [17180946.292000] ipw2200: Firmware error detected. Restarting. May 4 23:43:42 knautsch kernel: [17180946.292000] ipw2200: Sysfs 'error' log already exists. May 4 23:45:04 knautsch kernel: [17181028.752000] ipw2200: Firmware error detected. Restarting. May 4 23:45:04 knautsch kernel: [17181028.752000] ipw2200: Sysfs 'error' log already exists. May 4 23:45:05 knautsch kernel: [17181029.868000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:45:36 knautsch kernel: [17181060.984000] smb_errno: class Unknown, code 27499 from command 0x6b May 4 23:45:36 knautsch kernel: [17181060.984000] Slab corruption: start=c4ebe09c, len=244 May 4 23:45:36 knautsch kernel: [17181060.984000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:45:36 knautsch kernel: [17181060.984000] Last user: [](smb_rput+0x53/0x90 [smbfs]) May 4 23:45:36 knautsch kernel: [17181060.984000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b May 4 23:45:36 knautsch kernel: [17181060.984000] 0f0: 00 fe ff ff May 4 23:45:36 knautsch kernel: [17181060.984000] Next obj: start=c4ebe19c, len=244 May 4 23:45:36 knautsch kernel: [17181060.984000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:45:36 knautsch kernel: [17181060.984000] Last user: [<00000000>](_stext+0x3feffde0/0x30) May 4 23:45:36 knautsch kernel: [17181060.984000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:45:36 knautsch kernel: [17181060.984000] 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:45:36 knautsch kernel: [17181061.024000] SMB connection re-established (-5) May 4 23:46:17 knautsch kernel: [17181102.132000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:47:46 knautsch kernel: [17181190.468000] smb_errno: class Unknown, code 27499 from command 0x6b May 4 23:47:46 knautsch kernel: [17181190.468000] Slab corruption: start=c4ebe09c, len=244 May 4 23:47:46 knautsch kernel: [17181190.468000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:47:46 knautsch kernel: [17181190.468000] Last user: [](smb_rput+0x53/0x90 [smbfs]) May 4 23:47:46 knautsch kernel: [17181190.468000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6a 6b 6b 6b 6b 6b 6b 6b May 4 23:47:46 knautsch kernel: [17181190.468000] 0f0: 00 fe ff ff May 4 23:47:46 knautsch kernel: [17181190.468000] Next obj: start=c4ebe19c, len=244 May 4 23:47:46 knautsch kernel: [17181190.468000] Redzone: 0x5a2cf071/0x5a2cf071. May 4 23:47:46 knautsch kernel: [17181190.468000] Last user: [<00000000>](_stext+0x3feffde0/0x30) May 4 23:47:46 knautsch kernel: [17181190.468000] 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:47:46 knautsch kernel: [17181190.468000] 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b May 4 23:47:46 knautsch kernel: [17181190.492000] SMB connection re-established (-5) May 4 23:49:20 knautsch kernel: [17181284.828000] smb_file_read: //some_file validation failed, error=4294966784 May 4 23:49:39 knautsch kernel: [17181303.896000] smb_file_read: //some_file validation failed, error=4294966784 Signed-off-by: Jan Niehusmann Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2e367a82fc2da335455984a7722c721dd3fa782b Author: Marcelo Tosatti Date: Mon May 15 09:44:08 2006 -0700 [PATCH] Marcelo has moved Signed-off-by: Marcelo Tosatti Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e376613899076396d0c97de67ad072587267370 Author: Trent Piepho Date: Mon May 15 09:44:06 2006 -0700 [PATCH] symbol_put_addr() locks kernel Even since a previous patch: Fix race between CONFIG_DEBUG_SLABALLOC and modules Sun, 27 Jun 2004 17:55:19 +0000 (17:55 +0000) http://www.kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=92b3db26d31cf21b70e3c1eadc56c179506d8fbe The function symbol_put_addr() will deadlock the kernel. symbol_put_addr() would acquire modlist_lock, then while holding the lock call two functions kernel_text_address() and module_text_address() which also try to acquire the same lock. This deadlocks the kernel of course. This patch changes symbol_put_addr() to not acquire the modlist_lock, it doesn't need it since it never looks at the module list directly. Also, it now uses core_kernel_text() instead of kernel_text_address(). The latter has an additional check for addr inside a module, but we don't need to do that since we call module_text_address() (the same function kernel_text_address uses) ourselves. Signed-off-by: Trent Piepho Cc: Zwane Mwaikambo Acked-by: Rusty Russell Cc: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0159677857c5ada0a0a2c03a4dd59312382b73d0 Author: Martin Schwidefsky Date: Mon May 15 09:44:05 2006 -0700 [PATCH] s390: add vmsplice system call Add new vmsplice system call and add missing __NR_xxx defines for sys_set_robust_list, sys_get_robust_list, sys_splice, sys_sync_file_range and sys_tee. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a050da45b5d855b48b057446847ff1542977b52 Author: Mark Huang Date: Mon May 15 09:44:03 2006 -0700 [PATCH] initramfs: fix CPIO hardlink check Copy the filenames of hardlinks when inserting them into the hash, since the "name" pointer may point to scratch space (name_buf). Not doing so results in corruption if the scratch space is later overwritten: the wrong file may be hardlinked, or, if the scratch space contains garbage, the link will fail and a 0-byte file will be created instead. Signed-off-by: Mark Huang Acked-by: Al Viro Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 698d070746770aaaec78ab4ffa3ab1f1d5c6abe8 Author: Greg Smith Date: Mon May 15 09:44:02 2006 -0700 [PATCH] s390: lcs incorrect test While debugging why our LCS emulator is having some problems I noticed the following weirdness in drivers/s390/net/lcs.c routine lcs_irq. The `if' statement is always true since SCHN_STAT_PCI is defined as 0x80. Cc: Martin Schwidefsky Cc: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac924c6034d9095f95ee889f7e31bbb9145da0c2 Author: Andrew Morton Date: Mon May 15 09:43:59 2006 -0700 [PATCH] setup_per_zone_pages_min() overflow fix As pointed out in http://bugzilla.kernel.org/show_bug.cgi?id=6490, this function can experience overflows on 32-bit machines, causing our response to changed values of min_free_kbytes to go whacky. Fixing it efficiently is all too hard, so fix it with 64-bit math instead. Cc: Ake Sandgren Cc: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5afdbd6e84c7fbdaa7cfde4cbee0d3a5f4f56da2 Author: Heiko Carstens Date: Mon May 15 09:43:59 2006 -0700 [PATCH] s390: exploit rcu_needs_cpu() interface Exploit rcu_needs_cpu() interface to keep the cpu 'ticking' if necessary. Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 986733e01d258c26107f1da9d8d47c718349ad2f Author: Heiko Carstens Date: Mon May 15 09:43:58 2006 -0700 [PATCH] RCU: introduce rcu_needs_cpu() interface With "Paul E. McKenney" Introduce rcu_needs_cpu() interface. This can be used to tell if there will be a new rcu batch on a cpu soon by looking at the curlist pointer. This can be used to avoid to enter a tickless idle state where the cpu would miss that a new batch is ready when rcu_start_batch would be called on a different cpu. Signed-off-by: Heiko Carstens Cc: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b7c8108273bed41a2fc04533cc9f2026ff38c8e Author: Olaf Kirch Date: Mon May 15 09:43:57 2006 -0700 [PATCH] smbfs chroot issue (CVE-2006-1864) Mark Moseley reported that a chroot environment on a SMB share can be left via "cd ..\\". Similar to CVE-2006-1863 issue with cifs, this fix is for smbfs. Steven French wrote: Looks fine to me. This should catch the slash on lookup or equivalent, which will be all obvious paths of interest. Signed-off-by: Chris Wright Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a7b862f663d81858531dfccc0537bc9d8a2a4121 Author: Chris Wedgwood Date: Mon May 15 09:43:55 2006 -0700 [PATCH] VIA quirk fixup, additional PCI IDs An earlier commit (75cf7456dd87335f574dcd53c4ae616a2ad71a11) changed an overly-zealous PCI quirk to only poke those VIA devices that need it. However, some PCI devices were not included in what I hope is now the full list. Consequently we're failing to run the quirk on all machines which need it, causing IRQ routing failures. This should I hope correct this. Thanks to Masoud Sharbiani for pointing this out and testing the fix. Signed-off-by: Chris Wedgwood Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 73d58588091e81e5ee4266488e2fb09a410f1512 Author: Benjamin Herrenschmidt Date: Mon May 15 09:43:53 2006 -0700 [PATCH] pcmcia Oopses fixes Fix some NULL dereferences in the pcmcia code when using old userland tools. Signed-off-by: Benjamin Herrenschmidt Acked-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94585136606e0598a93ec145d9a899c8ec9b2208 Author: Kylene Jo Hall Date: Mon May 15 09:43:53 2006 -0700 [PATCH] tpm: update module dependencies The TIS driver is dependent upon information from the ACPI table for device discovery thus it compiles but does no actual work without this dependency. Signed-off-by: Kylene Hall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90d5ede5985f3b172cc3ccd89bf8c52a209088a5 Author: Stefan Schweizer Date: Mon May 15 09:43:52 2006 -0700 [PATCH] Fix capi reload by unregistering the correct major I am having the bug FATAL: Error inserting capi ([..]/capi.ko): Device or resource busy when I try to reload capi after loading it. in dmesg: capi20: unable to get major 68 Fix the issue which is caused by setting the major to zero when registering the chrdev succeeded. (akpm: this means that we can again not use `major=0' (dynamic major allocation) for this driver). Cc: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5370553952a9a414860d878b67c49eff11313bd Author: Ian Kent Date: Mon May 15 09:43:51 2006 -0700 [PATCH] autofs4: NFY_NONE wait race fix This patch fixes two problems. First, the comparison of entries in the waitq.c was incorrect. Second, the NFY_NONE check was incorrect. The test of whether the dentry is mounted if ineffective, for example, if an expire fails then we could wait forever on a non existant expire. The bug was identified by Jeff Moyer. The patch changes autofs4 to wait on expires only as this is all that's needed. If there is no existing wait when autofs4_wait is call with a type of NFY_NONE it delays until either a wait appears or the the expire flag is cleared. Signed-off-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6aff5cb8ec270db569800b1bb59bd20003a76f07 Author: Adrian Bunk Date: Mon May 15 09:43:50 2006 -0700 [PATCH] fs/open.c: unexport sys_openat Remove the unused EXPORT_SYMBOL_GPL(sys_openat). Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0cccca06f9870eb6daa89357b8a99ad041865553 Author: Serge E. Hallyn Date: Mon May 15 09:43:48 2006 -0700 [PATCH] selinux: check for failed kmalloc in security_sid_to_context() Check for NULL kmalloc return value before writing to it. Signed-off-by: Serge E. Hallyn Acked-by: James Morris Cc: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9be2f7c38e0bd64e8a0f74ea68df1e73e2ddfcc3 Author: Linus Torvalds Date: Sat May 13 08:01:23 2006 -0700 Revert "[PATCH] i386: export: memory more than 4G through /proc/iomem" This reverts commit 10dbe196a8da6b3196881269c6639c0ec11c36cb. The resource struct is still 32-bit, so trying to save a 64-bit memory size there obviously won't work. When we merge the 64-bit resource series, we can re-enable this. Thanks to Sachin Sant and Maneesh Soni for debugging Cc: Maneesh Soni Cc: Sachin Sant Cc: Russell King Cc: Sharyathi Nagesh Cc: Arjan van de Ven Cc: Vivek Goyal Signed-off-by: Linus Torvalds commit 032ebf2620ef99a4fedaa0f77dc2272095ac5863 Author: Linus Torvalds Date: Fri May 12 18:42:09 2006 -0700 Alternative fix for MMC oops on unmount after removal Make sure to clear the driverfs_dev pointer when we do del_gendisk() (on disk removal), so that other users that may still have a ref to the disk won't try to use the stale pointer. Also move the KOBJ_REMOVE uevent handler up, so that the uevent still has access to the driverfs_dev data. This all should hopefully fix the problems with MMC umounts after device removals that caused commit 56cf6504fc1c0c221b82cebc16a444b684140fb7 and its reversal (1a2acc9e9214699a99389e323e6686e9e0e2ca67). Original problem reported by Todd Blumer and others. Acked-by: Greg KH Cc: Russell King Cc: James Bottomley Cc: Erik Mouw Cc: Andrew Vasquez Cc: Todd Blumer Signed-off-by: Linus Torvalds commit 8a2ae70a9b4dc88c83b4644c58d06d74f2cb70c9 Author: Ingo Molnar Date: Tue May 2 09:00:31 2006 -0300 V4L/DVB (3965): Fix CONFIG_VIDEO_VIVI=y build bug CONFIG_VIDEO_VIVI depends on CONFIG_VIDEO_BUF. Signed-off-by: Ingo Molnar Signed-off-by: Mauro Carvalho Chehab commit 68a26aecb3829d013f612def3c8995efdbad3306 Author: Adrian Bunk Date: Fri Apr 28 10:48:41 2006 -0300 V4L/DVB (3964): Bt8xx/bttv-cards.c: fix off-by-one errors This patch fixes two off-by-one errors spotted by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Mauro Carvalho Chehab commit 1095136dee95d27d27cebc52bd502f7facee8600 Author: Andrew Morton Date: Thu Apr 27 10:10:58 2006 -0300 V4L/DVB (3914): Vivi build fix drivers/media/video/vivi.c: In function `vivi_map_sg': drivers/media/video/vivi.c:799: error: `DMA_NONE' undeclared (first use in this function) drivers/media/video/vivi.c:799: error: (Each undeclared identifier is reported only once drivers/media/video/vivi.c:799: error: for each function it appears in.) Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 765bf9770fda950e6615451ad1a4b8866bda7dfa Author: Andrew Morton Date: Thu Apr 27 10:09:27 2006 -0300 V4L/DVB (3912): Sparc32 vivi fix Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit ba5f0a4e15e736d99d698ce498bd6f1f16d014cf Author: Michael Krufky Date: Sun Apr 23 01:55:38 2006 -0300 V4L/DVB (3832): Get_dvb_firmware: download nxt2002 firmware from new driver location BBTI has updated their driver, and removed the old one from their website. This patch updates the get_dvb_firmware script to download the firmware from the new driver location. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit dd31d5ac7345b2c728bf7eb37b06383776174232 Author: Rusty Scott Date: Sat Apr 22 16:15:07 2006 -0300 V4L/DVB (3829): Fix frequency values in the ranges structures of the LG TDVS H06xF tuners Frequency range values in the current driver for the LG TDVS H06xF tuners appear to have been a transposing of the 5 in the mid range 160-455 instead of 165-450. This patch corrects the pll programming for these tuners as per the datasheet. Signed-off-by: Rusty Scott Signed-off-by: Mac Michaels Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 7bbbc0a28e6cfcef66e2180206257b959dad2006 Author: Mikhail Gusarov Date: Thu Apr 20 13:18:50 2006 -0300 V4L/DVB (3826): Saa7134: Missing 'break' in Terratec Cinergy 400 TV initialization There is a missing break in card initialization function. Might screw up initialization of Terratec Cinergy 400 TV. Signed-off-by: Mikhail Gusarov Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 7d16eaa3d0d41a6e871e5c82720bcd006b202d55 Author: Hans Verkuil Date: Sun Apr 23 05:54:56 2006 -0300 V4L/DVB (3825): Remove broken 'fast firmware load' from cx25840. The fast firmware load hack in cx25840 uses private data. In fact, it breaks pvrusb2 and doesn't work at all with ivtv. It is a unsafe implementation and so it is removed. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 5691c8473936508c51639b6ff8467e55d8b129c1 Author: Michael Krufky Date: Wed Apr 19 20:40:01 2006 -0300 V4L/DVB (3819): Cxusb-bluebird: bug-fix: power down corrupts frontend This patch prevents a bug where the frontend is unable to tune after waking from powered down state. Now, the device remains powered on until it is disconnected, just like the windows driver. It seems that the bluebird firmware is unable to successfully handle tuning after a powered down state. This patch fixes all of the FusionHDTV Bluebird USB2 devices. The Medion MD95700 will still behave as before, since it was unaffected by this bug. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 7157e2b6ff6fdd24d7e54d9856aa24ea88527ca9 Author: Hans Verkuil Date: Sun Apr 16 17:17:42 2006 -0300 V4L/DVB (3813): Add support for TCL M2523_5N_E tuner. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 70047f9cca231126981f360c79cde98ea30410b2 Author: Yeasah Pell Date: Thu Apr 13 17:26:22 2006 -0300 V4L/DVB (3804): Tweak bandselect setup fox cx24123 *) Allow forcing the bandselect value with a module parameter to facilitate determining the correct bandselect frequencies. *) Changes the bandselect frequency thresholds based on experiments with the above parameter in conjunction with the values in the spec. Signed-off-by: Yeasah Pell Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 0e4558ab4a89a127e0de36746552da9353e35f10 Author: Yeasah Pell Date: Thu Apr 13 17:24:13 2006 -0300 V4L/DVB (3803): Various correctness fixes to tuning. *) Sets an additional tuner parameter (demodulator sample gain) that wasn't being set before. *) Removes the low symbol rate tuner parameter tweaks in the previous patch -- it appears those tweaks are not necessary with the demodulator sample gain set correctly. *) Cleanup and document the demodulator register initialization sequence. *) Change set_fec routine to disable FEC auto scan when a specific code rate is selected. *) Remove error message when reported FEC is invalid (which happens sometimes when the card has no signal) Signed-off-by: Yeasah Pell Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit dce1dfc2a5736bfc82df5d3fd6396022c7bbbbd8 Author: Yeasah Pell Date: Thu Apr 13 11:40:59 2006 -0300 V4L/DVB (3797): Always wait for diseqc queue to become ready before transmitting a diseqc message The previous DISEQC code didn't wait, so it was unreliable Signed-off-by: Yeasah Pell Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit caf970e09c42843eb3b8456fc0e815f9b5385873 Author: Mauro Carvalho Chehab Date: Thu Apr 13 11:29:13 2006 -0300 V4L/DVB (3796): Add several debug messages to cx24123 code Current debug messages at cx24123 are next to useless, since they don't print the values sent/read to registers. With this patch, debug=1 will show comprehensive messages. debug=2 will show also read/write operations at I2C bus. Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Andrew de Quincey commit a74b51fca9d9b6774413d700ade1e9ae1f0c0e75 Author: Vadim Catana Date: Thu Apr 13 10:19:52 2006 -0300 V4L/DVB (3795): Fix for CX24123 & low symbol rates - fixed the reception of channels with low symbol rates. ( The VGA1 and VGA2 offsets recommended by cx24109 docs for symbol rates from 1 to 5 MSps do not work. I changed them to values found experimentally. The charge pump current and FILTUNE voltage are now set to values recommended in the docs. This improves reception for symbol rates < 15 MSps. The values written in the SYSSymbolRate registers are calculated with better precision. ) - fixed the cx24123_get_fec() function. It was returning the values for DCII mode. - removed some unused variables Signed-off-by: Vadim Catana Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 3a63fc4bfd8579bda1f6a03b3fcb792f59cb15f8 Author: Michael Krufky Date: Tue Apr 11 18:16:22 2006 -0300 V4L/DVB (3792): Kbuild: DVB_BT8XX must select DVB_ZL10353 Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 7c908fbb0139fa1080412d0590189abfe2df87eb Author: Eric Sesterhenn Date: Tue Apr 11 18:19:33 2006 -0300 V4L/DVB (3790): Use after free in drivers/media/video/em28xx/em28xx-video.c In several places we use dev->devno right after we kfree() dev. This fixes coverity bug id #1065 Signed-off-by: Eric Sesterhenn Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit b37492be25be5ff0551bff8b479e783498ebe838 Author: Mauro Carvalho Chehab Date: Tue Apr 11 18:07:49 2006 -0300 V4L/DVB (3788): Fix compilation with V4L1_COMPAT Signed-off-by: Mauro Carvalho Chehab commit 4fff598fc700a9f2089a3351a54e049d79faa631 Author: Mauro Carvalho Chehab Date: Sun Apr 9 16:20:19 2006 -0300 V4L/DVB (3782): Removed uneeded stuff from pwc Makefile Signed-off-by: Mauro Carvalho Chehab commit c1d1ea9e0f83a89d7afa1c84fac8312e2e08c85e Author: Mauro Carvalho Chehab Date: Sun Apr 9 15:51:18 2006 -0300 V4L/DVB (3775): Add VIVI Kconfig stuff Signed-off-by: Mauro Carvalho Chehab commit cd41e28e2d0f198ad56840bf8ba13cb41b129bab Author: Mauro Carvalho Chehab Date: Sun Apr 9 15:43:41 2006 -0300 V4L/DVB (3774): Create V4L1 config options V4L1 API is depreciated and should be removed soon from kernel. This patch adds two new options, one to disable V4L1 drivers, and another to disable V4L1 compat module. This way, it would be easy to check what still depends on V4L1 stuff, allowing also to test if app works fine with V4L2 only support. Signed-off-by: Mauro Carvalho Chehab commit ea76ce526ec1af3e07f3dd9107ca93f0c82fc9c9 Author: Jose Alberto Reguero Date: Tue Apr 11 10:19:25 2006 -0300 V4L/DVB (3767): Pvr350 tv out (saa7127) Witout this patch tv out don't work properly with my pvr350 card. Signed-off-by: Jose Alberto Reguero Signed-off-by: Mauro Carvalho Chehab commit bba3ad76a82eb458d31b136fa2414216e20c99cc Author: Duncan Sands Date: Tue Apr 11 10:18:57 2006 -0300 V4L/DVB (3766): Correct buffer size calculations in cx88-core.c The computation in cx88_risc_buffer suffers from the mistake: a non-zero padding value can cause more page borders to be crossed, leading to big buffer over-runs. This patch changes the additive constant from 3 + 4 to 4 It also changees the constant in cx88_risc_databuffer from 3 + 4 to 2, because 2 dwords are the correct vaule. Signed-off-by: Duncan Sands Signed-off-by: Mauro Carvalho Chehab commit 9175b8544ff7b73b158df370acc1d828b28b80b7 Author: Trent Piepho Date: Mon Apr 10 09:40:37 2006 -0300 V4L/DVB (3763): Bug fix: Wrong tuner was used pcHDTV HD-3000 card It looks like the HD3000 was prototyped with the 7610 tuner when the driver was developed, but the cards appear to have always shipped with the 7612 tuner and the driver was never adjusted for it. The definition needs to be corrected. - The HD-3000 was prototyped with a Thomson DTT7610, but production versions used a DTT7612 tuner. - This patch changes both dvb-pll settings and V4L tuner type. Signed-off-by: Trent Piepho Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit f1de3e7c5c9d8e65937addce83b42331bdad15a1 Author: Mauro Carvalho Chehab Date: Fri Apr 7 18:50:09 2006 -0300 V4L/DVB (3745): Fix a bug at pluto2 Makefile When pluto2 were selected, all other module dependencies were just discarded. Signed-off-by: Mauro Carvalho Chehab commit a064fad337e27cfe74c04509e88ef4d2c9138ec2 Author: Andrew de Quincey Date: Thu Apr 6 17:05:46 2006 -0300 V4L/DVB (3743): Fix some more potential oopses Spotted a couple more places where it fails to check if dvb_register_adapter() fails. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 6445401673fe486ba15a39370d41100df6d73b1f Author: Andrew de Quincey Date: Thu Apr 6 14:32:23 2006 -0300 V4L/DVB (3742): Set tone/voltage again if the frontend was reinitialised Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 71a8dffb07ae40af87b2f7b93dcd5810e2c558bf Author: Andrew de Quincey Date: Thu Apr 6 09:42:46 2006 -0300 V4L/DVB (3740): Fix oops in budget-av with CI Now that the CI code reinitialises the frontend, need to move the CI initialisation to after the frontend init in order to ensure the frontend is always in a good state. Fixes an oops caused by the frontend being NULL as well. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 7a766f9ddd74b50d6069f054a3004ece0439f5c1 Author: Sergey Vlasov Date: Fri Apr 7 10:04:56 2006 -0300 V4L/DVB (3738): Saa7134: Fix oops with disable_ir=1 When disable_ir=1 parameter is used, or when saa7134_input_init1() fails for any other reason, dev->remote will remain NULL, and the driver will oops in saa7134_hwinit2(). Therefore dev->remote must be checked before dereferencing. Signed-off-by: Sergey Vlasov Signed-off-by: Mauro Carvalho Chehab commit a7286033f951ebc78527e63f335516ea2f95e142 Author: Michael Krufky Date: Tue Apr 4 22:23:04 2006 -0300 V4L/DVB (3731): Kbuild: drivers/media/video/bt8xx: remove $(src) from include path - replaced '$(src)/..' with 'drivers/media/video' Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 96b194c12e1206e5cdccf55ea71bb38ce1124bd9 Author: Andrew de Quincey Date: Wed Apr 5 14:09:45 2006 -0300 V4L/DVB (3726): Fix TT budget-ci 1.1 CI slots It turns out the firmware on the TT budget-ci 1.1 slots doesn't generate interrupts. This patch adds support for this using polling mode on these slots. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit f47f4763cde162656448fcd1ada9d5e8101a00d2 Author: Andrew de Quincey Date: Tue Apr 4 09:41:47 2006 -0300 V4L/DVB (3725): Fix mutex in dvb_register_device to work. This mutex is meant to stop two devices getting the same ID. dvbdev_get_free_id() scans the list of already allocated devices to find a free id. Unfortunately, since the mutex is unlocked before the card is added to the above list, it is still possible for two of them to get the same id. Its debatable whether this mutex lock is actually needed, but I'm unwilling to just remove it in case something does depend on it. Signed-off-by: Andrew de Quincey Signed-off-by: Mauro Carvalho Chehab commit 3203f94a25ea04b3052d22c7be9518538862d88f Author: Duncan Sands Date: Sun Apr 2 04:14:57 2006 -0300 V4L/DVB (3704): Fix some errors on bttv_risc_overlay There are tree mistakes on bttv_risc_overlay. 1) When skip_odd is true, the number of lines for which instructions are written is (height+1)/2, not height/2. 2) This occurs when clipping: the number of instruction bytes written can be as much as 8 + 12*nclips, not 8 + 8*nclips, as currently estimated. 3) Coverity check were wrong with nskips=0, since it means that it can clipped at most one line. Signed-off-by: Duncan Sands Signed-off-by: Mauro Carvalho Chehab commit 1b52fa98edd1c3e663ea4a06519e3d20976084a8 Author: Sean Hefty Date: Fri May 12 14:57:52 2006 -0700 IB: refcount race fixes Fix race condition during destruction calls to avoid possibility of accessing object after it has been freed. Instead of waking up a wait queue directly, which is susceptible to a race where the object is freed between the reference count going to 0 and the wake_up(), use a completion to wait in the function doing the freeing. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 6f4bb3d8205d943acafa2f536f37131777524b67 Author: Roland Dreier Date: Fri May 12 14:57:52 2006 -0700 IB/ipath: Properly terminate PCI ID table The ipath driver's table of PCI IDs needs a { 0, } entry at the end. This makes all of the device aliases visible to userspace so hotplug loads the module for all supported devices. Without the patch, modinfo ipath_core only shows: alias: pci:v00001FC1d0000000Dsv*sd*bc*sc*i* instead of the correct: alias: pci:v00001FC1d00000010sv*sd*bc*sc*i* alias: pci:v00001FC1d0000000Dsv*sd*bc*sc*i* Signed-off-by: Roland Dreier Signed-off-by: Bryan O'Sullivan commit bd89efc532fe41f867f848144cc8b42054ddf6f9 Author: Simon Kelley Date: Fri May 12 14:56:08 2006 -0700 [NEIGH]: Fix IP-over-ATM and ARP interaction. The classical IP over ATM code maintains its own IPv4 <-> ARP table, using the standard neighbour-table code. The neigh_table_init function adds this neighbour table to a linked list of all neighbor tables which is used by the functions neigh_delete() neigh_add() and neightbl_set(), all called by the netlink code. Once the ATM neighbour table is added to the list, there are two tables with family == AF_INET there, and ARP entries sent via netlink go into the first table with matching family. This is indeterminate and often wrong. To see the bug, on a kernel with CLIP enabled, create a standard IPv4 ARP entry by pinging an unused address on a local subnet. Then attempt to complete that entry by doing ip neigh replace lladdr nud reachable Looking at the ARP tables by using ip neigh show will reveal two ARP entries for the same address. One of these can be found in /proc/net/arp, and the other in /proc/net/atm/arp. This patch adds a new function, neigh_table_init_no_netlink() which does everything the neigh_table_init() does, except add the table to the netlink all-arp-tables chain. In addition neigh_table_init() has a check that all tables on the chain have a distinct address family. The init call in clip.c is changed to call neigh_table_init_no_netlink(). Since ATM ARP tables are rather more complicated than can currently be handled by the available rtattrs in the netlink protocol, no functionality is lost by this patch, and non-ATM ARP manipulation via netlink is rescued. A more complete solution would involve a rtattr for ATM ARP entries and some way for the netlink code to give neigh_add and friends more information than just address family with which to find the correct ARP table. [ I've changed the assertion checking in neigh_table_init() to not use BUG_ON() while holding neigh_tbl_lock. Instead we remember that we found an existing tbl with the same family, and after dropping the lock we'll give a diagnostic kernel log message and a stack dump. -DaveM ] Signed-off-by: Simon Kelley Signed-off-by: David S. Miller commit 586152560ae8df2a9babf1a8b667d7a145cb8208 Author: Martin Habets Date: Fri May 12 12:53:59 2006 -0700 [SPARC]: Fix warning on prom_getproperty in openprom.c Signed-off-by: Martin Habets Signed-off-by: David S. Miller commit ef34814426862c41c061520d4ac833be5914b5ba Author: Karsten Keil Date: Fri May 12 12:49:08 2006 -0700 [TG3]: ethtool always report port is TP. Even with fiber cards ethtool reports that the connected port is TP, the patch fix this. Signed-off-by: Karsten Keil Acked-by: Michael Chan Signed-off-by: David S. Miller commit 06a1be167ea77c436657587e26cd4d7d6401784c Author: David S. Miller Date: Fri May 12 12:45:50 2006 -0700 [SPARC]: Handle UNWIND_INFO properly. For sparc32 we need R_SPARC_UA32 relocation support, for sparc64 we need the handle R_SPARC_DISP32 relocations. Based upon reports and initial patch by Martin Habets. Signed-off-by: David S. Miller commit 1a2acc9e9214699a99389e323e6686e9e0e2ca67 Author: Linus Torvalds Date: Fri May 12 12:08:46 2006 -0700 Revert "[BLOCK] Fix oops on removal of SD/MMC card" This reverts commit 56cf6504fc1c0c221b82cebc16a444b684140fb7. Both Erik Mouw and Andrew Vasquez independently pinpointed this commit as causing problems, where the slab cache for a driver is never released (most obviously causing problems when immediately re-loading that driver, resulting in a "kmem_cache_create: duplicate cache " message, but it can also cause other trouble). James Bottomley dug into it, and reports: "OK, here's the scoop. The problem patch adds a get of driverfs_dev in add_disk(), but doesn't put it again until disk_release() (which occurs on final put_disk() of the gendisk). However, in SCSI, the driverfs_dev is the sdev_gendev. That means there's a reference held on sdev_gendev until final disk put. Unfortunately, we use the driver model driver_remove to trigger del_gendisk (which removes the gendisk from visibility and decrements the refcount), so we've introduced an unbreakable deadlock in the reference counting with this. I suggest simply reversing this patch at the moment. If Russell and Jens can tell me what they're trying to do I'll see if there's another way to do it." so hereby the patch gets reverted, waiting for a better fix. Cc: Jens Axboe Cc: Russell King Cc: James Bottomley Cc: Erik Mouw Cc: Andrew Vasquez Signed-off-by: Linus Torvalds commit df3fccb14ad02c5fabe095a104a0323c223f2833 Author: Greg Kroah-Hartman Date: Tue May 2 08:44:45 2006 +0200 [PATCH] USB: fix omninet driver bug I introduced this way back in 2.6.13 when adding the port lock logic. This device talks out through different "ports" all at the same time, so the lock logic was wrong, preventing any data from ever being sent properly. Thanks a lot to Bernhard Reiter for being patient and helping with debugging this. Cc: Bernhard Reiter Signed-off-by: Greg Kroah-Hartman commit 815ddc99dd8108908d14c699a37d0f5974da6def Author: Greg Kroah-Hartman Date: Fri May 12 11:05:29 2006 -0700 [PATCH] USB: add ark3116 usb to serial driver Based on Simon's original driver, with some minor code cleanups and tidying by me. Cc: Simon Schulz Signed-off-by: Greg Kroah-Hartman commit 71a84163ca6b4e36744978385e94150af32f9d75 Author: Luiz Fernando Capitulino Date: Thu May 11 22:34:24 2006 -0300 [PATCH] usbserial: Fixes leak in serial_open() error path. If serial_open() fails at the port assignment or mutex_lock_interruptible() is interrupted, the 'serial' object will never be freed. We should call kref_put() when those errors happens. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 704936a25bda9bb12e35bb222d5e3f26186dc279 Author: Luiz Fernando Capitulino Date: Thu May 11 22:34:17 2006 -0300 [PATCH] usbserial: Fixes use-after-free in serial_open(). If the device is disconnected while serial_open() is executing and either try_module_get() or the device specific open function fails, the kref_put() call in the 'bailout_kref_put' label will free the memory pointed out by 'port'. The subsequent dereferences in the 'bailout_kref_put' label will be invalid. The fix is just to assure kref_put() is called after any 'port' usage. Signed-off-by: Luiz Fernando N. Capitulino Signed-off-by: Greg Kroah-Hartman commit 16c23f7d88cbcce491f9370b2846fad66e8ef319 Author: Monty Date: Tue May 9 12:37:22 2006 -0700 [PATCH] USB: Emagic USB firmware loading fixes It's become apparent as machines get faster that the emagic kernel firmware loaders (based on the ezusb loader) have a reset race. a 400MHz TiBook never tripped it, but a 2GHz Pentium M seems to hit it about 30% of the time. The bug is seen as a hung USB box and the kernel error: drivers/usb/misc/emi62.c: emi62_load_firmware - error loading firmware: error = -110 The patch below inserts a delay after deasserting reset to allow the box to settle before a new command is issued. This affects only device startup. Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 332bbf613868a5d5938ad9fb7436b2beae72d53d Author: Olaf Hering Date: Fri May 5 11:07:21 2006 +0200 [PATCH] USB: add an IBM USB keyboard to the HID_QUIRK_NOGET blacklist After recent changes, the USB keyboard as shipped with IBM pSeries systems does not work anymore, unless the keyboard is replugged after reboot. Adding this model to the blacklist fixes it. Signed-off-by: Olaf Hering Signed-off-by: Greg Kroah-Hartman commit b68f7de02ae380ddb4e5e457e3fe945ddfd0aa08 Author: Ken Brush Date: Mon May 8 20:24:12 2006 -0500 [PATCH] USB: Add Sieraa Wireless 580 evdo card to airprime.c This adds the Sierra Wireless card to airprime.c. I tested this on my laptop. Signed-off-by: Ken Brush Signed-off-by: Greg Kroah-Hartman commit d8c3291c73b958243b33f8509d4507e76dafd055 Author: Linus Torvalds Date: Thu May 11 16:31:53 2006 -0700 Linux v2.6.17-rc4 commit dac07ec121de66b6be988b14ae2cd9ce45357b21 Author: Jens Axboe Date: Thu May 11 08:20:16 2006 +0200 [BLOCK] limit request_fn recursion Don't recurse back into the driver even if the unplug threshold is met, when the driver asks for a requeue. This is both silly from a logical point of view (requeues typically happen due to driver/hardware shortage), and also dangerous since we could hit an endless request_fn -> requeue -> unplug -> request_fn loop and crash on stack overrun. Also limit blk_run_queue() to one level of recursion, similar to how blk_start_queue() works. This patch fixed a real problem with SLES10 and lpfc, and it could hit any SCSI lld that returns non-zero from it's ->queuecommand() handler. Signed-off-by: Jens Axboe Signed-off-by: Linus Torvalds commit 210525d65d33d17eb6bea6c965ce442d60d9aa8d Author: Patrick McHardy Date: Thu May 11 12:22:03 2006 -0700 [NET_SCHED]: HFSC: fix thinko in hfsc_adjust_levels() When deleting the last child the level of a class should drop to zero. Noticed by Andreas Mueller Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit f358166a9405e4f1d8e50d8f415c26d95505b6de Author: Linus Torvalds Date: Thu May 11 11:08:49 2006 -0700 ptrace_attach: fix possible deadlock schenario with irqs Eric Biederman points out that we can't take the task_lock while holding tasklist_lock for writing, because another CPU that holds the task lock might take an interrupt that then tries to take tasklist_lock for writing. Which would be a nasty deadlock, with one CPU spinning forever in an interrupt handler (although admittedly you need to really work at triggering it ;) Since the ptrace_attach() code is special and very unusual, just make it be extra careful, and use trylock+repeat to avoid the possible deadlock. Cc: Oleg Nesterov Cc: Eric W. Biederman Cc: Roland McGrath Signed-off-by: Linus Torvalds commit ce477ae4f8c75c94587c3157deffad8219db09a0 Author: Michael S. Tsirkin Date: Wed May 10 17:58:41 2006 +0300 IB/mthca: FMR ioremap fix Addresses for ioremap must be calculated off of pci_resource_start; we can't directly use the bus address as seen by the HCA. Fix the code that remaps device memory for FMR access. Based on patch by Klaus Smolin. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit d8e95e52a9db0e26b37f51ab5140b89da7c4b31e Author: James Cameron Date: Wed May 10 13:33:29 2006 -0700 sis900: phy for FoxCon motherboard 661FX7MI-S motherboard which uses the SiS 661FX chipset. The patch adds an entry to mii_chip_info for the transceiver. The PHY ids were found using the sis900_c_122.diff patch from http://brownhat.org/sis900.html but that patch didn't solve the problem, because the PHY at address 1 was already being chosen. Without my patch, when bursts of packets arrive from other hosts on a LAN, the interface dropped one roughly 10% of the time, causing retransmits. There were fifth second pauses in refresh of large xterms, and it made Netrek suck. I can provide further test data. Workaround in lieu of patch is to use mii-tool to advertise 100baseTx-HD, then force renegotiation. I wasn't able to identify the actual transceiver, so the description field is a guess. This patch is similar to Artur Skawina's patch: http://marc.theaimsgroup.com/?l=linux-netdev&m=114297516729079&w=2 I'm not sure, but I wonder if it means the default behaviour should be changed, so as to better handle future transceivers. Diff is against 2.6.16.13. Signed-off-by: James Cameron Signed-off-by: Stephen Hemminger commit 4c1b46226ce4424a93b8ac544e37afb26c8a72c6 Author: Francois Romieu Date: Wed May 10 12:48:57 2006 -0700 dl2k: use DMA_48BIT_MASK constant Typo will be harder with this one. Signed-off-by: Francois Romieu Signed-off-by: Stephen Hemminger commit 64b1c2b42b555ef38c475d104f2faf3f6f93690d Author: Herbert Valerio Riedel Date: Wed May 10 12:12:57 2006 -0400 phy: mdiobus_register(): initialize all phy_map entries make sure phy_map entries whose PHY address is masked are initialized to NULL, given that other code (such as mdiobus_unregister for instance) assumes that non-NULL phy_map entries are allocated phy_devices Signed-off-by: Herbert Valerio Riedel Signed-off-by: Stephen Hemminger commit f4ea431bb7c4856b930eafca6eb1fb474dae9b40 Author: Stephen Hemminger Date: Tue May 9 14:46:54 2006 -0700 sky2: ifdown kills irq mask Bringing down a port also masks off the status and other IRQ's needed for device to function due to missing paren's. Signed-off-by: Stephen Hemminger commit 7fc5b1e3a170d865f625e609c087cf8d84fd285d Author: Harald Welte Date: Wed May 10 13:28:52 2006 +0200 [Cardman 40x0] Fix udev device creation This patch corrects the order of the calls to register_chrdev() and pcmcia_register_driver(). Now udev correctly creates userspace device files /dev/cmmN and /dev/cmxN respectively. Based on an earlier patch by Jan Niehusmann . Signed-off-by: Harald Welte Signed-off-by: Linus Torvalds commit b0013fd47b14fc26eec07a6b2cec0c2a8954e1d7 Author: Alexey Kuznetsov Date: Wed May 10 13:24:38 2006 -0700 [IPV6]: skb leakage in inet6_csk_xmit inet6_csk_xit does not free skb when routing fails. Signed-off-by: Alexey Kuznetsov Signed-off-by: David S. Miller commit ac05202e8b83594bf6797d241371e6c752f371e6 Author: Stephen Hemminger Date: Wed May 10 13:21:53 2006 -0700 [BRIDGE]: Do sysfs registration inside rtnl. Now that netdevice sysfs registration is done as part of register_netdevice; bridge code no longer has to be tricky when adding it's kobjects to bridges. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b17a7c179dd3ce7d04373fddf660eda21efc9db9 Author: Stephen Hemminger Date: Wed May 10 13:21:17 2006 -0700 [NET]: Do sysfs registration as part of register_netdevice. The last step of netdevice registration was being done by a delayed call, but because it was delayed, it was impossible to return any error code if the class_device registration failed. Side effects: * one state in registration process is unnecessary. * register_netdevice can sleep inside class_device registration/hotplug * code in netdev_run_todo only does unregistration so it is simpler. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6dd727da92290193d0f74fa39f3ad53f423524db Author: mdr@sgi.com Date: Mon May 1 13:07:04 2006 -0500 [SCSI] mptfc: race between mptfc_register_dev and mptfc_target_alloc A race condition exists in mptfc between the thread registering a device with the fc transport and the scan work generated by the transport. This race existed prior to the application of the mptfc bug fix patch. mptfc_register_dev() calls fc_remote_port_add() with the FC_RPORT_ROLE_TARGET bit set in the rport ids passed to the function. Having this bit set causes fc_remote_port_add() to schedule a scan of the device. This scan can execute before mptfc_register_dev() can fill in the dd_data in the rport structure. When this happens, mptfc_target_alloc() will fail because dd_data is null. Attached is a patch which fixes the problem. The patch changes the rport ids passed to fc_remote_port_add() to not have the TARGET bit set. This prevents the scan from being scheduled. After mptfc_register_dev() fills in the rport dd_data field, fc_remote_port_rolechg() is called, changing the role of the rport to TARGET. Thus, the scan is scheduled after dd_data is filled in which prevents the failure in mptfc_target_alloc(). Signed-off-by: Michael Reed Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit a50bb7b9af9a7c39b2aba15678eb686ae428718c Author: Jesper Juhl Date: Tue May 9 23:14:35 2006 -0700 [TG3]: Fix possible NULL deref in tg3_run_loopback(). tg3_run_loopback doesn't check that dev_alloc_skb() returns anything useful. Even if dev_alloc_skb() fails to return an skb to us we'll happily go on and assume it did, so we risk dereferencing a NULL pointer. Much better to fail gracefully by returning -ENOMEM than crashing here. Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 5941d079f2c3bdf0dffed1afb8941678fcd0bcb7 Author: Roland Dreier Date: Tue May 9 22:54:59 2006 -0700 IPoIB: Free child interfaces properly When deleting a child interface with a non-default P_Key via /sys/class/net/ibX/delete_child, the interface must be freed with free_netdev() (rather than kfree() on the private data). Signed-off-by: Roland Dreier commit 8c1056839e808aad728db86d739ffec71d2d1db8 Author: Herbert Xu Date: Tue May 9 15:27:54 2006 -0700 [NET] linkwatch: Handle jiffies wrap-around The test used in the linkwatch does not handle wrap-arounds correctly. Since the intention of the code is to eliminate bursts of messages we can afford to delay things up to a second. Using that fact we can easily handle wrap-arounds by making sure that we don't delay things by more than one second. This is based on diagnosis and a patch by Stefan Rompf. Signed-off-by: Herbert Xu Acked-by: Stefan Rompf Signed-off-by: David S. Miller commit 788252e6616afc75098397cc6b0bcb5482ad07ac Author: Christoph Hellwig Date: Tue May 9 15:27:04 2006 -0700 [IRDA]: Switching to a workqueue for the SIR work Since sir_kthread.c pretty much duplicates the workqueue functionality, we'd better switch. The SIR fsm has been merged into sir_dev.c and thus sir_kthread.c is deleted. Signed-off-by: Christoph Hellwig Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit d94c77b9b55f2c868ffd63cbd1f9749755c4b3d0 Author: David Brownell Date: Tue May 9 15:26:11 2006 -0700 [IRDA]: smsc-ircc: Minimal hotplug support. Minimal PNP hotplug support for the smsc-ircc2 driver. A modular driver will be modprobed via hotplug, but still bypasses driver model probing. Signed-off-by: David Brownell Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit 11766199a0bb9a7ba57510119e7340140e7c3e24 Author: Adrian Bunk Date: Tue May 9 15:25:25 2006 -0700 [IRDA]: Removing unused EXPORT_SYMBOLs This patch removes the following unused EXPORT_SYMBOL's: - irias_find_attrib - irias_new_string_value - irias_new_octseq_value Signed-off-by: Adrian Bunk Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit f353976dc2f31c9be092d4cb9476a39ba3973926 Author: Samuel Ortiz Date: Tue May 9 15:24:49 2006 -0700 [IRDA]: New maintainer. As agreed with Jean Tourrilhes, I am taking over IrDA maintainership. Signed-off-by: Samuel Ortiz Signed-off-by: David S. Miller commit f07d5b946510a54937a75a3654941e855ffdc4c2 Author: Alan Stern Date: Tue May 9 15:23:03 2006 -0700 [NET]: Make netdev_chain a raw notifier. From: Alan Stern This chain does it's own locking via the RTNL semaphore, and can also run recursively so adding a new mutex here was causing deadlocks. Signed-off-by: David S. Miller commit 63cbd2fda38f3d1f107c4fd6261e5660be3eccf9 Author: Wei Yongjun Date: Tue May 9 15:18:50 2006 -0700 [IPV4]: ip_options_fragment() has no effect on fragmentation Fix error point to options in ip_options_fragment(). optptr get a error pointer to the ipv4 header, correct is pointer to ipv4 options. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 3a01c1ef75e1d84752ddef607c389bbde9c2576e Author: Stefan Rompf Date: Tue May 9 15:15:35 2006 -0700 [NET]: Add missing operstates documentation. Signed-off-by: Stefan Rompf Signed-off-by: David S. Miller commit 41b11afb048d67cc0e221191191ba0b2012dce47 Author: Pavel Machek Date: Tue May 9 22:27:51 2006 +0100 [ARM] 3508/1: Update collie defconfig Patch from Pavel Machek Update collie defconfig to something that can bring closer-to-working system to its user. Signed-off-by: Pavel Machek Signed-off-by: Russell King commit 1929ab8c6860a4a94109eed038b0fa9d12c81721 Author: Russell King Date: Tue May 9 22:14:28 2006 +0100 [ARM] Fix thread struct allocator for SMP case The ARM thread struct allocator is racy on SMP systems. Fix it by turning it into a per-cpu based allocator. This also allows keeps the cache cache warm for thread structs and kernel stacks. Signed-off-by: Russell King commit 95563d343fec8d3e2f667c95230ac4ab7674b757 Author: Jordan Crouse Date: Fri Apr 28 22:53:30 2006 +0200 [PATCH] scx200_acb: Fix for the CS5535 errata This is a fix for the CS5535 errata 111: When the SMBus controller tries to access a non-existing device, it sets the NEGACK bit, SMBus I/O offset 01h[4], to 1 after it detects no acknowledge at the ninth clock. The specification states that the bit can be cleared by writing a 1 to it, but under certain circumstances it is possible for this bit to not clear. Writing a 0 to the bit resets the internal state machine and clears the issue. Since all writable bits in ACBST are W1C bits (write-one-to-clear) the second write doesn't affect any other logic except the buggy NEGACK state machine. The second write clears an internal register which is responsible for "overwriting" the NEGACK bit in ACBST. Signed-off-by: Jordan Crouse Signed-off-by: Andrew Morton Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit b33d0798e6cfae1fcee75afc808fe5690a48a814 Author: Jean Delvare Date: Wed Apr 26 23:00:16 2006 +0200 [PATCH] scx200_acb: Fix resource name use after free We can't pass a string on the stack to request_region. As soon as we leave the function that stack is gone and the string is lost. Let's use the same string we identify the i2c_adapter with instead, it's more simple, more consistent, and just works. This is the second half of fix to bug #6445. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman commit 6f9c2963888e60e46a9e0bd09a25740abce29262 Author: Jean Delvare Date: Wed Apr 26 22:50:32 2006 +0200 [PATCH] scx200_acb: Fix return on init error The scx200_acb driver shouldn't return failure after initialization if it successfully registered at least one i2c_adapter, else we are leaking resources. The driver was OK in that respect up to 2.6.16, a recent change broke it. This is part of the fix to bug #6445. Signed-off-by: Jean Delvare Cc: Ben Gardner Signed-off-by: Greg Kroah-Hartman commit a3285aa4eecd722508dab01c4932b11b4ba80134 Author: Roland Dreier Date: Tue May 9 10:50:29 2006 -0700 IB/mthca: Fix race in reference counting Fix races in in destroying various objects. If a destroy routine waits for an object to become free by doing wait_event(&obj->wait, !atomic_read(&obj->refcount)); /* now clean up and destroy the object */ and another place drops a reference to the object by doing if (atomic_dec_and_test(&obj->refcount)) wake_up(&obj->wait); then this is susceptible to a race where the wait_event() and final freeing of the object occur between the atomic_dec_and_test() and the wake_up(). And this is a use-after-free, since wake_up() will be called on part of the already-freed object. Fix this in mthca by replacing the atomic_t refcounts with plain old integers protected by a spinlock. This makes it possible to do the decrement of the reference count and the wake_up() so that it appears as a single atomic operation to the code waiting on the wait queue. While touching this code, also simplify mthca_cq_clean(): the CQ being cleaned cannot go away, because it still has a QP attached to it. So there's no reason to be paranoid and look up the CQ by number; it's perfectly safe to use the pointer that the callers already have. Signed-off-by: Roland Dreier commit d945e1df28ca07642b3e1a9b9d07074ba5f76be0 Author: Roland Dreier Date: Tue May 9 10:50:28 2006 -0700 IB/srp: Fix tracking of pending requests during error handling If a SCSI abort completes, or the command completes successfully, then the driver must remove the command from its queue of pending commands. Similarly, if a device reset succeeds, then all commands queued for the given device must be removed from the queue. Signed-off-by: Roland Dreier commit d8b9f23b23e080d820e3c0aa5ccd7834c26ebf96 Author: Ralph Campbell Date: Tue May 9 10:50:28 2006 -0700 IB: Fix display of 4-bit port counters in sysfs The code to display local_link_integrity_errors and excessive_buffer_overrun_errors in /sys/class/infiniband//ports//counters/ uses the wrong shift to extract the 4 bit values. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 72a9f958421a519e69b3e7b409948c3a294f4a32 Author: Razvan Gavril Date: Thu May 4 11:35:49 2006 +0300 [PATCH] USB: ftdi_sio: add device id for ACT Solutions HomePro ZWave interface Signed-off-by: Razvan Gavril Signed-off-by: Greg Kroah-Hartman commit 20a0f47e18c646bcc772282512fc59e56b2fc968 Author: Ian Abbott Date: Thu May 4 11:34:25 2006 +0100 [PATCH] USB: ftdi_sio: Add support for HCG HF Dual ISO RFID Reader This patch adds support for ACG Identification Technologies GmbH's HF Dual ISO Reader (an RFID tag reader) to the ftdi_sio driver's device ID table. The product ID was supplied by anotonios (anton at goto10 dot org) on the ftdi-usb-sio-devel list and subsequently verified by myself (Ian Abbott). Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 77ef6c4d6e23653a79eedacdd6d1d0da7083e59c Author: Pete Zaitcev Date: Wed May 3 00:16:00 2006 -0700 [PATCH] USB: ub oops in block_uevent In kernel 2.6.16, if a mounted storage device is removed, an oops happens because ub supplies an interface device (and kobject) to the block layer, but neglects to pin it. And apparently, the block layer expects its users to pin device structures. The code in ub was broken this way for years. But the bug was exposed only by 2.6.16 when it started to call block_uevent on close, which traverses device structures (kobjects actually). Signed-off-by: Pete Zaitcev Signed-off-by: Greg Kroah-Hartman commit 436f5762bcd4929825a0725d4bc78337e6fc0d8f Author: Alan Stern Date: Tue May 2 15:22:41 2006 -0400 [PATCH] USB: usbcore: don't check the device's power source The choose_configuration() routine contains code the determine the device's power source, so that configurations requiring external power can be ruled out if the device is running on bus power. Unfortunately it turns out that some devices have errors in their config descriptors and other devices don't like the GET_DEVICE_STATUS request. Since that information wasn't used for anything else, this patch (as673) removes the code, leaving only a comment. It fixes bugzilla entry #6448. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit db4cefaaea4c6d67cdaebfd315abc791c5c9d22f Author: David Brownell Date: Mon May 1 22:07:13 2006 -0700 [PATCH] USB: fix OHCI PM regression This fixes a small regression in USB controller power usage for many OHCI controllers, notably including every non-PCI version of OHCI: on those systems, the runtime autosuspend mechanism is no longer enabled. The change moves to saner defaults. All root hubs are expected to handle remote wakeup (and hence autosuspend), although drivers for buggy silicon may override that default. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 7e713b825610de9a9584c189c72e2d9f2326359c Author: David Brownell Date: Mon May 1 14:02:45 2006 -0700 [PATCH] USB: pegasus fixes (logstorm, suspend) Teach "pegasus" to handle a few of the disconnect fault paths without hundreds of usless syslog messages. Handle the carrier check workqueue entry even if the driver has not been opened. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 6275cdfa0fe032208937a3567ebb8bcfd42d20b1 Author: Duncan Sands Date: Fri Apr 28 18:52:16 2006 +0200 [PATCH] USBATM: fix modinfo output Because of the way stringify works, using an expression like 64 * 1024 for UDSL_MAX_BUF_SIZE results in 64 * 1024 turning up in the modinfo output instead of 65536. So use 65536 directly (this was the only way I found of fixing this). Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 67c752b41a4238c1a2d7eebcd061ff8c1127d3e9 Author: Duncan Sands Date: Fri Apr 28 18:44:06 2006 +0200 [PATCH] USBATM: change the default speedtouch iso altsetting The maximum possible bandwidth for a speedtouch modem is about 7Mbaud. You can only get this by using isochronous urbs (enable_isoc=1) and altsetting 3. With the current default altsetting of 2, the modem maxes out at about 4Mbaud. So change the default altsetting to 3 when using isochronous urbs. It would be nice to base the altsetting on the detected line speed, but that's hard given the current design. Signed-off-by: Duncan Sands Signed-off-by: Greg Kroah-Hartman commit 839ab1d4ce4dfd7e6c189391a82c584292488b41 Author: David Brownell Date: Wed Apr 26 14:39:11 2006 -0700 [PATCH] USB: fix bug in ohci-hcd.c ohci_restart() A loop on a power-lost resume path used the wrong index. I suspect khubd has been working around such bugs. Noticed by Andreas Mohr . Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit c51e078f82096a7d35ac8ec2416272e843a0e1c4 Author: Marcelo Tosatti Date: Fri May 5 17:09:29 2006 -0300 [PATCH] ppc32/8xx: Fix r3 trashing due to 8MB TLB page instantiation Instantiation of 8MB pages on the TLB cache for the kernel static mapping trashes r3 register on !CONFIG_8xx_CPU6 configurations. This ensures r3 gets saved and restored. Signed-off-by: Marcelo Tosatti Signed-off-by: Paul Mackerras commit e4de00215c3af02116db3d486bf53700dfe10619 Author: Paul Mackerras Date: Tue May 9 16:00:59 2006 +1000 powerpc/32: Define an is_kernel_addr() to fix ARCH=ppc compilation My commit 6bfd93c32a5065d0e858780b3beb0b667081601c broke the ARCH=ppc compilation by using the is_kernel_addr() macro in asm/uaccess.h. This fixes it by defining a suitable is_kernel_addr() for ARCH=ppc. Signed-off-by: Paul Mackerras commit 8ec93459655a3618dedec6360bb28d63f0010ef6 Author: Jens Osterkamp Date: Thu May 4 05:59:41 2006 -0400 spidernet: enable support for bcm5461 ethernet phy A newer board revision changed the type of ethernet phy. Moreover, this generalizes the way that a phy gets switched into fiber mode when autodetection is not available. Signed-off-by: Jens Osterkamp Signed-off-by: Arnd Bergmann Signed-off-by: Stephen Hemminger commit b636d17a3bee8ba988e78e4bc8262f0dc3fad8ab Author: Jens Osterkamp Date: Thu May 4 05:59:56 2006 -0400 spidernet: introduce new setting We found a new chip setting that we need in order to make the driver work more reliable. Signed-off-by: Arnd Bergmann Signed-off-by: Stephen Hemminger commit aedc0e520e5ae9ba1342c25c4604d18fb236c2bc Author: Sergei Shtylyov Date: Tue May 9 00:58:28 2006 +0400 Fix RTL8019AS init for Toshiba RBTX49xx boards Ensure that 8-bit mode is selected for the on-board Realtek RTL8019AS chip on Toshiba RBHMA4x00, get rid of the duplicate #ifdef's when setting ei_status.word16. The chip's datasheet says that the PSTOP register shouldn't exceed 0x60 in 8-bit mode -- ensure this too. Signed-off-by: Sergei Shtylyov Signed-off-by: Stephen Hemminger commit 8cd35da094bed8a41eb722c1d03eab24d57bf706 Author: Herbert Valerio Riedel Date: Mon May 1 15:37:09 2006 +0200 au1000_eth.c: use ether_crc() from since the au1000 driver already selects the CRC32 routines, simply replace the internal ether_crc() implementation with the semantically equivalent one from Signed-off-by: Herbert Valerio Riedel Signed-off-by: Stephen Hemminger commit 6d4b0f617d577975108ccc7e3b0c7dbe50144df6 Author: Stephen Hemminger Date: Mon May 8 15:11:34 2006 -0700 sky2: version 1.3 Update version number, to track changes. Signed-off-by: Stephen Hemminger commit ed6d32c7a927bfccf921d15a3e25160f4528c3eb Author: Stephen Hemminger Date: Mon May 8 15:11:33 2006 -0700 Add more support for the Yukon Ultra chip found in dual core centino laptops. The newest Yukon Ultra chipset's require more special tweaks. They seem to be like the Yukon XL chipsets. This code is transliterated from the latest SysKonnect driver; I don't have any Ultra hardware. Signed-off-by: Stephe Hemminger Signed-off-by: Stephen Hemminger commit 72cb8529208020484cecd69bbf87719b50ee6313 Author: Stephen Hemminger Date: Mon May 8 15:11:32 2006 -0700 sky2: synchronize irq on remove Need to make sure interrupt is not racing with unregister of network device. Signed-off-by: Stephen Hemminger commit e71ebd73276cc21efc74aba4118ef037cd32e50a Author: Stephen Hemminger Date: Mon May 8 15:11:31 2006 -0700 sky2: dont write status ring It is more efficient not to write the status ring from the processor and just read the active portion. Signed-off-by: Stephen Hemminger commit 01bd75645f94d49cb7ffd61022890166ce00ec2a Author: Stephen Hemminger Date: Mon May 8 15:11:30 2006 -0700 sky2: edge triggered workaround enhancement Need to make the edge-triggered workaround timer faster to get marginally better peformance. The test_and_set_bit in schedule_prep() acts as a barrier already. Make it a module parameter so that laptops who are concerned about power can set it to 0; and user's stuck with broken BIOS's can turn the driver into pure polling. Signed-off-by: Stephen Hemminger commit cb5d9547307f44f210f88c829bad4249eeb24bc3 Author: Stephen Hemminger Date: Mon May 8 15:11:29 2006 -0700 sky2: use mask instead of modulo operation Gcc isn't smart enough to know that it can do a modulo operation with power of 2 constant by doing a mask. So add macro to do it for us. Signed-off-by: Stephen Hemminger commit f55925d7eb04f936ab4c001f10e3e9c74c1297ae Author: Stephen Hemminger Date: Mon May 8 15:11:28 2006 -0700 sky2: tx ring index mask fix Mask for transmit ring status was picking up bits from the unused sync ring. They were always zero, so far... Also, make sure to remind self not to make tx ring too big. Signed-off-by: Stephen Hemminger commit 1e5f1283a2aed429f4457e2eb875b1928a6643df Author: Stephen Hemminger Date: Mon May 8 15:11:27 2006 -0700 sky2: status irq hang fix The status interrupt flag should be cleared before processing, not afterwards to avoid race. Need to process in poll routine even if no new interrupt status. This is a normal occurrence when more than 64 frames (NAPI weight) are processed in one poll routine. Signed-off-by: Stephen Hemminger commit d324031245abbb54e4e0321004430826052b6c37 Author: Stephen Hemminger Date: Mon May 8 15:11:26 2006 -0700 sky2: backout NAPI reschedule This is a backout of earlier patch. The whole rescheduling hack was a bad idea. It doesn't really solve the problem and it makes the code more complicated for no good reason. Signed-off-by: Stephen Hemminger commit 1f8aa2f66b7253d1a42ead0142c7a00d2df5ac89 Author: David S. Miller Date: Mon May 8 15:13:14 2006 -0700 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit 601e7f024edbea8018de34c83a7398623214e636 Author: Linus Torvalds Date: Mon May 8 13:38:42 2006 -0700 Revert "kbuild: fix modpost segfault for 64bit mipsel kernel" This reverts commit c8d8b837ebe4b4f11e1b0c4a2bdc358c697692ed, which caused problems for the x86 build. Quoth Sam: "It was discussed on mips list but apparently the fix was bogus. I will not have time to look into it so mips can carry this local fix until we get a proper fix in mainline." Signed-off-by: Linus Torvalds commit f9d8f063fee645a23776519fb5c910b9d9435270 Author: Russell King Date: Mon May 8 20:31:11 2006 +0100 [ARM] Update mach-types Signed-off-by: Russell King commit 5eb204eb1fff7387d3ab3e6225c0099dc34e69db Author: Russell King Date: Mon May 8 20:30:24 2006 +0100 [ARM] Update versatile_defconfig Update versatile default configuration, enabling the AACI sound driver, VFP and Versatile AB support. Signed-off-by: Russell King commit 6810b548b25114607e0814612d84125abccc0a4f Author: Andi Kleen Date: Mon May 8 15:17:31 2006 +0200 [PATCH] x86_64: Move ondemand timer into own work queue Taking the cpu hotplug semaphore in a normal events workqueue is unsafe because other tasks can wait for any workqueues with it hold. This results in a deadlock. Move the DBS timer into its own work queue which is not affected by other work queue flushes to avoid this. Has been acked by Venkatesh. Cc: venkatesh.pallipadi@intel.com Cc: cpufreq@lists.linux.org.uk Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit ac71d12c990526b01ef6cfe50907ef8530a30331 Author: Andi Kleen Date: Mon May 8 15:17:28 2006 +0200 [PATCH] x86_64: Avoid EBDA area in early boot allocator Based on analysis&patch from Robert Hentosch Observed on a Dell PE6850 with 16GB The problem occurs very early on, when the kernel allocates space for the temporary memory map called bootmap. The bootmap overlaps the EBDA region. EBDA region is not historically reserved in the e820 mapping. When the bootmap is freed it marks the EBDA region as usable. If you notice in setup.c there is already code to work around the EBDA in reserve_ebda_region(), this check however occurs after the bootmap is allocated and doesn't prevent the bootmap from using this range. AK: I redid the original patch. Thanks also to Jan Beulich for spotting some mistakes. Cc: Robert_Hentosch@dell.com Cc: jbeulich@novell.com Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 8b1ffe9550e71224c43d8c754245bd76f4ea9bb8 Author: Corey Minyard Date: Mon May 8 15:17:25 2006 +0200 [PATCH] x86_64: add nmi_exit to die_nmi Playing with NMI watchdog on x86_64, I discovered that it didn't do what I expected. It always panic-ed, even when it didn't happen from interrupt context. This patch solves that problem for me. Also, in this case, do_exit() will be called with interrupts disabled, I believe. Would it be wise to also call local_irq_enable() after nmi_exit()? [Yes I added it -AK] Currently, on x86_64, any NMI watchdog timeout will cause a panic because the irq count will always be set to be in an interrupt when do_exit() is called from die_nmi(). If we add nmi_exit() to the die_nmi() call (since the nmi will never exit "normally") it seems to solve this problem. The following small program can be used to trigger the NMI watchdog to reproduce this: main () { iopl(3); for (;;) asm("cli"); } Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit cdc60a4c8e71c4bcf67e83fac6c0cabd0ff19bfe Author: Corey Minyard Date: Mon May 8 15:17:22 2006 +0200 [PATCH] x86_64: fix die_lock nesting I noticed this when poking around in this area. The oops_begin() function in x86_64 would only conditionally claim the die_lock if the call is nested, but oops_end() would always release the spinlock. This patch adds a nest count for the die lock so that the release of the lock is only done on the final oops_end(). Signed-off-by: Corey Minyard Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit 5192d84e4c32cd335fd572e5ff0712041f45f7e7 Author: Andi Kleen Date: Mon May 8 15:17:19 2006 +0200 [PATCH] x86_64: Check for too many northbridges in IOMMU code The IOMMU code can only deal with 8 northbridges. Error out when more are found. Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds commit e0c1e9bf81badc7ba59e120d6218101903d5d103 Author: Kimball Murray Date: Mon May 8 15:17:16 2006 +0200 [PATCH] x86_64: avoid IRQ0 ioapic pin collision The patch addresses a problem with ACPI SCI interrupt entry, which gets re-used, and the IRQ is assigned to another unrelated device. The patch corrects the code such that SCI IRQ is skipped and duplicate entry is avoided. Second issue came up with VIA chipset, the problem was caused by original patch assigning IRQs starting 16 and up. The VIA chipset uses 4-bit IRQ register for internal interrupt routing, and therefore cannot handle IRQ numbers assigned to its devices. The patch corrects this problem by allowing PCI IRQs below 16. Cc: len.brown@intel.com Signed-off by: Natalie Protasevich Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 75dff55af9a989293e9f9bacf049858f4262bc08 Author: Trond Myklebust Date: Sun May 7 23:02:42 2006 -0400 [PATCH] fs/locks.c: Fix lease_init It is insane to be giving lease_init() the task of freeing the lock it is supposed to initialise, given that the lock is not guaranteed to be allocated on the stack. This causes lockups in fcntl_setlease(). Problem diagnosed by Daniel Hokka Zakrisson Also fix a slab leak in __setlease() due to an uninitialised return value. Problem diagnosed by Björn Steinbrink. Signed-off-by: Trond Myklebust Tested-by: Daniel Hokka Zakrisson Signed-off-by: Linus Torvalds commit e63a3690013a475746ad2cea998ebb534d825704 Author: Nathan Scott Date: Mon May 8 19:51:58 2006 +1000 [XFS] Fix a possible metadata buffer (AGFL) refcount leak when fixing an AG freelist. SGI-PV: 952681 SGI-Modid: xfs-linux-melb:xfs-kern:25902a Signed-off-by: Nathan Scott commit b1ecdda9313ec5d2f971993f44f6b657acf70cff Author: Nathan Scott Date: Mon May 8 19:51:42 2006 +1000 [XFS] Fix a project quota space accounting leak on rename. SGI-PV: 951636 SGI-Modid: xfs-linux-melb:xfs-kern:25811a Signed-off-by: Nathan Scott commit d08d389d5aef0509edba7ee42cd6c6a3998fee22 Author: Nathan Scott Date: Mon May 8 19:51:28 2006 +1000 [XFS] Fix a possible forced shutdown due to mishandling write barriers with remount,ro. SGI-PV: 951944 SGI-Modid: xfs-linux-melb:xfs-kern:25742a Signed-off-by: Nathan Scott commit 4cfbd7eb24975e942c3b6c0119c953c3a7a5f787 Author: Martin Habets Date: Sun May 7 23:43:19 2006 -0700 [SPARC]: show device name in /proc/dvma_map This patch will set the device name in a resource, which will be shown in /proc/dvma_map. Signed-off-by: Martin Habets Signed-off-by: David S. Miller commit bb3426ad6659282d9244d4909e69aa639d0360d0 Author: Martin Habets Date: Sun May 7 23:04:06 2006 -0700 [SPARC]: Remove duplicate symbol exports This patch resolves the following build warnings seen in 2.6.17-rc3: WARNING: vmlinux: 'sys_close' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'memchr' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strstr' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strnlen' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strrchr' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strchr' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strcmp' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strncat' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strcat' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strncpy' exported twice. Previous export was in vmlinux WARNING: vmlinux: 'strcpy' exported twice. Previous export was in vmlinux Signed-off-by: Martin Habets Signed-off-by: David S. Miller commit fd5f0cd6b0cef59ba18e5ac13be5b2775fa6ec28 Author: Jan Beulich Date: Tue May 2 12:33:20 2006 +0200 kbuild: Do not overwrite makefile as anohter user Change the conditional of the outputmakefile rule to be evaluated entirely in make, and add a conditional to not touch the generated makefile when e.g. running 'make install' as root while the build was done as non-root. Also adjust the comment describing this, and move the message printing and redirection to mkmakefile. Signed-off-by: Jan Beulich Signed-off-by: Sam Ravnborg commit 74fae122eb9f0db8b8718b9851c31c2f374fb134 Author: Bellido Nicolas Date: Sun May 7 22:49:24 2006 +0100 [ARM] 3507/1: Replace map_desc.physical with map_desc.pfn: aaed2000 Patch from Bellido Nicolas aaed2000 map_desc.pfn conversion Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 9a708becafe99fa32211e8c53dbacefdb4b11718 Author: Bellido Nicolas Date: Sun May 7 22:49:23 2006 +0100 [ARM] 3506/1: aaec2000: debug-macro.S needs hardware.h Patch from Bellido Nicolas Include hardware.h in debug-macro.S, otherwise io_p2v is undefined. Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 201be92a4243e58bcc6c0878489bcc2aaaf51c80 Author: Bellido Nicolas Date: Sun May 7 22:49:22 2006 +0100 [ARM] 3505/1: aaec2000: entry-macro.S needs asm/arch/irqs.h Patch from Bellido Nicolas Since git commit 2b78838842346da390e8547cd37035184376d506, entry-macro.S needs to include asm/arch/irqs.h Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 8a33b224ecb576e27695ff8922c8e579dbf7070e Author: Bellido Nicolas Date: Sun May 7 22:49:21 2006 +0100 [ARM] 3504/1: Fix clcd includes for aaec2000 Patch from Bellido Nicolas Since this patch: [ARM] 3366/1: Allow the 16bpp mode configuration in the CLCD control register linux/amba/bus.h needs to be included before linux/amba/clcd.h Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 16b6dd4419cdef637a907cfc26594e4ebe688975 Author: Bellido Nicolas Date: Sun May 7 22:49:21 2006 +0100 [ARM] 3503/1: Fix map_desc structure for aaec2000 Patch from Bellido Nicolas Patch: [ARM] 2982/1: Replace map_desc.physical with map_desc.pfn: aaec2000 incorrectly expanded the struct map_desc for aaec2000. Signed-off-by: Nicolas Bellido Signed-off-by: Russell King commit 216251cff98838f2b79c53fc8a9e76884944be7d Author: Sascha Hauer Date: Sun May 7 18:56:27 2006 +0100 [ARM] 3501/1: i.MX: fix lowlevel debug macros Patch from Sascha Hauer This patch fixes the addruart macro to work with both mmu enabled and disabled. Signed-off-by: Sascha Hauer Signed-off-by: Russell King commit f5b40e363ad6041a96e3da32281d8faa191597b9 Author: Linus Torvalds Date: Sun May 7 10:49:33 2006 -0700 Fix ptrace_attach()/ptrace_traceme()/de_thread() race This holds the task lock (and, for ptrace_attach, the tasklist_lock) over the actual attach event, which closes a race between attacking to a thread that is either doing a PTRACE_TRACEME or getting de-threaded. Thanks to Oleg Nesterov for reminding me about this, and Chris Wright for noticing a lost return value in my first version. Signed-off-by: Linus Torvalds commit 0eb1bd210d94e9f2c87551d794bb2755e5e24eed Author: Randy Dunlap Date: Sat May 6 18:34:10 2006 -0700 [IRDA] irda-usb: use NULL instead of 0 Use NULL instead of 0 for a null pointer value (sparse warning): drivers/net/irda/irda-usb.c:1781:30: warning: Using plain integer as NULL pointer Also, correct timeout argument to use milliseconds instead of jiffies. Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 0182bd2b1e2fb45a55f110795bfdb9aa5f6c6b0b Author: Hua Zhong Date: Sat May 6 18:11:39 2006 -0700 [IPV4]: Remove likely in ip_rcv_finish() This is another result from my likely profiling tool (dwalker@mvista.com just sent the patch of the profiling tool to linux-kernel mailing list, which is similar to what I use). On my system (not very busy, normal development machine within a VMWare workstation), I see a 6/5 miss/hit ratio for this "likely". Signed-off-by: Hua Zhong Signed-off-by: David S. Miller commit fe9925b551a95fae6ec61470c79f8b701a2fe928 Author: Stephen Hemminger Date: Sat May 6 17:56:03 2006 -0700 [NET]: Create netdev attribute_groups with class_device_add Atomically create attributes when class device is added. This avoids the race between registering class_device (which generates hotplug event), and the creation of attribute groups. Signed-off-by: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 1498221d51a43d5fa1a580618591497d90f957d9 Author: Stephen Hemminger Date: Sat May 6 17:55:11 2006 -0700 [CLASS DEVICE]: add attribute_group creation Extend the support of attribute groups in class_device's to allow groups to be created as part of the registration process. This allows network device's to avoid race between registration and creating groups. Note that unlike attributes that are a property of the class object, the groups are a property of the class_device object. This is done because there are different types of network devices (wireless for example). Signed-off-by: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit f12267011d16b1722e71aa12cd3e89eb70a9edd6 Author: Russell King Date: Sat May 6 11:29:21 2006 +0100 [ARM] rtc-sa1100: fix compiler warnings and error cleanup Fix: drivers/rtc/rtc-sa1100.c: In function `sa1100_rtc_proc': drivers/rtc/rtc-sa1100.c:298: warning: unsigned int format, long unsigned int arg (arg 3) and arrange for sa1100_rtc_open() to pass the devid to free_irq() rather than NULL. Signed-off-by: Russell King commit 19ca5d27e15c10d8529984ecd98dcba2637edcd2 Author: Russell King Date: Sat May 6 11:26:30 2006 +0100 [ARM] Allow SA1100 RTC alarm to be configured for wakeup The SA1100 RTC alarm can be configured to wake up the CPU from sleep mode, and the RTC driver has been using the API to configure this mode. Unfortunately, the code was which sets the required bit in the hardware was missing. Signed-off-by: Russell King commit 5528e568a760442e0ec8fd2dea1f0791875a066b Author: John Heffner Date: Fri May 5 17:41:44 2006 -0700 [TCP]: Fix snd_cwnd adjustments in tcp_highspeed.c Xiaoliang (David) Wei wrote: > Hi gurus, > > I am reading the code of tcp_highspeed.c in the kernel and have a > question on the hstcp_cong_avoid function, specifically the following > AI part (line 136~143 in net/ipv4/tcp_highspeed.c ): > > /* Do additive increase */ > if (tp->snd_cwnd < tp->snd_cwnd_clamp) { > tp->snd_cwnd_cnt += ca->ai; > if (tp->snd_cwnd_cnt >= tp->snd_cwnd) { > tp->snd_cwnd++; > tp->snd_cwnd_cnt -= tp->snd_cwnd; > } > } > > In this part, when (tp->snd_cwnd_cnt == tp->snd_cwnd), > snd_cwnd_cnt will be -1... snd_cwnd_cnt is defined as u16, will this > small chance of getting -1 becomes a problem? > Shall we change it by reversing the order of the cwnd++ and cwnd_cnt -= > cwnd? Absolutely correct. Thanks. Signed-off-by: John Heffner Signed-off-by: David S. Miller commit f530937b2cccdb131cb459977943c98421ab09b3 Author: Ralf Baechle Date: Fri May 5 17:19:26 2006 -0700 [NETROM/ROSE]: Kill module init version kernel log messages. There are out of date and don't tell the user anything useful. The similar messages which IPV4 and the core networking used to output were killed a long time ago. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 134af34632a7b3b0a98a79a2e56bf9cc927e0eac Author: Herbert Xu Date: Fri May 5 17:09:13 2006 -0700 [DCCP]: Fix sock_orphan dead lock Calling sock_orphan inside bh_lock_sock in dccp_close can lead to dead locks. For example, the inet_diag code holds sk_callback_lock without disabling BH. If an inbound packet arrives during that admittedly tiny window, it will cause a dead lock on bh_lock_sock. Another possible path would be through sock_wfree if the network device driver frees the tx skb in process context with BH enabled. We can fix this by moving sock_orphan out of bh_lock_sock. The tricky bit is to work out when we need to destroy the socket ourselves and when it has already been destroyed by someone else. By moving sock_orphan before the release_sock we can solve this problem. This is because as long as we own the socket lock its state cannot change. So we simply record the socket state before the release_sock and then check the state again after we regain the socket lock. If the socket state has transitioned to DCCP_CLOSED in the time being, we know that the socket has been destroyed. Otherwise the socket is still ours to keep. This problem was discoverd by Ingo Molnar using his lock validator. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 1c29fc4989bc2a3838b2837adc12b8aeb0feeede Author: Stephen Hemminger Date: Fri May 5 17:07:13 2006 -0700 [BRIDGE]: keep track of received multicast packets It makes sense to add this simple statistic to keep track of received multicast packets. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 35d63edb1c807bc5317e49592260e84637bc432e Author: Sridhar Samudrala Date: Fri May 5 17:05:23 2006 -0700 [SCTP]: Fix state table entries for chunks received in CLOSED state. Discard an unexpected chunk in CLOSED state rather can calling BUG(). Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 62b08083ec3dbfd7e533c8d230dd1d8191a6e813 Author: Sridhar Samudrala Date: Fri May 5 17:04:43 2006 -0700 [SCTP]: Fix panic's when receiving fragmented SCTP control chunks. Use pskb_pull() to handle incoming COOKIE_ECHO and HEARTBEAT chunks that are received as skb's with fragment list. Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 672e7cca17ed6036a1756ed34cf20dbd72d5e5f6 Author: Vladislav Yasevich Date: Fri May 5 17:03:49 2006 -0700 [SCTP]: Prevent possible infinite recursion with multiple bundled DATA. There is a rare situation that causes lksctp to go into infinite recursion and crash the system. The trigger is a packet that contains at least the first two DATA fragments of a message bundled together. The recursion is triggered when the user data buffer is smaller that the full data message. The problem is that we clone the skb for every fragment in the message. When reassembling the full message, we try to link skbs from the "first fragment" clone using the frag_list. However, since the frag_list is shared between two clones in this rare situation, we end up setting the frag_list pointer of the second fragment to point to itself. This causes sctp_skb_pull() to potentially recurse indefinitely. Proposed solution is to make a copy of the skb when attempting to link things using frag_list. Signed-off-by: Vladislav Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 7c3ceb4fb9667f34f1599a062efecf4cdc4a4ce5 Author: Neil Horman Date: Fri May 5 17:02:09 2006 -0700 [SCTP]: Allow spillover of receive buffer to avoid deadlock. This patch fixes a deadlock situation in the receive path by allowing temporary spillover of the receive buffer. - If the chunk we receive has a tsn that immediately follows the ctsn, accept it even if we run out of receive buffer space and renege data with higher TSNs. - Once we accept one chunk in a packet, accept all the remaining chunks even if we run out of receive buffer space. Signed-off-by: Neil Horman Acked-by: Mark Butler Acked-by: Vlad Yasevich Signed-off-by: Sridhar Samudrala Signed-off-by: David S. Miller commit 568cb09b9d889b6f2852ede19772b8e9eed36c1e Author: Nicolas Pitre Date: Fri May 5 22:35:05 2006 +0100 [ARM] 3495/1: EABI: undefine removed syscalls, but... Patch from Nicolas Pitre ... but only for user space. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit 99532559dc7a8e686b2cef14c780a7ad5dbd4a31 Author: Nicolas Pitre Date: Fri May 5 22:32:24 2006 +0100 [ARM] 3500/1: fix PXA27x DMA allocation priority Patch from Nicolas Pitre Intel PXA27x developers manual section 5.4.1.1 lists a priority distribution for the DMA channels differently than what the code currently assumes. This patch fixes that. Noticed by Simon Vogl Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit b7d7ef87e15dea105be59ec8f14e2f92182dd421 Author: George G. Davis Date: Fri May 5 22:32:23 2006 +0100 [ARM] 3499/1: Fix VFP FPSCR corruption for double exception case Patch from George G. Davis The ARM VFP FPSCR register is corrupted when a condition flags modifying VFP instruction is followed by a non-condition flags modifying VFP instruction and both instructions raise exceptions. The fix is to read the current FPSCR in between emulation of these two instructions and use the current FPSCR value when handling the second exception. Signed-off-by: George G. Davis Signed-off-by: Russell King commit 178e0cc5ff249965c6cfbd78b1af6a5e614d837c Author: David Woodhouse Date: Fri May 5 18:19:37 2006 +0100 [PATCH] bcm43xx: Fix access to non-existent PHY registers Fix the conditions under which we poke at the APHY registers in bcm43xx_phy_initg() to avoid a machine check on chips where they don't exist. Signed-off-by: David Woodhouse Signed-off-by: John W. Linville commit 869aaab1812c4212e65fb181e94b824cf49f9509 Author: Michael Buesch Date: Fri May 5 17:23:51 2006 +0200 [PATCH] bcm43xx: Fix array overrun in bcm43xx_geo_init The problem here is that the bcm34xx driver and the ieee80211 stack do not agree on what channels are possible for 802.11a. The ieee80211 stack only wants channels between 34 and 165, while the bcm43xx driver accepts anything from 0 to 200. I made the bcm43xx driver comply with the ieee80211 stack expectations, by using the proper constants. Signed-off-by: Jean Delvare [mb]: Reduce stack usage by kzalloc-ing ieee80211_geo Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit f9f7b9602ecb66f55718d6d1afa3e2b1e721b22d Author: Stefano Brivio Date: Fri May 5 01:26:29 2006 +0200 [PATCH] bcm43xx: check for valid MAC address in SPROM Check for valid MAC address in SPROM fields instead of relying on PHY type while setting the MAC address in the networking subsystem, as some devices have multiple PHYs. Signed-off-by: Stefano Brivio Signed-off-by: John W. Linville commit f21709d70ad6d7ad50288f7056c3a368138b017c Author: Jean Delvare Date: Thu May 4 19:47:19 2006 +0200 [PATCH] ieee80211: Fix A band channel count (resent) The channel count for 802.11a is still not right. We better compute it from the min and max channel numbers, rather than hardcoding it. Signed-off-by: Jean Delvare Signed-off-by: John W. Linville commit 5b4b9775a00c20ade1b1ac8aa25e0e4059d6243e Author: Michael Buesch Date: Mon May 1 22:43:00 2006 +0200 [PATCH] bcm43xx: fix iwmode crash when down This fixes a crash when iwconfig ethX mode foo is done before ifconfig ethX up or after ifconfig ethX down Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit d57336e3f2dd7c2d1fbe4a8323029869fb6e1f00 Author: Daniel Drake Date: Sun Apr 30 22:09:07 2006 +0100 [PATCH] softmac: make non-operational after being stopped zd1211 with softmac and wpa_supplicant revealed an issue with softmac and the use of workqueues. Some of the work functions actually reschedule themselves, so this meant that there could still be pending work after flush_scheduled_work() had been called during ieee80211softmac_stop(). This patch introduces a "running" flag which is used to ensure that rescheduling does not happen in this situation. I also used this flag to ensure that softmac's hooks into ieee80211 are non-operational once the stop operation has been started. This simply makes softmac a little more robust, because I could crash it easily by receiving frames in the short timeframe after shutting down softmac and before turning off the ZD1211 radio. (ZD1211 is now fixed as well!) Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 995c99268e0b12eb3c8939211ba5368dd92d98d9 Author: Daniel Drake Date: Sun Apr 30 19:49:30 2006 +0100 [PATCH] softmac: don't reassociate if user asked for deauthentication When wpa_supplicant exits, it uses SIOCSIWMLME to request deauthentication. softmac then tries to reassociate without any user intervention, which isn't the desired behaviour of this signal. This change makes softmac only attempt reassociation if the remote network itself deauthenticated us. Signed-off-by: Daniel Drake Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 913ed41eb5c948d2f8b5deffd29c2638eceef3d7 Author: Jon Mason Date: Wed May 3 17:26:58 2006 -0500 [IA64] remove asm-ia64/bitops.h self-inclusion asm-ia64/bitops.h includes itself. The #ifndef _ASM_IA64_BITOPS_H prevents this from being an issue, but it should still be removed. Signed-off-by: Jon Mason Signed-off-by: Tony Luck commit 3e6e155646706f1ef9f791a4402d145f112a3f8d Author: Chen, Kenneth W Date: Wed May 3 11:53:43 2006 -0700 [IA64] strcpy returns NULL pointer and not destination pointer Bob Picco noted that 6edfba1b33c701108717f4e036320fc39abe1912 dropped the -ffreestanding compiler flag from the top level Makefile, which allows the compiler to substitute memcpy() in places where strcpy() is used with a known size source string. But the ia64 memcpy() returns 0 for success, and "bytes copied" for failure. Fix to return the address of the destination string (like stdlibc version, and other architectures). There are no places where ia64 specific code makes use of the non-standard return value. Signed-off-by: Ken Chen Signed-off-by: Tony Luck commit 56cf6504fc1c0c221b82cebc16a444b684140fb7 Author: Russell King Date: Fri May 5 17:57:52 2006 +0100 [BLOCK] Fix oops on removal of SD/MMC card The block layer keeps a reference (driverfs_dev) to the struct device associated with the block device, and uses it internally for generating uevents in block_uevent. Block device uevents include umounting the partition, which can occur after the backing device has been removed. Unfortunately, this reference is not counted. This means that if the struct device is removed from the device tree, the block layers reference will become stale. Guard against this by holding a reference to the struct device in add_disk(), and only drop the reference when we're releasing the gendisk kobject - in other words when we can be sure that no further uevents will be generated for this block device. Signed-off-by: Russell King Acked-by: Jens Axboe commit 2eb9d3157107497fdccb51e1570fea677f6e3c82 Author: Uwe Zeisberger Date: Fri May 5 15:11:14 2006 +0100 [ARM] 3496/1: more constants for asm-offsets.h Patch from Uwe Zeisberger added the following constants: - MACHINFO_TYPE - MACHINFO_NAME - MACHINFO_PHYSIO - MACHINFO_PGOFFIO - PROCINFO_INITFUNC - PROCINFO_MMUFLAGS and removed their definition from head.S and head-nommu.S Signed-off-by: Uwe Zeisberger Signed-off-by: Russell King commit ff10952a547dad934d9ed9afc5cf579ed1ccb53a Author: Nicolas Pitre Date: Fri May 5 15:11:14 2006 +0100 [ARM] 3494/1: asm-arm/bug.h needs linux/stddef.h Patch from Nicolas Pitre ... for the definition of NULL. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit fed3be9bd56e67c9b9324277b7f95c32e73a75bb Author: Linus Torvalds Date: Thu May 4 13:23:40 2006 -0400 CREDITS file update (Tristan Greaves) By request from Tristan. Signed-off-by: Linus Torvalds commit 920e70c5c603ada05dd480ca0ccc0ae12a5fdc39 Author: Russell King Date: Thu May 4 18:22:51 2006 +0100 [MMC] Move set_ios debugging into mmc.c Rather than having every driver duplicate the set_ios debugging, provide a single version in mmc.c which can be expanded as we add additional functionality. Signed-off-by: Russell King commit 5b802344357338a4d645beac8ca97470bcbe3542 Author: Sascha Hauer Date: Thu May 4 14:07:42 2006 +0100 [ARM] 3490/1: i.MX: move uart resources to board files Patch from Sascha Hauer This patch moves the i.MX uart resources and the gpio pin setup to the board files. This allows the boards to decide how many internal uarts are connected to the outside world and whether they use rts/cts or not. Signed-off-by: Sascha Hauer Signed-off-by: Russell King commit fe10c6abea8bc83291a13e0580b3e4c355710b09 Author: Russell King Date: Thu May 4 13:51:45 2006 +0100 [MMC] Correct mmc_request_done comments mmc_request_done should be called at the end of handling a request, not between the data and initial command parts of the request. Signed-off-by: Russell King commit 98232d504db0a1f91ecaa93686ed3bf61963103b Author: Jens Axboe Date: Thu May 4 09:13:49 2006 +0200 [PATCH] compat_sys_vmsplice: one-off in UIO_MAXIOV check nr_segs may not be > UIO_MAXIOV, however it may be equal to. This makes the behaviour identical to the real sys_vmsplice(). The other foov syscalls also agree that this is the way to go. Signed-off-by: Jens Axboe commit d1a649838802edd94b6335834919463c6ae61f40 Author: Patrick Caulfield Date: Wed May 3 23:36:23 2006 -0700 [DECNET]: Fix level1 router hello This patch fixes hello messages sent when a node is a level 1 router. Slightly contrary to the spec (maybe) VMS ignores hello messages that do not name level2 routers that it also knows about. So, here we simply name all the routers that the node knows about rather just other level1 routers. (I hope the patch is clearer than the description. sorry). Signed-off-by: Patrick Caulfield Signed-off-by: David S. Miller commit 75c2d9077c63ac21488129cc23561d4f4fd0f5e5 Author: Herbert Xu Date: Wed May 3 23:31:35 2006 -0700 [TCP]: Fix sock_orphan dead lock Calling sock_orphan inside bh_lock_sock in tcp_close can lead to dead locks. For example, the inet_diag code holds sk_callback_lock without disabling BH. If an inbound packet arrives during that admittedly tiny window, it will cause a dead lock on bh_lock_sock. Another possible path would be through sock_wfree if the network device driver frees the tx skb in process context with BH enabled. We can fix this by moving sock_orphan out of bh_lock_sock. The tricky bit is to work out when we need to destroy the socket ourselves and when it has already been destroyed by someone else. By moving sock_orphan before the release_sock we can solve this problem. This is because as long as we own the socket lock its state cannot change. So we simply record the socket state before the release_sock and then check the state again after we regain the socket lock. If the socket state has transitioned to TCP_CLOSE in the time being, we know that the socket has been destroyed. Otherwise the socket is still ours to keep. Note that I've also moved the increment on the orphan count forward. This may look like a problem as we're increasing it even if the socket is just about to be destroyed where it'll be decreased again. However, this simply enlarges a window that already exists. This also changes the orphan count test by one. Considering what the orphan count is meant to do this is no big deal. This problem was discoverd by Ingo Molnar using his lock validator. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 82e84249f0ee098e004c8bd6d90a1640bd56cfbb Author: Ralf Baechle Date: Wed May 3 23:28:20 2006 -0700 [ROSE]: Eleminate HZ from ROSE kernel interfaces Convert all ROSE sysctl time values from jiffies to ms as units. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 4d8937d0b113e8ec39f7d18cf13804f3b5fb8fd4 Author: Ralf Baechle Date: Wed May 3 23:27:47 2006 -0700 [NETROM]: Eleminate HZ from NET/ROM kernel interfaces Convert all NET/ROM sysctl time values from jiffies to ms as units. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit e1fdb5b39656ea2be8cadde565e543649a988af9 Author: Ralf Baechle Date: Wed May 3 23:27:16 2006 -0700 [AX.25]: Eleminate HZ from AX.25 kernel interfaces Convert all AX.25 sysctl time values from jiffies to ms as units. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 4cc7c2734e2b4032103e47d8f3e8b6fa3360d3f1 Author: Ralf Baechle Date: Wed May 3 23:26:20 2006 -0700 [ROSE]: Fix routing table locking in rose_remove_neigh. The locking rule for rose_remove_neigh() are that the caller needs to hold rose_neigh_list_lock, so we better don't take it yet again in rose_neigh_list_lock. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 70868eace5031298c6f6e991a40a2106957f582c Author: Ralf Baechle Date: Wed May 3 23:25:17 2006 -0700 [AX.25]: Move AX.25 symbol exports Move AX.25 symbol exports to next to their definitions where they're supposed to be these days. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 3ab33dcc82e014c69ebad3b524d0053378ef76c3 Author: Ralf Baechle DL5RB Date: Wed May 3 23:24:35 2006 -0700 [HAMRADIO]: Remove remaining SET_MODULE_OWNER calls from hamradio drivers. Signed-off-by: Ralf Baechle DL5RB Signed-off-by: David S. Miller commit 86cfcb95ec60e910d7efcb35ae89bf3403befaad Author: Ralf Baechle Date: Wed May 3 23:23:48 2006 -0700 [AX25, ROSE]: Remove useless SET_MODULE_OWNER calls. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 3f072310d0ca85891323e9d325c37c76de389387 Author: Ralf Baechle Date: Wed May 3 23:22:36 2006 -0700 [AX.25]: Spelling fix Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 0cc5ae24af08abe8e2a467f45b54c48a0f52670f Author: Ralf Baechle Date: Wed May 3 23:22:01 2006 -0700 [ROSE]: Remove useless prototype for rose_remove_neigh(). Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 7800007c1e2d42cd4120b87b0ba3f3480f17f30a Author: Patrick McHardy Date: Wed May 3 23:20:27 2006 -0700 [NETFILTER]: x_tables: don't use __copy_{from,to}_user on unchecked memory in compat layer Noticed by Linus Torvalds Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7582e9d17edbabab6cbe59467c5d1b5e8c04fca8 Author: Jing Min Zhao Date: Wed May 3 23:19:59 2006 -0700 [NETFILTER]: H.323 helper: Change author's email address Signed-off-by: Jing Min Zhao Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 2354feaeb2acb78f6aabdf8410d55b44492a7949 Author: Patrick McHardy Date: Wed May 3 23:19:26 2006 -0700 [NETFILTER]: NAT: silence unused variable warnings with CONFIG_XFRM=n net/ipv4/netfilter/ip_nat_standalone.c: In function 'ip_nat_out': net/ipv4/netfilter/ip_nat_standalone.c:223: warning: unused variable 'ctinfo' net/ipv4/netfilter/ip_nat_standalone.c:222: warning: unused variable 'ct' Surprisingly no complaints so far .. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4228e2a9890cd01b0c8cc58af6fd9e08a4b5e8a7 Author: Patrick McHardy Date: Wed May 3 23:17:11 2006 -0700 [NETFILTER]: H.323 helper: fix use of uninitialized data When a Choice element contains an unsupported choice no error is returned and parsing continues normally, but the choice value is not set and contains data from the last parsed message. This may in turn lead to parsing of more stale data and following crashes. Fixes a crash triggered by testcase 0003243 from the PROTOS c07-h2250v4 testsuite following random other testcases: CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00210646 (2.6.17-rc2 #3) EIP is at memmove+0x19/0x22 eax: d7be0307 ebx: d7be0307 ecx: e841fcf9 edx: d7be0307 esi: bfffffff edi: bfffffff ebp: da5eb980 esp: c0347e2c ds: 007b es: 007b ss: 0068 Process events/0 (pid: 4, threadinfo=c0347000 task=dff86a90) Stack: <0>00000006 c0347ea6 d7be0301 e09a6b2c 00000006 da5eb980 d7be003e d7be0052 c0347f6c e09a6d9c 00000006 c0347ea6 00000006 00000000 d7b9a548 00000000 c0347f6c d7b9a548 00000004 e0a1a119 0000028f 00000006 c0347ea6 00000006 Call Trace: [] mangle_contents+0x40/0xd8 [ip_nat] [] ip_nat_mangle_tcp_packet+0xa1/0x191 [ip_nat] [] set_addr+0x60/0x14d [ip_nat_h323] [] q931_help+0x2da/0x71a [ip_conntrack_h323] [] q931_help+0x30c/0x71a [ip_conntrack_h323] [] ip_conntrack_help+0x22/0x2f [ip_conntrack] [] nf_iterate+0x2e/0x5f [] xfrm4_output_finish+0x0/0x39f [] nf_hook_slow+0x42/0xb0 [] xfrm4_output_finish+0x0/0x39f [] xfrm4_output+0x3c/0x4e [] xfrm4_output_finish+0x0/0x39f [] ip_forward+0x1c2/0x1fa [] ip_rcv+0x388/0x3b5 [] netif_receive_skb+0x2bc/0x2ec [] process_backlog+0x6b/0xd0 [] net_rx_action+0x4b/0xb7 [] __do_softirq+0x35/0x7d [] do_softirq+0x38/0x3f Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6fd737031eb6869430d0f3cf6bf1440adf7aedf5 Author: Patrick McHardy Date: Wed May 3 23:16:29 2006 -0700 [NETFILTER]: H.323 helper: fix endless loop caused by invalid TPKT len When the TPKT len included in the packet is below the lowest valid value of 4 an underflow occurs which results in an endless loop. Found by testcase 0000058 from the PROTOS c07-h2250v4 testsuite. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a0548871ed267ae12eb1c860c5aaebd9e466b34e Author: Jens Axboe Date: Wed May 3 10:58:22 2006 +0200 [PATCH] splice: redo page lookup if add_to_page_cache() returns -EEXIST This can happen quite easily, if several processes are trying to splice the same file at the same time. It's not a failure, it just means someone raced with us in allocating this file page. So just dump the allocated page and relookup the original. Signed-off-by: Jens Axboe commit 76ad4d11105ccd40a536db1057083f28326019fd Author: Jens Axboe Date: Wed May 3 10:41:33 2006 +0200 [PATCH] splice: rename remaining info variables to pipe Same thing was done in fs/pipe.c and most of fs/splice.c, but we had a few missing still. Signed-off-by: Jens Axboe commit 1432873af7ae29d4bb3c56114c05b539d078ca62 Author: Jens Axboe Date: Wed May 3 10:35:26 2006 +0200 [PATCH] splice: LRU fixups Nick says that the current construct isn't safe. This goes back to the original, but sets PIPE_BUF_FLAG_LRU on user pages as well as they all seem to be on the LRU in the first place. Signed-off-by: Jens Axboe commit bfc4ee39fdbb2deb8864785d5e5bc5cdd3b31a69 Author: Jens Axboe Date: Wed May 3 10:35:10 2006 +0200 [PATCH] splice: fix unlocking of page on error ->prepare_write() Looking at generic_file_buffered_write(), we need to unlock_page() if prepare write fails and it isn't due to racing with truncate(). Also trim the size if ->prepare_write() fails, if we have to. Signed-off-by: Jens Axboe commit 5dea5176e5c32ef9f0d1a41d28427b3bf6881b3a Author: Mingming Cao Date: Wed May 3 19:55:12 2006 -0700 [PATCH] ext3: multile block allocate little endian fixes Some places in ext3 multiple block allocation code (in 2.6.17-rc3) don't handle the little endian well. This was resulting in *wrong* block numbers being assigned to in-memory block variables and then stored on disk eventually. The following patch has been verified to fix an ext3 filesystem failure when run ltp test on a 64 bit machine. Signed-off-by; Mingming Cao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8683dc9990158c221e05959935e7dd50a956c574 Author: Brent Casavant Date: Wed May 3 19:55:10 2006 -0700 [PATCH] Altix: correct ioc4 port order Currently loading the ioc3 as a module will cause the ports to be numbered in reverse order. This mod maintains the proper order of cards for port numbering. Signed-off-by: Brent Casavant Cc: Pat Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 96941026a51e9cb8c2d2be7499301b7fcd9ee225 Author: mark gross Date: Wed May 3 19:55:07 2006 -0700 [PATCH] EDAC Coexistence with BIOS Address the issue of EDAC/BIOS coexistence for the e752x chip-sets. We have found a problem where the BIOS will start the system with the error registers (dev0:fun1) hidden and assuming it has exclusive access to them. The edac driver violates this assumption. The workaround this patch offers is to honor the hidden-ness as an indication that it is not safe to use those registers. Signed-off-by: Mark Gross Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6760da0197a6ee327a09dafc070b26e2f02651fe Author: Jeff Dike Date: Wed May 3 19:55:03 2006 -0700 [PATCH] uml: change timer initialization inet_init, which schedules, is called before the UML timer_init, which sets up the timer. The result is the interval timers being manipulated before the appropriate signal handlers are established, causing unhandled timers. This is fixed by making timer_init be called earlier. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f0ec5e39765cd254d436a6d86e211d81795952a4 Author: Andi Kleen Date: Wed May 3 19:54:57 2006 -0700 [PATCH] Remove wrong cpu_has_apic checks that came from mismerging We only need to check cpu_has_apic in the IO-APIC/L-APIC parsing, not for all of ACPI. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c45112b823972e9ff7bbca77dc592ca2224951b Author: David S. Miller Date: Wed May 3 13:55:46 2006 -0700 [SPARC]: Hook up vmsplice into syscall tables. Signed-off-by: David S. Miller commit 0b18ac42aa036c7fa217f178aa6a02c66e19e0a1 Author: James Smart Date: Mon May 1 21:50:40 2006 -0400 [SCSI] lpfc 8.1.6 : Fix Data Corruption in Bus Reset Path This patch updates the lpfc driver to revision 8.1.6, which includes the following changes: - Fix data corruption in SCSI BUS reset path, due to reusing the same request structure for each target. - Change version number to 8.1.6 Signed-off-by: James Smart Signed-off-by: James Bottomley commit 6e1cad02763edec83dba8559d4be8d518a6562a5 Author: Eric Moore Date: Tue Apr 25 17:38:58 2006 -0600 [SCSI] mptspi: revalidate negotiation parameters after host reset and resume This is a bug fix for mptspi driver, where after a host reset or resume, we revalidate the negotiation parameters for all devices. This bug was introduced when the driver was ported to use the spi transport layer. Signed-off-by: Eric Moore Signed-off-by: James Bottomley commit 30d55280b867aa0cae99f836ad0181bb0bf8f9cb Author: Stephen Smalley Date: Wed May 3 10:52:36 2006 -0400 [PATCH] selinux: Clear selinux_enabled flag upon runtime disable. Clear selinux_enabled flag upon runtime disable of SELinux by userspace, and make sure it is defined even if selinux= boot parameter support is not enabled in configuration. Signed-off-by: Stephen Smalley Acked-by: James Morris Tested-by: Jon Smirl Acked-by: Al Viro Signed-off-by: Linus Torvalds commit d205819e2346d20fee41297ea6cf789c591abccf Author: Paul Mackerras Date: Wed May 3 23:04:37 2006 +1000 [PATCH] powerpc: Use the ibm,pa-features property if available Forthcoming IBM machines will have a "ibm,pa-features" property on CPU nodes, that contains bits indicating which optional architecture features are implemented by the CPU. This adds code to use the property, if present, to update our CPU feature bitmaps. Note that this means we can both set and clear feature bits based on what the firmware tells us. This is based on a patch by Will Schmidt . Signed-off-by: Paul Mackerras commit 6bfd93c32a5065d0e858780b3beb0b667081601c Author: Paul Mackerras Date: Wed May 3 23:02:04 2006 +1000 powerpc: Fix incorrect might_sleep in __get_user/__put_user on kernel addresses We have a case where __get_user and __put_user can validly be used on kernel addresses in interrupt context - namely, the alignment exception handler, as our get/put_unaligned just do a single access and rely on the alignment exception handler to fix things up in the rare cases where the cpu can't handle it in hardware. Thus we can get alignment exceptions in the network stack at interrupt level. The alignment exception handler does a __get_user to read the instruction and blows up in might_sleep(). Since a __get_user on a kernel address won't actually ever sleep, this makes the might_sleep conditional on the address being less than PAGE_OFFSET. Signed-off-by: Paul Mackerras commit 6e1976961c9bd9a3dc368139fab1883961efc879 Author: Vitaly Bordug Date: Sat Apr 29 23:06:00 2006 +0400 [PATCH] ppc32 CPM_UART: fixes and improvements A number of small issues are fixed, and added the header file, missed from the original series. With this, driver should be pretty stable as tested among both platform-device-driven and "old way" boards. Also added missing GPL statement , and updated year field on existing ones to reflect code update. Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 61f5657c50341198ff05e375e6f1fc0476556562 Author: Vitaly Bordug Date: Sat Apr 29 22:32:44 2006 +0400 [PATCH] ppc32 CPM_UART: Fixed break send on SCC SCC uart sends a break sequence each time it is stopped with the CPM_CR_STOP_TX command. That means that each time an application closes the serial device, a break is transmitted. To fix this, graceful tx stop is issued for SCC. Signed-off-by: David Jander Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 0ccde0a290b44b8296b82a7683b4c299eb51ba6b Author: Ananth N Mavinakayanahalli Date: Fri Apr 28 17:38:42 2006 +0530 [PATCH] powerpc/kprobes: fix singlestep out-of-line We currently single-step inline if the instruction on which a kprobe is inserted is a trap variant. - variants (such as tdnei, used by BUG()) typically evaluate a condition and cause a trap only if the condition is satisfied. - kprobes uses the unconditional "trap" (0x7fe00008) and single-stepping again on this instruction, resulting in another trap without evaluating the condition is obviously incorrect. Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Paul Mackerras commit 054d8ff37710efaebd1998ce94d366df315a354f Author: Linas Vepstas Date: Thu Apr 27 02:31:20 2006 -0700 [PATCH] powerpc/pseries: avoid crash in PCI code if mem system not up The powerpc code is currently performing PCI setup before memory initialization. PCI setup touches PCI config space registers. If the PCI card is bad, this will evoke an error, which currrently can't be handled, as the PCI error recovery code expects kmalloc() to be functional. This patch will cause the system to punt instead of crashing with cpu 0x0: Vector: 300 (Data Access) at [c0000000004434d0] pc: c0000000000c06b4: .kmem_cache_alloc+0x8c/0xf4 lr: c00000000004ad6c: .eeh_send_failure_event+0x48/0xfc This patch will also print name of the offending pci device. Signed-off-by: Linas Vepstas Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Paul Mackerras commit e17df688f7064dae1417ce425dd1e4b71d24d63b Author: Patrick McHardy Date: Tue May 2 23:23:07 2006 +0200 [NETFILTER] SCTP conntrack: fix infinite loop fix infinite loop in the SCTP-netfilter code: check SCTP chunk size to guarantee progress of for_each_sctp_chunk(). (all other uses of for_each_sctp_chunk() are preceded by do_basic_checks(), so this fix should be complete.) Based on patch from Ingo Molnar CVE-2006-1527 Signed-off-by: Patrick McHardy Signed-off-by: Linus Torvalds commit b2556da55f78a9dbe92830b1d1c0b612edfea9fd Author: Uwe Zeisberger Date: Tue May 2 20:40:56 2006 +0100 [ARM] 3488/1: make icedcc_putc do the right thing Patch from Uwe Zeisberger a) use coprocessor 14 b) make reading the dcc status volatile Signed-off-by: Uwe Zeisberger Signed-off-by: Russell King commit ebf34c9b6fcd22338ef764b039b3ac55ed0e297b Author: Ayaz Abdulla Date: Tue May 2 15:26:06 2006 -0400 forcedeth: fix multi irq issues This patch fixes the issues with multiple irqs. I am resending based on feedback. I decoupled the dma mask for consistent memory and fixed leak with multiple irq in error path. Thanks to Manfred for catching the spin lock problem. Signed-Off-By: Ayaz Abdulla commit 3e0d167a6b6e5722d7fadfad9b817f668ab41ec1 Author: Craig Brind Date: Thu Apr 27 02:30:46 2006 -0700 [PATCH] via-rhine: zero pad short packets on Rhine I ethernet cards Fixes Rhine I cards disclosing fragments of previously transmitted frames in new transmissions. Before transmission, any socket buffer (skb) shorter than the ethernet minimum length of 60 bytes was zero-padded. On Rhine I cards the data can later be copied into an aligned transmission buffer without copying this padding. This resulted in the transmission of the frame with the extra bytes beyond the provided content leaking the previous contents of this buffer on to the network. Now zero-padding is repeated in the local aligned buffer if one is used. Following a suggestion from the via-rhine maintainer, no attempt is made here to avoid the duplicated effort of padding the skb if it is known that an aligned buffer will definitely be used. This is to make the change "obviously correct" and allow it to be applied to a stable kernel if necessary. There is no change to the flow of control and the changes are only to the Rhine I code path. The patch has run on an in-service Rhine-I host without incident. Frames shorter than 60 bytes are now correctly zero-padded when captured on a separate host. I see no unusual stats reported by ifconfig, and no unusual log messages. Signed-off-by: Craig Brind Signed-off-by: Roger Luethi Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit b0b8dab288590ede2377a671db0a31380f454541 Author: Olaf Hering Date: Thu Apr 27 18:23:49 2006 -0700 [PATCH] mv643xx_eth: provide sysfs class device symlink On Sat, Mar 11, Olaf Hering wrote: > Why is the /sys/class/net/eth0/device symlink not created for the > mv643xx_eth driver? Does this work for other platform device drivers? > Seems to work for the ps2 keyboard at least. The SET_NETDEV_DEV has to be done before a call to register_netdev. With the new patch below, the device symlink for the platform device was created. Unfortunately, after the 4 ls commands, the network connection died. No idea if the box crashed or if something else broke, lost remote access. Provide sysfs 'device' in /class/net/ethN Also, set module owner field, like pcnet32 driver does. Signed-off-by: Olaf Hering Acked-by: Dale Farnsworth Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit d78e9079af7526c4661ff484322094832776ef41 Author: Russell King Date: Tue May 2 20:18:53 2006 +0100 [MMC] PXA: reduce the number of lines PXAMCI debug uses There's no reason for the PXAMCI debug code to print so many lines - it causes the kernel buffer to overflow when trying to debug this driver. Remove some debug messages which are duplicated by core code, and combine other messages, resulting in fewer characters written to the kernel log. Signed-off-by: Russell King commit 58741e8b3603e56c3699550e8bc89cb136329343 Author: Russell King Date: Tue May 2 20:02:39 2006 +0100 [MMC] PXA and i.MX: don't avoid sending stop command on error Always send a stop command at the end of a data transfer. If we avoid sending the stop command, some cards remain in data transfer mode, and refuse to accept further read/write commands. Signed-off-by: Russell King commit 37be4e7809e0581db85387e126ae4da68c3d6286 Author: Russell King Date: Tue May 2 17:24:59 2006 +0100 [MMC] extend data timeout for writes The CSD contains a "read2write factor" which determines the multiplier to be applied to the read timeout to obtain the write timeout. We were ignoring this parameter, resulting in the possibility for writes being timed out too early. Signed-off-by: Russell King commit d8a5a8d7cc32e4474326e0ecc1b959063490efc9 Author: Russell King Date: Tue May 2 16:04:29 2006 +0100 [SERIAL] 8250: add locking to console write function x86 SMP breaks as a result of the previous change, we have no real option other than to add locking to the 8250 console write function. If an oops is in progress, try to acquire the lock. If we fail to do so, continue anyway. Signed-off-by: Russell King commit 330ab71619bacc4d4494227a6cfc9b7f5500403d Author: Jens Axboe Date: Tue May 2 15:29:57 2006 +0200 [PATCH] vmsplice: restrict stealing a little more Apply the same rules as the anon pipe pages, only allow stealing if no one else is using the page. Signed-off-by: Jens Axboe commit a893b99be71f1d669b74f840e3a683dd077d007b Author: Jens Axboe Date: Tue May 2 15:03:27 2006 +0200 [PATCH] splice: fix page LRU accounting Currently we rely on the PIPE_BUF_FLAG_LRU flag being set correctly to know whether we need to fiddle with page LRU state after stealing it, however for some origins we just don't know if the page is on the LRU list or not. So remove PIPE_BUF_FLAG_LRU and do this check/add manually in pipe_to_file() instead. Signed-off-by: Jens Axboe commit 7591489a8fbee83f19bacc75756989a6a4d0389c Author: Jens Axboe Date: Tue May 2 12:57:18 2006 +0200 [PATCH] vmsplice: fix badly placed end paranthesis We need to use the minium of {len, PAGE_SIZE-off}, not {len, PAGE_SIZE}-off. The latter doesn't make any sense, and could cause us to attempt negative length transfers... Signed-off-by: Jens Axboe commit 46c5ea3c9ae7fbc6e52a13c92e59d4fc7f4ca80a Author: Patrick McHardy Date: Tue May 2 05:12:22 2006 +0200 [NETFILTER] x_tables: fix compat related crash on non-x86 When iptables userspace adds an ipt_standard_target, it calculates the size of the entire entry as: sizeof(struct ipt_entry) + XT_ALIGN(sizeof(struct ipt_standard_target)) ipt_standard_target looks like this: struct xt_standard_target { struct xt_entry_target target; int verdict; }; xt_entry_target contains a pointer, so when compiled for 64 bit the structure gets an extra 4 byte of padding at the end. On 32 bit architectures where iptables aligns to 8 byte it will also have 4 byte padding at the end because it is only 36 bytes large. The compat_ipt_standard_fn in the kernel adjusts the offsets by sizeof(struct ipt_standard_target) - sizeof(struct compat_ipt_standard_target), which will always result in 4, even if the structure from userspace was already padded to a multiple of 8. On x86 this works out by accident because userspace only aligns to 4, on all other architectures this is broken and causes incorrect adjustments to the size and following offsets. Thanks to Linus for lots of debugging help and testing. Signed-off-by: Patrick McHardy Signed-off-by: Linus Torvalds commit 6ba815ded3fef03e888a9fc8eae3113938ff5349 Author: Shaohua Li Date: Mon May 1 12:16:19 2006 -0700 [PATCH] timer TSC check suspend notifier change At suspend time, the TSC CPUFREQ_SUSPENDCHANGE notifier change might wrongly enable interrupt. cpufreq driver suspend/resume is in interrupt disabled environment. Signed-off-by: Shaohua Li Cc: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 160bd18e5e545cbb4e5c26f54414485f8ac291ec Author: Mikael Pettersson Date: Mon May 1 12:16:18 2006 -0700 [PATCH] x86_64: make PC Speaker driver work The PC Speaker driver's ->probe() routine doesn't even get called in the 64-bit kernels. The reason for that is that the arch code apparently has to explictly add a "pcspkr" platform device in order for the driver core to call the ->probe() routine. arch/i386/kernel/setup.c unconditionally adds a "pcspkr" device, but the x86_64 kernel has no code at all related to the PC Speaker. The patch below copies the relevant code from i386 to x86_64, which makes the PC Speaker work for me on x86_64. Cc: Dmitry Torokhov Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3537ea7b9c2f10397a8b68cd006981d7c615431 Author: Atsushi Nemoto Date: Mon May 1 12:16:17 2006 -0700 [PATCH] genrtc: fix read on 64-bit platforms Fix genrtc's read() routine for 64-bit platforms. Current gen_rtc_read() stores 64bit integer and returns 8 even if an user tried to read a 32bit integer. Signed-off-by: Atsushi Nemoto Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3418ff76119da52f808eb496191d1fd380f53f3d Author: Atsushi Nemoto Date: Mon May 1 12:16:16 2006 -0700 [PATCH] RTC: rtc-dev tweak for 64-bit kernel Make rtc-dev work well on 64-bit platforms with 32-bit userland. On those platforms, users might try to read 32-bit integer value. This patch make rtc-dev's read() work well for both "int" and "long" size. This tweak is came from genrtc driver. Signed-off-by: Atsushi Nemoto Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b44df334a7e909d88cf5c54cc0481b4e2eaeca23 Author: Heiko Carstens Date: Mon May 1 12:16:15 2006 -0700 [PATCH] s390: bug in setup_rt_frame Consider return value of __put_user() when setting up a signal frame instead of ignoring it. Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 022e4fc0fb2e4e179aaba4ee139dcb8fded0cba2 Author: Heiko Carstens Date: Mon May 1 12:16:14 2006 -0700 [PATCH] s390: fix ipd handling As pointed out by Paulo Marques MAX_IPD_TIME is by a factor of ten too small. Since this means that we allow ten times more IPDs in the intended time frame this could result in a cpu check stop of a physical cpu. Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8261aa600943046a5305564a1cd7432009971799 Author: Jeremy Kerr Date: Mon May 1 12:16:13 2006 -0700 [PATCH] powerpc: cell: Add numa id to struct spu Add an nid member to the spu structure, and store the numa id of the spu there on creation. Signed-off-by: Arnd Bergmann Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 953039c8df7beb2694814e20e2707a77d335a2e3 Author: Jeremy Kerr Date: Mon May 1 12:16:12 2006 -0700 [PATCH] powerpc: Allow devices to register with numa topology Change of_node_to_nid() to traverse the device tree, looking for a numa id. Cell uses this to assign ids to SPUs, which are children of the CPU node. Existing users of of_node_to_nid() are altered to use of_node_to_nid_single(), which doesn't do the traversal. Export an attach_sysdev_to_node() function, allowing system devices (eg. SPUs) to link themselves into the numa topology in sysfs. Signed-off-by: Arnd Bergmann Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bed120c64eb07b6838bb758109811484af8cebba Author: Joel H Schopp Date: Mon May 1 12:16:11 2006 -0700 [PATCH] spufs: fix for CONFIG_NUMA Based on an older patch from Mike Kravetz We need to have a mem_map for high addresses in order to make fops->no_page work on spufs mem and register files. So far, we have used the memory_present() function during early bootup, but that did not work when CONFIG_NUMA was enabled. We now use the __add_pages() function to add the mem_map when loading the spufs module, which is a lot nicer. Signed-off-by: Arnd Bergmann Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46a66eecdf7bc12562ecb492297447ed0e1ecf59 Author: Mike Kravetz Date: Mon May 1 12:16:09 2006 -0700 [PATCH] sparsemem interaction with memory add bug fixes This patch fixes two bugs with the way sparsemem interacts with memory add. They are: - memory leak if memmap for section already exists - calling alloc_bootmem_node() after boot These bugs were discovered and a first cut at the fixes were provided by Arnd Bergmann and Joel Schopp . Signed-off-by: Mike Kravetz Signed-off-by: Joel Schopp Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2c43630fb0ff3f01c29367248ffa4a851e2c9b34 Author: Pat Gefre Date: Mon May 1 12:16:08 2006 -0700 [PATCH] Altix: correct ioc3 port order Currently loading the ioc3 as a module will cause the ports to be numbered in reverse order. This mod maintains the proper order of cards for port numbering. Signed-off-by: Patrick Gefre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4c28f81193b6778f7b49090930d88e6d12bcb928 Author: Christoph Lameter Date: Mon May 1 12:16:08 2006 -0700 [PATCH] page migration: Fix fallback behavior for dirty pages Currently we check PageDirty() in order to make the decision to swap out the page. However, the dirty information may be only be contained in the ptes pointing to the page. We need to first unmap the ptes before checking for PageDirty(). If unmap is successful then the page count of the page will also be decreased so that pageout() works properly. This is a fix necessary for 2.6.17. Without this fix we may migrate dirty pages for filesystems without migration functions. Filesystems may keep pointers to dirty pages. Migration of dirty pages can result in the filesystem keeping pointers to freed pages. Unmapping is currently not be separated out from removing all the references to a page and moving the mapping. Therefore try_to_unmap will be called again in migrate_page() if the writeout is successful. However, it wont do anything since the ptes are already removed. The coming updates to the page migration code will restructure the code so that this is no longer necessary. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4b741e380cb56045ccea36f2dbc10e42af21f24 Author: Jeff Dike Date: Mon May 1 12:16:06 2006 -0700 [PATCH] uml: uml-makefile-nicer uses SYMLINK incorrectly Blaisorblade's uml-makefile-nicer makes a V=0 build say SYMLINK where what's happening is really a LINK. Signed-off-by: Jeff Dike Acked-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cead61a6717a9873426b08d73a34a325e3546f5d Author: Paolo 'Blaisorblade' Giarrusso Date: Mon May 1 12:16:06 2006 -0700 [PATCH] uml: export symbols added by GCC hardened GCC hardened introduces additional symbol refererences (for the canary and friends), also in modules - add weak export_symbols for them. We already tested that the weak declaration creates no problem on both GCC's providing the function definition and on GCC's which don't provide it. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b12b9137930eb821b68e1bfa11e9de692208620 Author: Paolo 'Blaisorblade' Giarrusso Date: Mon May 1 12:16:05 2006 -0700 [PATCH] uml: cleanup unprofile expression and build infrastructure *) Rather than duplicate in various buggy ways the application of CFLAGS_NO_HARDENING and UNPROFILE (which apply to the same files), centralize it in Makefile.rules. UNPROFILE_OBJS mustn't be listed in USER_OBJS but are compiled as such. I've also verified that unprofile didn't work in the current form, because we set _c_flags directly (using CFLAGS and not USER_CFLAGS, which is wrong), which is normally used by c_flags, but we also override c_flags for all USER_OBJS, and there we don't call unprofile. Instead it only worked for unmap.o, the only one which wasn't a USER_OBJ. We need to set c_flags (which is not a public Kbuild API) to clear a lot of compilation flags like -nostdinc which Kbuild forces on everything. *) Rather than $(CFLAGS_$(notdir $@)), which expands to CFLAGS_anObj.s when building "anObj.s", use $(CFLAGS_$(*F).o) which always accesses CFLAGS_anObj.o, like done by Kbuild. *) Make c_flags apply to all targets having the same basename, rather than listing .s, .i, .lst and .o, with the use (which I tested) of $(USER_OBJS:.o=.%): c_flags = ... and of - $(obj)/unmap.c: _c_flags = ... + $(obj)/unmap.%: _c_flags = ... Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 275e6e1ee2bafde77e9390b27e876fa83f24cb60 Author: Paolo 'Blaisorblade' Giarrusso Date: Mon May 1 12:16:04 2006 -0700 [PATCH] uml: fix compilation and execution with hardened GCC To make some half-assembly stubs compile, disable various "hardened" GCC features: *) we can't make it build PIC code as we need %ebx to do syscalls and GCC wants it free for PIC *) we can't leave stack protection as the stub is moved (not relocated!) in memory so the RIP-relative access to the canary tries reading from an unmapped address and causes a segfault, since we move the stub of various megabytes (the exact amount will be decided at runtime) away from the link-time address. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb8aa3d29b562e4c16fdfa4ecc8170ddc55397f4 Author: Paolo 'Blaisorblade' Giarrusso Date: Mon May 1 12:16:03 2006 -0700 [PATCH] uml: use Kbuild tracking for all files and fix compilation output Move the build of user-offsets to arch/um/sys-$(SUBARCH), where it's located. So we can also build it via Kbuild with its dependency tracking rather than by hand. While hacking here, fix also a lot of little cosmetic things. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb98cdcd0dd892dcaec7dabd57c3b00890006b61 Author: Mattia Dongili Date: Mon May 1 12:16:01 2006 -0700 [PATCH] uml: search from uml_net in a more reasonable PATH Append /usr/lib/uml to the existing PATH environment variable to let execvp() search uml_net in FHS compliant locations. Signed-off-by: Mattia Dongili Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b15fb6b157b83ce983e42130ab7d1a866020d8f5 Author: Paolo 'Blaisorblade' Giarrusso Date: Mon May 1 12:16:01 2006 -0700 [PATCH] uml: fix patch mismerge I sent a patch, it was applied as cda402b283c34a24b091f78eee116963e9494762, then it was applied again as 181ae4005d0a4010802be534d929b38c42b9ac06 by mistake. But while the 1st time it modified (correctly) cow_header_v3, the 2nd it modified cow_header_v3_broken. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Acked-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2ace87b9502d922397cabaf07d73e0b60c480ecf Author: Jeff Dike Date: Mon May 1 12:16:00 2006 -0700 [PATCH] uml: error handling fixes Blairsorblade noticed some confusion between our use of a system call's return value and errno. This patch fixes a number of related bugs - using errno instead of a return value using a return value instead of errno forgetting to negate a error return to get a positive error code Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 347b3dc2faf34d63a96b41e3244b743cc72a2aa0 Author: Jeff Dike Date: Mon May 1 12:15:59 2006 -0700 [PATCH] uml: update defconfig Bring defconfig up to date. Also disable CONFIG_BLK_DEV_UBD_SYNC by default. By performing synchronous I/O to the host, it slows things down, only protects against host crashes, and can make a UML appear to hang while it waits for the host's disk. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3104f50d89b1fffe1fd973e32248a5c7f1bb41e Author: Jeff Dike Date: Mon May 1 12:15:58 2006 -0700 [PATCH] uml: clean up after MADVISE_REMOVE The MADVISE_REMOVE-checking code didn't clean up after itself. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 191ef966ac164a1ce3e06290ca52296744a4aee2 Author: Jesper Juhl Date: Mon May 1 12:15:57 2006 -0700 [PATCH] uml: remove NULL checks and add some CodingStyle Remove redundant NULL checks before [kv]free + small CodingStyle cleanup for arch/ Signed-off-by: Jesper Juhl Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 893bb96a29bee4a5cf2486720ac79412aaee5066 Author: Joris van Rantwijk Date: Mon May 1 12:15:56 2006 -0700 [PATCH] uml: skas0 support for 2G/2G hosts A quick hack to allow skas0 mode to run on 2G/2G hosts. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c39e50b4bada27102306d7fa68ea35dc4e61bd68 Author: Victor V. Vengerov Date: Mon May 1 12:15:53 2006 -0700 [PATCH] uml: fix iomem list traversal We need to walk the region list properly. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3a19cb45f4730c4ce09ca9bccf197efd010dc3b Author: Andrew Morton Date: Mon May 1 12:15:52 2006 -0700 [PATCH] silence initcall warnings Suppress the initcall-return-value warnings unless initcall_debug was specified. They do find bugs, but they're extremely small ones and as Andi points out, people get distressed. Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42e4c8585f8cbbfac3b70aa2d0a4f869509a0354 Author: Andi Kleen Date: Mon May 1 12:15:51 2006 -0700 [PATCH] i386: Remove apic= warning The apic= option can be used to set the APIC driver too. When that is done this code would always produce bogus warnings. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5871aa6d5a98f315016d1deee07425c269c37f29 Author: Andi Kleen Date: Mon May 1 12:15:50 2006 -0700 [PATCH] i386: Fix overflow in e820_all_mapped The 32bit version of e820_all_mapped() needs to use u64 to avoid overflows on PAE systems. Pointed out by Jan Beulich Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32828546b32a96d550b85eab25609bc4ba3942ab Author: Andi Kleen Date: Mon May 1 12:15:49 2006 -0700 [PATCH] i386/x86-64: Fix ACPI disabled LAPIC handling mismerge The patch I submitted earlier to fix disabled LAPIC handling in ACPI was mismerged for some reason I still don't quite understand. Parts of it was applied to the wrong function. This patch fixes it up. Cc: Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2610202290b4924b71747314a0f88f28807702e Author: Andi Kleen Date: Mon May 1 12:15:48 2006 -0700 [PATCH] x86_64: Add compat_sys_vmsplice and use it in x86-64 Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e7dd2ab6b9bdfa60e19b8739e6b2a204fd4f477 Author: NeilBrown Date: Mon May 1 12:15:47 2006 -0700 [PATCH] md: Fix 'rdev->nr_pending' count when retrying barrier requests When retrying a failed BIO_RW_BARRIER request, we need to keep the reference in ->nr_pending over the whole retry. Currently, we only hold the reference if the failed request is the *last* one to finish - which is silly, because it would normally be the first to finish. So move the rdev_dec_pending call up into the didn't-fail branch. As the rdev isn't used in the later code, calling rdev_dec_pending earlier doesn't hurt. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 62de608da0b0ab17d81a233b50d1e952b9816f69 Author: NeilBrown Date: Mon May 1 12:15:47 2006 -0700 [PATCH] md: Improve detection of lack of barrier support in raid1 Move the test for 'do barrier work' down a bit so that if the first write to a raid1 is a BIO_RW_BARRIER write, the checking done by superblock writes will cause the right thing to happen. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bea2771871ed1084c9a85ed0c86340f188505702 Author: NeilBrown Date: Mon May 1 12:15:46 2006 -0700 [PATCH] md: Change ENOTSUPP to EOPNOTSUPP Because that is what you get if a BIO_RW_BARRIER isn't supported! Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0a33270ed0e8e00cbb882a33d21e1f92aac0ceb Author: NeilBrown Date: Mon May 1 12:15:45 2006 -0700 [PATCH] md: Fixed refcounting/locking when attempting read error correction in raid10 We need to hold a reference to rdevs while reading and writing to attempt to correct read errors. This reference must be taken under an rcu lock. Signed-off-by: Neil Brown Cc: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df30d0f4ca3c41b60068232d6de9d58be88436f0 Author: NeilBrown Date: Mon May 1 12:15:44 2006 -0700 [PATCH] md: Avoid oops when attempting to fix read errors on raid10 We should add to the counter for the rdev *after* checking if the rdev is NULL!!! Signed-off-by: Neil Brown Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 235acec78e87a60ace01d1ecb4b87ad1d689715a Author: Bastian Blank Date: Mon May 1 12:15:42 2006 -0700 [PATCH] s390: make qeth buildable Signed-off-by: Bastian Blank Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: "David S. Miller" Acked-by: Jeff Garzik Acked-by: Frank Pavlic Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6f0413e10b76440fb82efebc63120f3b6d42adb Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:09 2006 -0700 IB/ipath: tidy up white space in a few files Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit d562a5ae69bd5643d777788117d02acb22fab347 Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:08 2006 -0700 IB/ipath: fix label name in interrupt handler Names that are the opposite of their intended meanings are not so helpful. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit ae15f540cc52acbcbfdf4b902d214a5db5c835d2 Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:07 2006 -0700 IB/ipath: improve sparse annotation Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 9b2017f1e1c95625b2ca2a1ec5317097117d7078 Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:06 2006 -0700 IB/ipath: simplify IB timer usage Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 76f0dd141b477094b026206c0d8c21beac6069f5 Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:05 2006 -0700 IB/ipath: simplify RC send posting Remove some unnecessarily complicated tests. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit c71c30dcba142f16bc5f651812b1bc0b9f70f02d Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:03 2006 -0700 IB/ipath: prevent hardware from being accessed during reset The reset code now turns off the PRESENT flag during a reset, so that other code won't attempt to access a device that's in mid-reset. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit fccea663643cedfa310c5254da30e1e35e09199b Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:02 2006 -0700 IB/ipath: fix verbs registration Remember when the verbs layer unregisters from the lower-level code. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 52e7fad825c47fb86801f23b9f793da1d2774f18 Author: Bryan O'Sullivan Date: Mon Apr 24 14:23:00 2006 -0700 IB/ipath: change handling of PIO buffers Different ipath hardware types have different numbers of buffers available, so we decide on the counts ourselves unless we are specifically overridden with a module parameter. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 23e86a4584606a08393e0ad3a5ca27b19a3de374 Author: Bryan O'Sullivan Date: Mon Apr 24 14:22:59 2006 -0700 IB/ipath: iterate over correct number of ports during reset Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 68dd43a162b43218d2e5ac1d139c1d53da965f54 Author: Bryan O'Sullivan Date: Mon Apr 24 14:22:58 2006 -0700 IB/ipath: set up 32-bit DMA mask if 64-bit setup fails Some systems do not set up 64-bit maps on systems with 2GB or less of memory installed, so we have to fall back to trying a 32-bit setup. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 755e4ca4a9885b79a14169ab5b615920eb38a32a Author: Bryan O'Sullivan Date: Mon Apr 24 14:22:57 2006 -0700 IB/ipath: fix race with exposing reset file We were accidentally exposing the "reset" sysfs file more than once per device. Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier commit 7afa6fd037e51e95d322990cb127bb2b1217251a Author: Jens Axboe Date: Mon May 1 20:02:33 2006 +0200 [PATCH] vmsplice: allow user to pass in gift pages If SPLICE_F_GIFT is set, the user is basically giving this pages away to the kernel. That means we can steal them for eg page cache uses instead of copying it. The data must be properly page aligned and also a multiple of the page size in length. Signed-off-by: Jens Axboe commit f6762b7ad8edd6abc802542ce845d3bc8adcb92f Author: Jens Axboe Date: Mon May 1 20:02:05 2006 +0200 [PATCH] pipe: enable atomic copying of pipe data to/from user space The pipe ->map() method uses kmap() to virtually map the pages, which is both slow and has known scalability issues on SMP. This patch enables atomic copying of pipe pages, by pre-faulting data and using kmap_atomic() instead. lmbench bw_pipe and lat_pipe measurements agree this is a Good Thing. Here are results from that on a UP machine with highmem (1.5GiB of RAM), running first a UP kernel, SMP kernel, and SMP kernel patched. Vanilla-UP: Pipe bandwidth: 1622.28 MB/sec Pipe bandwidth: 1610.59 MB/sec Pipe bandwidth: 1608.30 MB/sec Pipe latency: 7.3275 microseconds Pipe latency: 7.2995 microseconds Pipe latency: 7.3097 microseconds Vanilla-SMP: Pipe bandwidth: 1382.19 MB/sec Pipe bandwidth: 1317.27 MB/sec Pipe bandwidth: 1355.61 MB/sec Pipe latency: 9.6402 microseconds Pipe latency: 9.6696 microseconds Pipe latency: 9.6153 microseconds Patched-SMP: Pipe bandwidth: 1578.70 MB/sec Pipe bandwidth: 1579.95 MB/sec Pipe bandwidth: 1578.63 MB/sec Pipe latency: 9.1654 microseconds Pipe latency: 9.2266 microseconds Pipe latency: 9.1527 microseconds Signed-off-by: Jens Axboe commit e27dedd84c119e2f7af54fcde3293be5ad812103 Author: Jens Axboe Date: Mon May 1 19:59:54 2006 +0200 [PATCH] splice: call handle_ra_miss() on failure to lookup page Notify the readahead logic of the missing page. Suggested by Oleg Nesterov. Signed-off-by: Jens Axboe commit 7f9c51f0d9783c78db5c2aa16806d0c256ac667f Author: Jens Axboe Date: Mon May 1 19:59:32 2006 +0200 [PATCH] Add ->splice_read/splice_write to def_blk_fops It can use the generic handlers. Signed-off-by: Jens Axboe commit f84d751994441292593523c7069ed147176f6cab Author: Jens Axboe Date: Mon May 1 19:59:03 2006 +0200 [PATCH] pipe: introduce ->pin() buffer operation The ->map() function is really expensive on highmem machines right now, since it has to use the slower kmap() instead of kmap_atomic(). Splice rarely needs to access the virtual address of a page, so it's a waste of time doing it. Introduce ->pin() to take over the responsibility of making sure the page data is valid. ->map() is then reduced to just kmap(). That way we can also share a most of the pipe buffer ops between pipe.c and splice.c Signed-off-by: Jens Axboe commit 0568b409c74f7a125d92a09a3f386785700ef688 Author: Jens Axboe Date: Mon May 1 19:50:48 2006 +0200 [PATCH] splice: fix bugs in pipe_to_file() Found by Oleg Nesterov , fixed by me. - Only allow full pages to go to the page cache. - Check page != buf->page instead of using PIPE_BUF_FLAG_STOLEN. - Remember to clear 'stolen' if add_to_page_cache() fails. And as a cleanup on that: - Make the bottom fall-through logic a little less convoluted. Also make the steal path hold an extra reference to the page, so we don't have to differentiate between stolen and non-stolen at the end. Signed-off-by: Jens Axboe commit 254abfd33a214617deb916585b306faee834c97f Author: Roland Dreier Date: Mon May 1 10:40:23 2006 -0700 IB/mthca: Fix offset in query_gid method GuidInfo records have 8 byte GUIDs in them, so an index should be multiplied by 8 to get an offset. mthca_query_gid() was incorrectly multiplying by 16. Noticed by Leonid Keller . Signed-off-by: Roland Dreier commit 2ad312d2093ae506ae0fa184d8d026b559083087 Author: Steve Grubb Date: Tue Apr 11 08:50:56 2006 -0400 [PATCH] Audit Filter Performance While testing the watch performance, I noticed that selinux_task_ctxid() was creeping into the results more than it should. Investigation showed that the function call was being called whether it was needed or not. The below patch fixes this. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit 073115d6b29c7910feaa08241c6484637f5ca958 Author: Steve Grubb Date: Sun Apr 2 17:07:33 2006 -0400 [PATCH] Rework of IPC auditing 1) The audit_ipc_perms() function has been split into two different functions: - audit_ipc_obj() - audit_ipc_set_perm() There's a key shift here... The audit_ipc_obj() collects the uid, gid, mode, and SElinux context label of the current ipc object. This audit_ipc_obj() hook is now found in several places. Most notably, it is hooked in ipcperms(), which is called in various places around the ipc code permforming a MAC check. Additionally there are several places where *checkid() is used to validate that an operation is being performed on a valid object while not necessarily having a nearby ipcperms() call. In these locations, audit_ipc_obj() is called to ensure that the information is captured by the audit system. The audit_set_new_perm() function is called any time the permissions on the ipc object changes. In this case, the NEW permissions are recorded (and note that an audit_ipc_obj() call exists just a few lines before each instance). 2) Support for an AUDIT_IPC_SET_PERM audit message type. This allows for separate auxiliary audit records for normal operations on an IPC object and permissions changes. Note that the same struct audit_aux_data_ipcctl is used and populated, however there are separate audit_log_format statements based on the type of the message. Finally, the AUDIT_IPC block of code in audit_free_aux() was extended to handle aux messages of this new type. No more mem leaks I hope ;-) Signed-off-by: Al Viro commit ce29b682e228c70cdc91a1b2935c5adb2087bab8 Author: Steve Grubb Date: Sat Apr 1 18:29:34 2006 -0500 [PATCH] More user space subject labels Hi, The patch below builds upon the patch sent earlier and adds subject label to all audit events generated via the netlink interface. It also cleans up a few other minor things. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit e7c3497013a7e5496ce3d5fd3c73b5cf5af7a56e Author: Steve Grubb Date: Mon Apr 3 09:08:13 2006 -0400 [PATCH] Reworked patch for labels on user space messages The below patch should be applied after the inode and ipc sid patches. This patch is a reworking of Tim's patch that has been updated to match the inode and ipc patches since its similar. [updated: > Stephen Smalley also wanted to change a variable from isec to tsec in the > user sid patch. ] Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit 9c7aa6aa74fa8a5cda36e54cbbe4fffe0214497d Author: Steve Grubb Date: Fri Mar 31 15:22:49 2006 -0500 [PATCH] change lspp ipc auditing Hi, The patch below converts IPC auditing to collect sid's and convert to context string only if it needs to output an audit record. This patch depends on the inode audit change patch already being applied. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit 1b50eed9cac0e8e5e4d3a522d8aa267f7f8f8acb Author: Steve Grubb Date: Mon Apr 3 14:06:13 2006 -0400 [PATCH] audit inode patch Previously, we were gathering the context instead of the sid. Now in this patch, we gather just the sid and convert to context only if an audit event is being output. This patch brings the performance hit from 146% down to 23% Signed-off-by: Al Viro commit 3dc7e3153eddfcf7ba8b50628775ba516e5f759f Author: Darrel Goeddel Date: Fri Mar 10 18:14:06 2006 -0600 [PATCH] support for context based audit filtering, part 2 This patch provides the ability to filter audit messages based on the elements of the process' SELinux context (user, role, type, mls sensitivity, and mls clearance). It uses the new interfaces from selinux to opaquely store information related to the selinux context and to filter based on that information. It also uses the callback mechanism provided by selinux to refresh the information when a new policy is loaded. Signed-off-by: Al Viro commit 376bd9cb357ec945ac893feaeb63af7370a6e70b Author: Darrel Goeddel Date: Fri Feb 24 15:44:05 2006 -0600 [PATCH] support for context based audit filtering The following patch provides selinux interfaces that will allow the audit system to perform filtering based on the process context (user, role, type, sensitivity, and clearance). These interfaces will allow the selinux module to perform efficient matches based on lower level selinux constructs, rather than relying on context retrievals and string comparisons within the audit module. It also allows for dominance checks on the mls portion of the contexts that are impossible with only string comparisons. Signed-off-by: Darrel Goeddel Signed-off-by: Al Viro commit 97e94c453073a2aba4bb5e0825ddc5e923debf11 Author: Al Viro Date: Wed Mar 29 20:26:24 2006 -0500 [PATCH] no need to wank with task_lock() and pinning task down in audit_syscall_exit() Signed-off-by: Al Viro commit 5411be59db80333039386f3b1ccfe5eb9023a916 Author: Al Viro Date: Wed Mar 29 20:23:36 2006 -0500 [PATCH] drop task argument of audit_syscall_{entry,exit} ... it's always current, and that's a good thing - allows simpler locking. Signed-off-by: Al Viro commit e495149b173d8e133e1f6f2eb86fd97be7e92010 Author: Al Viro Date: Wed Mar 29 20:17:10 2006 -0500 [PATCH] drop gfp_mask in audit_log_exit() now we can do that - all callers are process-synchronous and do not hold any locks. Signed-off-by: Al Viro commit fa84cb935d4ec601528f5e2f0d5d31e7876a5044 Author: Al Viro Date: Wed Mar 29 20:30:19 2006 -0500 [PATCH] move call of audit_free() into do_exit() Signed-off-by: Al Viro commit d6fe3945b42d09a1eca7ad180a1646e585b8594f Author: Steve Grubb Date: Thu Mar 30 12:20:22 2006 -0500 [PATCH] sockaddr patch On Thursday 23 March 2006 09:08, John D. Ramsdell wrote: > I noticed that a socketcall(bind) and socketcall(connect) event contain a > record of type=SOCKADDR, but I cannot see one for a system call event > associated with socketcall(accept). Recording the sockaddr of an accepted > socket is important for cross platform information flow analys Thanks for pointing this out. The following patch should address this. Signed-off-by: Steve Grubb Signed-off-by: Al Viro commit 45d9bb0e37668b7c64d1e49e98fbc4733c23b334 Author: Al Viro Date: Wed Mar 29 20:02:55 2006 -0500 [PATCH] deal with deadlocks in audit_free() Don't assume that audit_log_exit() et.al. are called for the context of current; pass task explictly. Signed-off-by: Al Viro commit c9f2946fbec88d4baa3a6d47eb3a8e6b08b05cd9 Author: David S. Miller Date: Sun Apr 30 22:54:27 2006 -0700 [SPARC64]: Disable preemption during flush_tlb_pending(). A context switch will force a call to flush_tlb_pending() (via switch_to()), so if we test tlb_nr to be non-zero, then sleep, it would become zero and later back at the original context we'll pass zero down into the TLB flushing code which should never see a nr argument of zero. Signed-off-by: David S. Miller commit 1241140f5183db38393556832198a3b109bf9085 Author: David S. Miller Date: Sun Apr 30 21:40:13 2006 -0700 [SPARC64]: Kill __flush_tlb_page() prototype. This function no longer exists. Signed-off-by: David S. Miller commit cc873e1aa1fa916a485294117a9846e668505671 Author: Sam Ravnborg Date: Sun Apr 30 23:59:16 2006 +0200 kbuild: drivers/video/logo/ - fix ident glitch Jan Engelhardt wrote: while compiling 2.6.17-rc2 with allyesconfig, this showed up: ... LOGO drivers/video/logo/logo_superh_clut224.c CC drivers/video/logo/logo_linux_mono.o ... A tab had sneaked in. Convert it to a few spaces. Signed-off-by: Sam Ravnborg commit 46ed981d5d203703a01137cc58c841d34e90c147 Author: Sam Ravnborg Date: Sun Apr 30 23:56:33 2006 +0200 kbuild: fix gen_initramfs_list.sh Create correct dependencies when specifying your own file with list of files etc. to include in initramfs. Reported by: Andre Noll Signed-off-by: Sam Ravnborg commit 72ee59b5797e5d6fe32b5cf3473660a50a02db40 Author: Randy Dunlap Date: Sat Apr 15 11:17:12 2006 -0700 kbuild modpost - relax driver data name Relax driver data name from *_driver to *driver. This fixes the 26 section mismatch warnings in drivers/ide/pci. Signed-off-by: Randy Dunlap Signed-off-by: Sam Ravnborg commit fca1dff218163ffd34d1e9e0b9b244e8c8803601 Author: Pavel Roskin Date: Mon Apr 24 15:55:27 2006 -0400 kbuild: removing .tmp_versions considered harmful Remove *.mod files but not .tmp_versions for external builds When "make install" is run as root, .tmp_versions is re-created and becomes owned by root. Subsequent "make" run by user fails because .tmp_versions cannot be removed. Signed-off-by: Pavel Roskin Signed-off-by: Sam Ravnborg commit c8d8b837ebe4b4f11e1b0c4a2bdc358c697692ed Author: Atsushi Nemoto Date: Tue Apr 25 01:53:43 2006 +0900 kbuild: fix modpost segfault for 64bit mipsel kernel 64bit mips has different r_info layout. This patch fixes modpost segfault for 64bit little endian mips kernel. Signed-off-by: Atsushi Nemoto Signed-off-by: Sam Ravnborg commit 46e678c96bbd775abd05d3ddbe2fd334794f9157 Author: Jens Axboe Date: Sun Apr 30 16:36:32 2006 +0200 [PATCH] splice: fix bugs with stealing regular pipe pages - Check that page has suitable count for stealing in the regular pipes. - pipe_to_file() assumes that the page is locked on succesful steal, so do that in the pipe steal hook - Missing unlock_page() in add_to_page_cache() failure. Signed-off-by: Jens Axboe commit 81d38428df26377c91e7e193aa4d2fdfdcda300a Author: Pavel Pisa Date: Sun Apr 30 15:35:54 2006 +0100 [ARM] 3485/1: i.MX: MX1 SD/MMC fix of unintentional double start possibility Patch from Pavel Pisa The clock starting imxmci_start_clock() function contains hardware issue workaround, which repeats start attempt, if SDHC does not react on the first trial. But the second start attempt can be taken even, if the first succeed and test code misses time limited clock running phase due to delay caused by schedule to other task or some another device interrupt. This change enables to detect such situation. The performance is not issue, because usually at full clock rate only about six loops in delay cycle are needed. Signed-off-by: Pavel Pisa Acked-by: Sascha Hauer Signed-off-by: Russell King commit 76bbb00288e569e7bd9ec18f45e4f814352260dd Author: Deepak Saxena Date: Sun Apr 30 15:34:29 2006 +0100 [ARM] 3487/1: IXP4xx: Support non-PCI systems Patch from Deepak Saxena This patch allows for the addition of IXP4xx systems that do not make use of the PCI interface by moving the CONFIG_PCI symbol selection to be platform-specific instead of for all of IXP4xx. If at least one machine with PCI support is built, the PCI code will be compiled in, but when building !PCI, this will drastically shrink the kernel size. Signed-off-by: Deepak Saxena Signed-off-by: Russell King commit cd95842ca0ffb0e3df3b459832a60f9f4544ed9e Author: Markus Gutschke Date: Sun Apr 30 15:34:29 2006 +0100 [ARM] 3486/1: Mark memory as clobbered by the ARM _syscallX() macros Patch from Markus Gutschke In order to prevent gcc from making incorrect optimizations, all asm() statements that define system calls should report memory as clobbered. Recent versions of the headers for i386 have been changed accordingly, but the ARM headers are still defective. This patch fixes the bug tracked at http://bugzilla.kernel.org/show_bug.cgi?id=6205 Signed-off-by: Markus Gutschke Signed-off-by: Russell King commit a88d75b257b2b28b26d7d4d2b640f05feb00ad53 Author: Russell King Date: Sun Apr 30 11:30:15 2006 +0100 [SERIAL] Remove unconditional enable of TX irq for console A bug report from Gerd Hoffmann has highlighted that unconditionally enabling the transmit interrupt at the end of console writes is very bad. In Gerd's case, it causes the test for buggy UARTs to give false positives, incorrectly identifying ports as buggy when they are not. Moreover, if we unconditionally enable the interrupt, and the port is sharing it's interrupt with other ports, there is the very real possibility that we'll cause an interrupt storm. (Not all ports use OUT2 as an interrupt mask.) Hence, revert part of f91a3715db2bb44fcf08cec642e68f919b70f7f4 and all of f5968b37b3ad35b682b574b578843a0361218aff until a better solution can be found. Signed-off-by: Russell King commit b32b19b8ffc05cbd3bf91c65e205f6a912ca15d9 Author: Jon Anders Haugum Date: Sun Apr 30 11:20:56 2006 +0100 [SERIAL] 8250: set divisor register correctly for AMD Alchemy SoC uart Alchemy SoC uart have got a non-standard divisor register that needs some special handling. This patch adds divisor read/write functions with test and special handling for Alchemy internal uart. Signed-off-by: Jon Anders Haugum Signed-off-by: Russell King commit 85835f442e5bbf9d3b8f6e574751da8db77016d2 Author: Sergei Shtylyov Date: Sun Apr 30 11:15:58 2006 +0100 [SERIAL] AMD Alchemy UART: claim memory range I've noticed that the 8250/Au1x00 driver (drivers/serial/8250_au1x00.c) doesn't claim UART memory ranges and uses wrong (KSEG1-based) UART addresses instead of the physical ones. Signed-off-by: Sergei Shtylyov Signed-off-by: Russell King commit 68ac64cd3fd89fdaa091701f6ab98a9065e9b1b5 Author: Russell King Date: Sun Apr 30 11:13:50 2006 +0100 [SERIAL] Clean up serial locking when obtaining a reference to a port The locking for the uart_port is over complicated, and can be simplified if we introduce a flag to indicate that a port is "dead" and will be removed. This also helps the validator because it removes a case of non-nested unlock ordering. Signed-off-by: Russell King Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton commit b276764091cf241cf0b31e8cb76c67dcf9a9c1d8 Author: Michael Chan Date: Sat Apr 29 19:01:06 2006 -0700 [TG3]: Update version and reldate Update version to 3.57. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit f6d9a2565bc754043f43b8f51b19f77ee0269411 Author: Michael Chan Date: Sat Apr 29 19:00:24 2006 -0700 [TG3]: Fix bug in nvram write Fix bug in nvram write function. If the starting nvram address offset happens to be the last dword of the page, the NVRAM_CMD_LAST bit will not get set in the existing code. This patch fixes the bug by changing the "else if" to "if" so that the last dword condition always gets checked. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 8e7a22e3eb49042c048f24bab40cf5cf8915487d Author: Gary Zambrano Date: Sat Apr 29 18:59:13 2006 -0700 [TG3]: Add reset_phy parameter to chip reset functions Add a reset_phy parameter to tg3_reset_hw() and tg3_init_hw(). With the full chip reset during MAC address change, the automatic PHY reset during chip reset will cause a link down and bonding will not work properly as a result. With this reset_phy parameter, we can do a chip reset without link down when changing MAC address or MTU. Signed-off-by: Gary Zambrano Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 58712ef9f2cbaaeac5b32ac11810a4bbd0eeacc5 Author: Michael Chan Date: Sat Apr 29 18:58:01 2006 -0700 [TG3]: Reset chip when changing MAC address Do the full chip reset when changing MAC address if ASF is enabled. ASF sometimes uses a different MAC address than the driver. Without the reset, the ASF MAC address may be overwritten when the driver's MAC address is changed. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit c424cb249dae10fb7f118f89091f1329b62b92f4 Author: Michael Chan Date: Sat Apr 29 18:56:34 2006 -0700 [TG3]: Add phy workaround Add some PHY workaround code to reduce jitter on some PHYs. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit c8e1e82b6a97ad44517517aa58b7b794ead0bf33 Author: Michael Chan Date: Sat Apr 29 18:55:17 2006 -0700 [TG3]: Call netif_carrier_off() during phy reset Add netif_carrier_off() call during tg3_phy_reset(). This is needed to properly track the netif_carrier state in cases where we do a PHY reset with interrupts disabled. The SerDes code will not run properly if the netif_carrier state is wrong. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit c302e6d54e468ee9b1e18152e2e9da06953f3473 Author: YOSHIFUJI Hideaki Date: Fri Apr 28 15:59:15 2006 -0700 [IPV6]: Fix race in route selection. We eliminated rt6_dflt_lock (to protect default router pointer) at 2.6.17-rc1, and introduced rt6_select() for general router selection. The function is called in the context of rt6_lock read-lock held, but this means, we have some race conditions when we do round-robin. Signed-off-by; YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit e959d8121fcbfee6ec049cc617e9423d1799f2e4 Author: Ingo Molnar Date: Fri Apr 28 15:32:29 2006 -0700 [XFRM]: fix incorrect xfrm_policy_afinfo_lock use xfrm_policy_afinfo_lock can be taken in bh context, at: [] lockdep_acquire_read+0x54/0x6d [] _read_lock+0x15/0x22 [] xfrm_policy_get_afinfo+0x1a/0x3d [] xfrm_decode_session+0x12/0x32 [] ip_route_me_harder+0x1c9/0x25b [] ip_nat_local_fn+0x94/0xad [] nf_iterate+0x2e/0x7a [] nf_hook_slow+0x3c/0x9e [] ip_push_pending_frames+0x2de/0x3a7 [] icmp_push_reply+0x136/0x141 [] icmp_reply+0x118/0x1a0 [] icmp_echo+0x44/0x46 [] icmp_rcv+0x111/0x138 [] ip_local_deliver+0x150/0x1f9 [] ip_rcv+0x3d5/0x413 [] netif_receive_skb+0x337/0x356 [] process_backlog+0x95/0x110 [] net_rx_action+0xa5/0x16d [] __do_softirq+0x6f/0xe6 [] do_softirq+0x52/0xb1 this means that all write-locking of xfrm_policy_afinfo_lock must be bh-safe. This patch fixes xfrm_policy_register_afinfo() and xfrm_policy_unregister_afinfo(). Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit f3111502c065d32dcb021f55e30398aaebd8fb0f Author: Ingo Molnar Date: Fri Apr 28 15:30:03 2006 -0700 [XFRM]: fix incorrect xfrm_state_afinfo_lock use xfrm_state_afinfo_lock can be read-locked from bh context, so take it in a bh-safe manner in xfrm_state_register_afinfo() and xfrm_state_unregister_afinfo(). Found by the lock validator. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 83de47cd0c5738105f40e65191b0761dfa7431ac Author: Hua Zhong Date: Fri Apr 28 15:26:50 2006 -0700 [TCP]: Fix unlikely usage in tcp_transmit_skb() The following unlikely should be replaced by likely because the condition happens every time unless there is a hard error to transmit a packet. Signed-off-by: Hua Zhong Signed-off-by: David S. Miller commit 8dff7c29707b7514043539f5ab5e0a6eb7bd9dcd Author: Ingo Molnar Date: Fri Apr 28 15:23:59 2006 -0700 [XFRM]: fix softirq-unsafe xfrm typemap->lock use xfrm typemap->lock may be used in softirq context, so all write_lock() uses must be softirq-safe. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit a76e07acd0de635122c5e60ccd5e55f9d5082391 Author: Herbert Xu Date: Fri Apr 28 15:22:13 2006 -0700 [IPSEC]: Fix IP ID selection I was looking through the xfrm input/output code in order to abstract out the address family specific encapsulation/decapsulation code. During that process I found this bug in the IP ID selection code in xfrm4_output.c. At that point dst is still the xfrm_dst for the current SA which represents an internal flow as far as the IPsec tunnel is concerned. Since the IP ID is going to sit on the outside of the encapsulated packet, we obviously want the external flow which is just dst->child. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit da753beaeb1446aa87bcca7e8a0026633a8914f0 Author: Akinobu Mita Date: Fri Apr 28 15:21:23 2006 -0700 [NET]: use hlist_unhashed() Use hlist_unhashed() rather than accessing inside data structure. Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit a536e0778781c1f2ce38cf8e1d82ce258f0193c1 Author: Heiko Carstens Date: Fri Apr 28 15:19:17 2006 -0700 [IPV4]: inet_init() -> fs_initcall Convert inet_init to an fs_initcall to make sure its called before any device driver's initcall. Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 09493abfdbe8144ce0805efac7a8a3c4eb869c12 Author: Soyoung Park Date: Fri Apr 28 14:59:44 2006 -0700 [NETLINK]: cleanup unused macro in net/netlink/af_netlink.c 1 line removal, of unused macro. ran 'egrep -r' from linux-2.6.16/ for Nprintk and didn't see it anywhere else but here, in #define... Signed-off-by: Soyoung Park Signed-off-by: David S. Miller commit 89bbb0a361cdae50eec863f10a876b58abf7d312 Author: Stephen Hemminger Date: Fri Apr 28 12:11:36 2006 -0700 [PKT_SCHED] netem: fix loss The following one line fix is needed to make loss function of netem work right when doing loss on the local host. Otherwise, higher layers just recover. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 43dff98b022ded593e73c3784bac03bc9fc7ec55 Author: Shaun Pereira Date: Fri Apr 28 12:00:17 2006 -0700 [X25]: fix for spinlock recurse and spinlock lockup with timer handler When the sk_timer function x25_heartbeat_expiry() is called by the kernel in a running/terminating process, spinlock-recursion and spinlock-lockup locks up the kernel. This has happened with testing on some distro's and the patch below fixed it. Signed-off-by: Shaun Pereira Signed-off-by: David S. Miller commit 991cef7be26ce78fe2bac72bedaf89e002cc2712 Author: Ralf Baechle Date: Sat Apr 29 08:52:44 2006 +0800 [PATCH] au1200fb: Remove accidentally duplicated content of au1200fb.c Content of file au1200fb.c was duplicated. Remove. Signed-off-by: Ralf Baechle Signed-off-by: Antonino Daplas Signed-off-by: Linus Torvalds commit 4661e3eace2c7b8433476b5bf0ee437ab3c7dfd4 Author: Linus Torvalds Date: Sat Apr 29 14:27:13 2006 -0700 [SCSI] advansys driver: limp along on x86 Let people enable the advansys driver on x86-32, even though it's broken on other architectures due to missing DMA mapping infrastructure. It's used by Jeffrey Phillips Freeman and possibly others. Signed-off-by: Linus Torvalds commit 543f2a3382bd7abd7380903518c61f00c7c87577 Author: Chuck Ebbert <76306.1226@compuserve.com> Date: Sat Apr 29 14:07:49 2006 -0400 [PATCH] i386: fix broken FP exception handling The FXSAVE information leak patch introduced a bug in FP exception handling: it clears FP exceptions only when there are already none outstanding. Mikael Pettersson reported that causes problems with the Erlang runtime and has tested this fix. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Acked-by: Mikael Pettersson Signed-off-by: Linus Torvalds commit 8fdc19486f4d3b0fc5f1c7ce69fe5f7b1c653e62 Author: Dmitry Torokhov Date: Sat Apr 29 01:13:48 2006 -0400 Input: make EVIOCGSND return meaningful data Signed-off-by: Dmitry Torokhov commit 08791e5cf62b6952ca32106aebb79b6066005de4 Author: Dmitry Torokhov Date: Sat Apr 29 01:13:21 2006 -0400 Input: ressurect EVIOCGREP and EVIOCSREP While writing to an event device allows to set repeat rate for an individual input device there is no way to retrieve current settings so we need to ressurect EVIOCGREP. Also ressurect EVIOCSREP so we have a symmetrical interface. Signed-off-by: Dmitry Torokhov commit 89c9b4805a525bdd4c6e7529d06292f60ac837fc Author: Dmitry Torokhov Date: Sat Apr 29 01:12:44 2006 -0400 Input: psmouse - fix new device detection logic Signed-off-by: Dmitry Torokhov commit 6fb8f3acbe833586eb32598d1f844eb9f77c4fba Author: Arnd Bergmann Date: Sat Apr 29 02:40:22 2006 +0200 [PATCH] powerpc: update cell_defconfig reflect the changes to Kconfig since the last update. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit f807221dedbd30726c5dffcd5b5d22ce0ea683cb Author: Arnd Bergmann Date: Sat Apr 29 02:40:21 2006 +0200 [PATCH] spufs: Disable local interrupts for SPE hash_page calls. This patch disables and saves local interrupts during hash_page processing for SPE contexts. We have to do it explicitly in the spu_irq_class_1_bottom function. For the interrupt handlers, we get the behaviour implicitly by using SA_INTERRUPT to disable interrupts while in the handler. Signed-off-by: Arnd Bergmann Signed-off-by: Paul Mackerras commit 03054d51a70e8c273df5d9bc31fea6c843eaa1c3 Author: Anton Blanchard Date: Sat Apr 29 09:51:06 2006 +1000 [PATCH] powerpc: Add cputable entry for POWER6 Add a cputable entry for the POWER6 processor. The SIHV and SIPR bits in the mmcra have moved in POWER6, so disable support for that until oprofile is fixed. Also tell firmware that we know about POWER6. Signed-off-by: Anton Blanchard Signed-off-by: Paul Mackerras commit 693f7d362055261882659475d2ef022e32edbff1 Author: shin, jacob Date: Fri Apr 28 10:54:37 2006 -0500 [PATCH] slab: fix crash on __drain_alien_cahce() during CPU Hotplug transfer_objects should only be called when all of the cpus in the node are online. CPU_DEAD notifier callback marks l3->shared to NULL. Signed-off-by: Jacob Shin Signed-off-by: Linus Torvalds commit 4de0b1ee1b630318553248c4cfc78358720a5c84 Author: Antonino A. Daplas Date: Thu Apr 27 18:40:47 2006 -0700 [PATCH] asiliantfb: Add help text in Kconfig Add help text in Kconfig Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9587c4bf72bf6cc79e1c471a201c0bd73171fcd6 Author: Antonino A. Daplas Date: Thu Apr 27 18:40:39 2006 -0700 [PATCH] suspend: Documentation update for IBM Thinkpad X30 As reported in Bugzilla Bug 6406, resume from S3 results in a blank screen. For the IBM Thinkpad X30 using vesafb as the console driver, successful resume from S3 requires option acpi_sleep=s3_bios,s3_mode. Update documentation. I would presume that, in any hardware, using vesafb as the console driver will require as a minimum s3_mode. Signed-off-by: Antonino Daplas Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3266a930450287e27a8a14ffe0484992941b9f7 Author: Martin Schwidefsky Date: Thu Apr 27 18:40:33 2006 -0700 [PATCH] s390: new system calls Add sys_set_robust_list, sys_get_robust_list, sys_splice, sys_sync_file and sys_tee system calls. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d052595423b4432f4d599c1aeb1949ac0da7314 Author: Horst Hummel Date: Thu Apr 27 18:40:28 2006 -0700 [PATCH] s390: dasd device identifiers Generate new sysfs-attribute 'uid' that contains an device specific unique identifier. This can be used to identity multiple ALIASES of the same physical device (PAV). In addition the sysfs-attributes 'vendor' (containing the manufacturer of the device) and 'alias' (identify alias or base device) is added. This is first part of PAV support in LPAR (also valid on zVM). Signed-off-by: Horst Hummel Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58268b97f679108d32a882a7fc029585da801975 Author: Christian Borntraeger Date: Thu Apr 27 18:40:24 2006 -0700 [PATCH] s390: add read_mostly optimization Add a read_mostly section and define __read_mostly to prevent cache line pollution due to writes for mostly read variables. In addition fix the incorrect alignment of the cache_line_aligned data section. s390 has a cacheline size of 256 bytes. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b73d40c6178f2c8b2d574db566b47f36e3d12072 Author: Heiko Carstens Date: Thu Apr 27 18:40:23 2006 -0700 [PATCH] s390: instruction processing damage handling In case of an instruction processing damage (IPD) machine check in kernel mode the resulting action is always to stop the kernel. This is not necessarily the best solution since a retry of the failing instruction might succeed. Add logic to retry the instruction if no more than 30 instruction processing damage checks occured in the last 5 minutes. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b5dec1aa08b77c4217cd5fcaf1e4e177f659b2e Author: Gerald Schaefer Date: Thu Apr 27 18:40:22 2006 -0700 [PATCH] s390: segment operation error codes Print a warning with the z/VM error code if segment_load, segment_type or segment_save fail to ease the problem determination. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2cc924b8ba1e9493ed50f5b793974e2427a15748 Author: Stefan Bader Date: Thu Apr 27 18:40:16 2006 -0700 [PATCH] s390: tape 3590 changes Added some changes that where proposed by Andrew Morton. Added 3592 device type. Signed-off-by: Stefan Bader Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3363fbdd6fb4992ffe6c17c0dd7388ffa22d99e6 Author: Martin Schwidefsky Date: Thu Apr 27 18:40:12 2006 -0700 [PATCH] s390: futex atomic operations Add support for atomic futex operations. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40ac6b204c20da09b64b6dcc10c68b6e7bd9fadd Author: Christian Borntraeger Date: Thu Apr 27 18:40:11 2006 -0700 [PATCH] s390: fix slab debugging With CONFIG_SLAB_DEBUG=y networking over qeth doesn't work. The problem is that the qib structure embedded in the qeth_irq structure needs an alignment of 256 but kmalloc only guarantees an alignment of 8. When using SLAB debugging the alignment of qeth_irq is not sufficient for the embedded qib structure which causes all users of qdio (qeth and zfcp) to stop working. Allocate qeth_irq structure with __get_free_page. That wastes a small amount of memory (~2500 bytes) per online adapter. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39ccf95e28765a08a9e01be614695d7c570b4e77 Author: Horst Hummel Date: Thu Apr 27 18:40:10 2006 -0700 [PATCH] s390: dasd ioctl never returns The dasd state machine is not designed to enable an unformatted device, since 'unformatted' is a final state. The BIODASDENABLE ioctl calls dasd_enable_device() which never returns if the device is in this special state. Return -EPERM in dasd_increase_state for unformatted devices to make dasd_enable_device terminate. Note: To get such an unformatted device online it has to be re-analyzed. This means that the device needs to be disabled prior to re-enablement. Signed-off-by: Horst Hummel Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3ae39c060be57a4936d2c1d970e4d0c7d320d9c Author: Andreas Herrmann Date: Thu Apr 27 18:40:09 2006 -0700 [PATCH] s390: qdio memory allocations Avoid memory allocation with GFP_KERNEL in qdio_establish/qdio_shutdown. Use memory pool instead. (Otherwise this can lead to an I/O stall where qdio waits for a free page and zfcp waits for end of error recovery in low memory situations.) Signed-off-by: Andreas Herrmann Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28f223782bca914ae65d08234c57c2175ecd7f5d Author: Laurent Meyer Date: Thu Apr 27 18:40:07 2006 -0700 [PATCH] s390: alternate signal stack handling bug If a signal handler has been established with the SA_ONSTACK option but no alternate stack is provided with sigaltstack(), the kernel still tries to install the alternate stack. Also when setting an alternate stack with sigalstack() and the SS_DISABLE flag, the kernel tries to install the alternate stack on signal delivery. Use the correct conditions sas_ss_flags() to check if the alternate stack has to be used. Signed-off-by: Laurent Meyer Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6dcfca78d4c036c9d012f913e2a622aae218827f Author: Stefan Bader Date: Thu Apr 27 18:40:04 2006 -0700 [PATCH] s390: enable interrupts on error path Interrupts can stay disabled if an error occurred in _chp_add(). Use spin_unlock_irq on the error paths to reenable interrupts. Signed-off-by: Stefan Bader Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 329b785bcee5d001f97a33bdb80de014bb5020b0 Author: Peter Oberparleiter Date: Thu Apr 27 18:40:02 2006 -0700 [PATCH] s390: fix I/O termination race in cio Fix a race condition in the I/O termination logic. The race can cause I/O to a dasd device to fail with no retry left after turning one channel path to the device off and on multiple times. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bcff5cd667da6eb3df9173626497e3e69b004e42 Author: Masami Hiramatsu Date: Thu Apr 27 18:39:55 2006 -0700 [PATCH] kprobe: fix resume execution on i386 Fix resume_execution() to handle iret and absolute jump opcode correctly on i386. Signed-off-by: Masami Hiramatsu Cc: Ananth N Mavinakayanahalli Cc: "Keshavamurthy, Anil S" Cc: Prasanna S Panchamukhi Cc: Jim Keniston Cc: Yumiko Sugita Cc: Satoshi Oshima Cc: Hideo Aoki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bf661987da6f5131475dfe3f51a98de4e2589ed3 Author: mao, bibo Date: Thu Apr 27 18:39:44 2006 -0700 [PATCH] kprobe cleanup for VM_MASK judgement When trap happens in user space, kprobe_exceptions_notify() funtion will skip it. This patch deletes some unnecessary code for VM_MASK judgement in eflags. Signed-off-by: bibo, mao Cc: Masami Hiramatsu Cc: Ananth N Mavinakayanahalli Acked-by: "Keshavamurthy, Anil S" Acked-by: Prasanna S Panchamukhi Cc: Jim Keniston Cc: Yumiko Sugita Cc: Satoshi Oshima Cc: Hideo Aoki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9539d4e79fae8482bc64ced03a46c7c6d711d19e Author: Andi Kleen Date: Thu Apr 27 18:39:36 2006 -0700 [PATCH] Mark VMSPLIT EMBEDDED Running abnormal VM splits causes weird problems - people can set non-standard splits by accident, then lots of time gets wasted diagnosing it - see the long "[stable] 2.6.16.6 breaks java... sort of" email thread. So we need to make this option harder to set. Use CONFIG_EMBEDDED for this. CONFIG_EMBEDDED isn't really the right thing to use, but there's nothing else obvious and avoiding these problems is more important than Kconfig purity. Signed-off-by: Andi Kleen Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 35076bdfa171cd83d89fcb96568e786f0da91d9f Author: Ashok Raj Date: Thu Apr 27 18:39:30 2006 -0700 [PATCH] enable X86_PC for HOTPLUG_CPU CPU_HOTPLUG has race conditions when we use broadcast mode IPI. - First we introduced no_broadcast option (see include/asm-i386/mach-default/mach_ipi.h) - x86_64 solved it by using physical flat mode (same as bigsmp on i386) since this will not use broadcast shortcuts for IPI. - We switched to use bigsmp on i386 so that we can have same handling as x86_64, but apparently this caused an error message, if kernel was compiled without X86_GENERICARCH, X86_BIGSMP. The message "You have >8 CPUS..." which was bogus and misleading, and only indicated one of the above ARCH wasnt selected. So we do not switch to automatic bigsmp for HOTPLUG_CPU support in i386 until the other related config dependencies for SMP_SUSPEND etc can be done right. Signed-off-by: Ashok Raj Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f5910ecabd3a36b9c06f73e33b673ccf150f3b4 Author: Dave Jones Date: Thu Apr 27 18:39:24 2006 -0700 [PATCH] Avoid printing pointless tsc skew msgs These messages are kinda silly.. CPU#0 had 0 usecs TSC skew, fixed it up. CPU#1 had 0 usecs TSC skew, fixed it up. inspired from: http://bugzilla.kernel.org/attachment.cgi?id=7713&action=view Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d3d1d3e0356b583b642b016f874e2d1bd578453 Author: Adrian Bunk Date: Thu Apr 27 18:39:21 2006 -0700 [PATCH] re-add the OSS SOUND_CS4232 option A regression in the ALSA driver compared to the OSS driver was reported as ALSA bug #1520, so let's keep the OSS driver for now. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d698f1c72629ff43d0cb6b9f1d17c491c057a0d9 Author: Eric Sesterhenn Date: Thu Apr 27 18:39:20 2006 -0700 [PATCH] fix array overrun in drivers/char/mwave/mwavedd.c this fixes coverity id #489. Since the last element in the array is always ARRAY_SIZE-1 we have to check for ipcnum >= ARRAY_SIZE() Signed-off-by: Eric Sesterhenn Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ac3836ce689e594b20c7c9855f64a63751c2d10 Author: Daniel Drake Date: Thu Apr 27 18:39:19 2006 -0700 [PATCH] tipar oops fix If compiled into the kernel, parport_register_driver() is called before the parport driver has been initalised. This means that it is expected that tp_count is 0 after the parport_register_driver() call() - tipar's attach function will not be called until later during bootup. Signed-off-by: Daniel Drake Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13e87ec68641fd54f3fa04eef3419d034ed2115a Author: Andrew Morton Date: Thu Apr 27 18:39:18 2006 -0700 [PATCH] request_irq(): remove warnings from irq probing - Add new SA_PROBEIRQ which suppresses the new sharing-mismatch warning. Some drivers like to use request_irq() to find an unused interrupt slot. - Use it in i82365.c - Kill unused SA_PROBE. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 47bb789973fed504e4711ec34e63b84e6cbfb4e8 Author: dean gaudet Date: Thu Apr 27 18:39:17 2006 -0700 [PATCH] off-by-1 in kernel/power/main.c There's an off-by-1 in kernel/power/main.c:state_store() ... if your kernel just happens to have some non-zero data at pm_states[PM_SUSPEND_MAX] (i.e. one past the end of the array) then it'll let you write anything you want to /sys/power/state and in response the box will enter S5. Signed-off-by: dean gaudet Acked-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ec448a0a361ce3fa97a32a5c267a680163ffe8c5 Author: Roland Dreier Date: Tue Apr 18 09:05:39 2006 -0700 [SCSI] srp.h: avoid padding of structs Several structs in get padded to a multiple of 8 bytes on 64-bit architectures and end up with a size that does not match the definition in the SRP spec: SRP spec 64-bit sizeof (struct indirect_buf) 20 24 sizeof (struct srp_login_rsp) 52 56 sizeof (struct srp_rsp) 36 40 Fix this by adding __attribute__((packed)) to the offending structs. Problem pointed out by Arne Redlich . Signed-off-by: Roland Dreier Signed-off-by: James Bottomley commit e5dbfa6621732a110514fb10f9a43f0e8f4befd4 Author: FUJITA Tomonori Date: Fri Apr 14 13:52:18 2006 +0900 [SCSI] ibmvscsi: fix leak when failing to send srp event Signed-off-by: FUJITA Tomonori Signed-off-by: James Bottomley commit 09b03b6c29638eb5c79b02e585cb1b20d91a8ea0 Author: Vitaly Bordug Date: Tue Apr 25 20:26:46 2006 +0400 [PATCH] ppc32 CPM_UART: Fixed odd address translations Current address translation methods can produce wrong results, because virt_to_bus and vice versa may not produce correct offsets on dma-allocated memory. The right way is, while tracking both phys and virt address of the window that has been allocated for boffer descriptors, and use those numbers to compute the offset and make translation properly. Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 4427d6bf966379304f77b7cc8c92421e6bb95483 Author: Vitaly Bordug Date: Tue Apr 25 20:26:43 2006 +0400 [PATCH] ppc32: Update board-specific code of the CPM UART users This has the relevant updates/additions to the BSP code so that proper platform_info struct well be passed to the CPM UART drivers. The changes covered mpc866ads, mpc885ads and mpc8272ads. Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit e27987cddd8db3a72a0f4734b5d94d06c7677323 Author: Vitaly Bordug Date: Tue Apr 25 20:26:41 2006 +0400 [PATCH] ppc32 CPM_UART: Convert to use platform devices This is intended to make the driver code more generic and flexible, to get rid of board-specific layouts within driver, and generic rehaul, yet keeping compatibility with the existing stuff utilizing it, being compatible with legacy behavior (but with complaints that legacy mode used). Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit a73c87bfe98f4d54c919e920a6efb0a116115722 Author: Vitaly Bordug Date: Tue Apr 25 20:26:33 2006 +0400 [PATCH] ppc32: odd fixes and improvements in ppc_sys This consists of offsets fix in ..._devices.c, and update of ppc_sys_fixup_mem_resource() function to prevent subsequent fixups Signed-off-by: Vitaly Bordug Signed-off-by: Paul Mackerras commit 2833c28aa0d0326780acfa61149a2a02dcb2c9b4 Author: Andreas Schwab Date: Thu Apr 27 15:46:42 2006 +0200 [PATCH] powerpc: Wire up *at syscalls Wire up *at syscalls. This patch has been tested on ppc64 (using glibc's testsuite, both 32bit and 64bit), and compile-tested for ppc32 (I have currently no ppc32 system available, but I expect no problems). Signed-off-by: Andreas Schwab Signed-off-by: Paul Mackerras commit 30aacebed0f0619f23ce84df7c59ad033ca08d77 Author: Eugene Surovegin Date: Tue Apr 25 01:22:44 2006 -0700 [PATCH] ppc32: add 440GX erratum 440_43 workaround This patch adds workaround for PPC 440GX erratum 440_43. According to this erratum spurious MachineChecks (caused by L1 cache parity) can happen during DataTLB miss processing. We disable L1 cache parity checking for 440GX rev.C and rev.F Signed-off-by: Eugene Surovegin Signed-off-by: Paul Mackerras commit 1269277a5e7c6d7ae1852e648a8bcdb78035e9fa Author: David Woodhouse Date: Mon Apr 24 23:22:17 2006 +0100 [PATCH] powerpc: Use check_legacy_ioport() on ppc32 too. Some people report that we die on some Macs when we are expecting to catch machine checks after poking at some random I/O address. I'd seen it happen on my dual G4 with serial ports until we fixed those to use OF, but now other users are reporting it with i8042. This expands the use of check_legacy_ioport() to avoid that situation even on 32-bit kernels. Signed-off-by: David Woodhouse Signed-off-by: Paul Mackerras commit f749edae5ebd339eaf22508572233600f717424f Author: Alan Modra Date: Mon Apr 24 22:11:51 2006 +0930 [PATCH] powerpc64: Fix loading of modules without a .toc section Normally, ppc64 module .ko files contain a table-of-contents (.toc) section, but if the module doesn't reference any static or external data or external procedures, it is possible for gcc/binutils to generate a .ko that doesn't have a .toc. Currently the module loader refuses to load such a module, since it needs the address of the .toc section to use in relocations. This patch fixes the problem by using the address of the .stubs section instead, which is an acceptable substitute in this situation. Signed-off-by: Paul Mackerras commit d882995c054ff90706cc339321bfb04b15c5581f Author: Andreas Schwab Date: Sun Apr 23 20:32:41 2006 +0200 [PATCH] sound/ppc: snd_pmac_toonie_init should be __init snd_pmac_toonie_init is only called by __init code and calls __init code itself. Signed-off-by: Andreas Schwab Signed-off-by: Paul Mackerras commit f709bfac48492e289ba78ea1e8c0b3daab264e90 Author: Paul Mackerras Date: Fri Apr 28 16:28:35 2006 +1000 powerpc/pseries: Tell firmware our capabilities on new machines This adds code to call a new firmware method to tell the firmware what machines and capabilities (such as VMX/Altivec) we support. This will be needed on POWER5+ and POWER6 machines, and it has no effect on past and current machines. Signed-off-by: Paul Mackerras commit f10a04c034c7285a1b15dfa4a83d3e56578e34e8 Author: David Gibson Date: Fri Apr 28 15:02:51 2006 +1000 [PATCH] powerpc: Fix pagetable bloat for hugepages At present, ARCH=powerpc kernels can waste considerable space in pagetables when making large hugepage mappings. Hugepage PTEs go in PMD pages, but each PMD page maps 256M and so contains only 16 hugepage PTEs (128 bytes of data), but takes up a 1024 byte allocation. With CONFIG_PPC_64K_PAGES enabled (64k base page size), the situation is worse. Now hugepage PTEs are at the PTE page level (also mapping 256M), so we store 16 hugepage PTEs in a 64k allocation. The PowerPC MMU already means that any 256M region is either all hugepage, or all normal pages. Thus, with some care, we can use a different allocation for the hugepage PTE tables and only allocate the 128 bytes necessary. Signed-off-by: Paul Mackerras commit 2ea0020250f6aeaec1ed3adf9069973a91eff57c Author: Michael Reed Date: Thu Apr 27 16:25:30 2006 -0700 [SCSI] qla2xxx: Correct eh_abort recovery logic. Fix the driver to return SUCCESS if the firmware or driver doesn't have a command to abort, i.e., it's already been returned. Without this patch, error recovery will take the target offline as it tries harder and harder to get the driver to return the command it no longer has. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley commit 7384c8bd90a4932517872f9807d34979a6fd29c4 Author: Jes Sorensen Date: Thu Apr 27 06:10:35 2006 -0400 [IA64] update sn2 defconfig Update SN2 defconfig to latest kernel and add QLA FC drivers commonly found in SN2 boxes. Signed-off-by: Jes Sorensen Signed-off-by: Tony Luck commit 189979619f90fd2eb168fbb9c262569176160624 Author: Russ Anderson Date: Thu Apr 27 10:07:08 2006 -0500 [IA64] Add mca recovery failure messages When the mca recovery code encounters a condition that makes the MCA non-recoverable, print the reason it could not recover. This will make it easier to identify why the recovery code did not recover. Signed-off-by: Russ Anderson Signed-off-by: Tony Luck commit cda3d4a069b915cf46e640bb6872a9d9aefeaabe Author: Mike Habeck Date: Wed Apr 26 12:05:50 2006 -0500 [IA64-SGI] fix SGI Altix tioce_reserve_m32() bug The following patch fixes a bug in the SGI Altix tioce_reserve_m32() code. The bug was that we could walking past the end of the CE ASIC 32/40bit PMU ATE Buffer, resulting in a PIO Reply Error. Signed-off-by: Mike Habeck Signed-off-by: Tony Luck commit 1df57c0c21c92a6d4fcfe5304c84151ed9beb7a2 Author: Cliff Wickman Date: Tue Apr 25 10:47:48 2006 -0500 [IA64] enable dumps to capture second page of kernel stack In SLES10 (2.6.16) crash dumping (in my experience, LKCD) is unable to capture the second page of the 2-page task/stack allocation. This is particularly troublesome for dump analysis, as the stack traceback cannot be done. (A similar convention is probably needed throughout the kernel to make kernel multi-page allocations detectable for dumping) Multi-page kernel allocations are represented by the single page structure associated with the first page of the allocation. The page structures associated with the other pages are unintialized. If the dumper is selecting only kernel pages it has no way to identify any but the first page of the allocation. The fix is to make the task/stack allocation a compound page. Signed-off-by: Cliff Wickman Signed-off-by: Tony Luck commit dd4cb9f8ac9717c9db2b2afc5a82cb95a3d5dec3 Author: Jack Steiner Date: Sat Apr 22 09:37:19 2006 -0500 [IA64-SGI] - Reduce overhead of reading sn_topology MPI programs using certain debug options have a long startup time. This was traced to a "vmalloc/vfree" in the code that reads /proc/sgi_sn/sn_topology. On large systems, vfree requires an IPI to all cpus to do TLB purging. Replace the vmalloc/vfree with kmalloc/kfree. Although the size of the structure being allocated is unknown, it will not not exceed 96 bytes. Signed-off-by: Jack Steiner Signed-off-by: Tony Luck commit f0fe253c4719faf76d40f581cdc0e8aef77273bb Author: Jack Steiner Date: Sat Apr 22 09:36:07 2006 -0500 [IA64-SGI] - Fix discover of nearest cpu node to IO node Fix a bug that causes discovery of the nearest node/cpu to a TIO (IO node) to fail. Signed-off-by: Jack Steiner Signed-off-by: Tony Luck commit 5bd982ed0f5ae73bfd9ff452b460a3b08108bfee Author: Paolo Ciarrocchi Date: Tue Apr 25 22:47:51 2006 +0200 [PATCH] Added URI of "linux kernel development process" Signed-off-by: Paolo Ciarrocchi Signed-off-by: Greg Kroah-Hartman commit 5b3ef14e3e9d745a512d65fcb4ef9be541226d80 Author: Adrian Bunk Date: Sat Apr 22 12:14:44 2006 +0200 [PATCH] Kobject: possible cleanups This patch contains the following possible cleanups: - #if 0 the following unused global function: - subsys_remove_file() - remove the following unused EXPORT_SYMBOL's: - kset_find_obj - subsystem_init - remove the following unused EXPORT_SYMBOL_GPL: - kobject_add_dir Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman commit bde11d794206ae8d72defd0e8a481181200f7dc4 Author: Jean Delvare Date: Tue Apr 18 21:30:22 2006 -0700 [PATCH] Fix OCFS2 warning when DEBUG_FS is not enabled Fix the following warning which happens when OCFS2_FS is enabled but DEBUG_FS isn't: fs/ocfs2/dlmglue.c: In function `ocfs2_dlm_init_debug': fs/ocfs2/dlmglue.c:2036: warning: passing arg 5 of `debugfs_create_file' discards qualifiers from pointer target type Signed-off-by: Jean Delvare Cc: Arjan van de Ven Cc: Joel Becker Acked-by: Mark Fasheh Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 4d17ffda331ba6030bb8c233c73d6a87954d8ea7 Author: Kay Sievers Date: Tue Apr 25 15:37:26 2006 +0200 [PATCH] Kobject: fix build error This fixes a build error for various odd combinations of CONFIG_HOTPLUG and CONFIG_NET. Signed-off-by: Kay Sievers Cc: Nigel Cunningham Cc: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 913e7ec545462b9a49fa308d0c81697236f7d29d Author: Jon Smirl Date: Wed Apr 12 19:43:35 2006 -0400 [PATCH] Frame buffer: remove cmap sysfs interface Remove it as it does not work properly due to sysfs core changes. Signed-off-by: Greg Kroah-Hartman commit 75cf7456dd87335f574dcd53c4ae616a2ad71a11 Author: Chris Wedgwood Date: Tue Apr 18 23:57:09 2006 -0700 [PATCH] PCI quirk: VIA IRQ fixup should only run for VIA southbridges Alan Cox pointed out that the VIA 'IRQ fixup' was erroneously running on my system which has no VIA southbridge (but I do have a VIA IEEE 1394 device). This should address that. I also changed "Via IRQ" to "VIA IRQ" (initially I read Via as a capitalized via (by way/means of). Signed-off-by: Chris Wedgwood Acked-by: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit f01f4182597a3bb4b6fbf92e041faf7a1016f4b6 Author: Jesper Juhl Date: Mon Apr 17 04:02:54 2006 +0200 [PATCH] PCI: fix potential resource leak in drivers/pci/msi.c The coverity checker spotted (as entry #599) that we might leak `entry' in drivers/pci/msi.c::msix_capability_init() This patch should take care of that. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 9b860b8c4bde5949b272968597d1426d53080532 Author: Ingo Oeser Date: Tue Apr 18 11:20:55 2006 +0200 [PATCH] PCI: Documentation: no more device ids Document that we don't like to add more PCI device ids but are happy to accept PCI vendor ids for linux/include/pci_ids.h Original text from Jeff Garzik. Signed-off-by: Ingo Oeser Signed-off-by: Greg Kroah-Hartman commit 8b4929e6a01620b55700e102e40e37ef02844849 Author: Greg Kroah-Hartman Date: Thu Apr 20 15:50:55 2006 +0900 [PATCH] PCI: fix via irq SATA patch This device id improperly got added to the VIA chipset list with a previous patch. Remove it as it is not correct. Cc: Grzegorz Janoszka Cc: Jeff Garzik Signed-off-by: Greg Kroah-Hartman commit a769577b3716c757e354a681aab3524ac6b651be Author: Takashi Iwai Date: Thu Apr 27 16:56:07 2006 +0200 [ALSA] via82xx - Use DXS_SRC as default for VIA8235/8237/8251 chips Use DXS_SRC as the default value for dxs_support option for VIA8235/8237/8251 chips. These new chips should work well with SRC. For VIA8233/A/C, the old default DXS_48K is still used to be sure. Signed-off-by: Takashi Iwai commit e0292bdd306a7e1ef7a681350cf0427688a2791d Author: Takashi Iwai Date: Wed Apr 26 17:44:18 2006 +0200 [ALSA] hda-codec - Add model entry for ASUS Z62F Added a model entry 'laptop-eapd' for ASUS Z62F laptop with AD1986A codec. Signed-off-by: Takashi Iwai commit c93dd4451ef68a5494c376944bdff8d75a8625bc Author: Erik Mouw Date: Tue Apr 25 13:08:59 2006 +0200 [ALSA] PCMCIA sound devices shouldn't depend on ISA The ALSA drivers for PCMCIA devices depend on ISA, but modern laptops can have PCMCIA support without ISA. This patch removes the dependency. Signed-off-by: Erik Mouw Signed-off-by: Takashi Iwai commit d773781cee3e3003c4a77589d327de802b26e101 Author: Takashi Iwai Date: Tue Apr 25 13:05:43 2006 +0200 [ALSA] hda-codec - Fix capture from line-in on VAIO SZ/FE laptops Added the missing line-in capture on VAIO SZ/FE laptops with STAC 7661 codec. Signed-off-by: Takashi Iwai commit b7d90a356a43f4609bd6290fc2e1ca4ef79d4458 Author: Takashi Iwai Date: Tue Apr 25 12:56:04 2006 +0200 [ALSA] Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n Fixed Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n. Add ifdef to struct fields for optimization and better compile checks. Signed-off-by: Takashi Iwai commit 61fb63c096a2e88b87742eaecfe88912b89f57cf Author: Jaroslav Kysela Date: Mon Apr 24 21:57:16 2006 +0200 [ALSA] PCM core - introduce CONFIG_SND_PCM_XRUN_DEBUG This patch makes the XRUN (overrun/underrun) notification code optional. Signed-off-by: Jaroslav Kysela commit a2bbbc0c3c9554ac70e96ec3effae60124f0f009 Author: Kenrik Kretzschmar Date: Mon Apr 24 15:59:38 2006 +0200 [ALSA] adding __devinitdata to pci_device_id Refering to /Documentation/pci.txt the struct pci_device_id can be released after loading the module. Signed-off-by: Kenrik Kretzschmar Signed-off-by: Takashi Iwai commit 396c9b928d5c24775846a161a8191dcc1ea4971f Author: Henrik Kretzschmar Date: Mon Apr 24 15:59:04 2006 +0200 [ALSA] add __devinitdata to all pci_device_id Signed-off-by: Henrik Kretzschmar Signed-off-by: Takashi Iwai commit 71b2ccc3a2fd6c27e3cd9b4239670005978e94ce Author: Takashi Iwai Date: Fri Apr 21 16:09:31 2006 +0200 [ALSA] hda-co