commit 7f397dcdb78d699a20d96bfcfb595a2411a5bbd2 Author: Matt Mackall Date: Tue May 29 21:58:10 2007 -0500 random: fix seeding with zero entropy Add data from zero-entropy random_writes directly to output pools to avoid accounting difficulties on machines without entropy sources. Tested on lguest with all entropy sources disabled. Signed-off-by: Matt Mackall Acked-by: "Theodore Ts'o" Signed-off-by: Linus Torvalds commit 602b6aeefe8932dd8bb15014e8fe6bb25d736361 Author: Matt Mackall Date: Tue May 29 21:54:27 2007 -0500 random: fix error in entropy extraction Fix cast error in entropy extraction. Add comments explaining the magic 16. Remove extra confusing loop variable. Signed-off-by: Matt Mackall Acked-by: "Theodore Ts'o" Signed-off-by: Linus Torvalds commit f717221b4e51284c153ab4265c4607e86037047b Merge: eaad084... a2cb4a9... Author: Linus Torvalds Date: Tue May 29 18:12:34 2007 -0700 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IB/mlx4: Fix last allocated object tracking in bitmap allocator IB/cm: Fix stale connection detection IPoIB/cm: Fix performance regression on Mellanox IB/mthca: Fix handling of send CQE with error for QPs connected to SRQ commit eaad084bb0f3a6259e56400cd45d061dbf040600 Author: Thomas Gleixner Date: Tue May 29 23:47:39 2007 +0200 NOHZ: prevent multiplication overflow - stop timer for huge timeouts get_next_timer_interrupt() returns a delta of (LONG_MAX > 1) in case there is no timer pending. On 64 bit machines this results in a multiplication overflow in tick_nohz_stop_sched_tick(). Reported by: Dave Miller Make the return value a constant and limit the return value to a 32 bit value. When the max timeout value is returned, we can safely stop the tick timer device. The max jiffies delta results in a 12 days timeout for HZ=1000. In the long term the get_next_timer_interrupt() code needs to be reworked to return ktime instead of jiffies, but we have to wait until the last users of the original NO_IDLE_HZ code are converted. Signed-off-by: Thomas Gleixner Acked-off-by: David S. Miller Signed-off-by: Linus Torvalds commit a2cb4a98f243d01f2c8d5799c764bb96ffa66c44 Author: Roland Dreier Date: Tue May 29 16:07:09 2007 -0700 IB/mlx4: Fix last allocated object tracking in bitmap allocator Set last allocated object to the object after the one just allocated before ORing in the extra top bits. Also handle the case where this wraps around. Signed-off-by: Roland Dreier commit d998ccce020e2cfcf11c6b57503532930ede2894 Author: Sean Hefty Date: Mon May 21 17:38:02 2007 -0700 IB/cm: Fix stale connection detection The ib_cm can incorrectly detect a stale connection (a new connection request for a QPN that is already connected) as a duplicate connection request. Separate the handling of potential duplicate REQs from stale connections. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit ec56dc0b7f6c3fec20bbc2e98ff1a06edf2fc9b9 Author: Michael S. Tsirkin Date: Mon May 28 14:37:27 2007 +0300 IPoIB/cm: Fix performance regression on Mellanox commit 518b1646 ("IPoIB/cm: Fix SRQ WR leak") introduced a severe performance regression on Mellanox cards, because keeping a QP in the error state for extended periods of time moves hardware to the slow path (until the QP is destroyed). For example, MPI latency goes from ~3 usecs to ~7 usecs. Fix this by posting a send WR on one of the QPs that are being flushed, instead of using a separate drain QP that is kept in the error state. This fixes bug , reported and bisected by Scott Weitzenkamp at Cisco and debugged by Sasha Mikheev at Voltaire. Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 8b7e15772a286d0ef8e4f8eca422ce5368b6fa97 Author: Michael S. Tsirkin Date: Sun May 27 18:06:42 2007 +0300 IB/mthca: Fix handling of send CQE with error for QPs connected to SRQ mthca_free_err_wqe() currently treats both send and receive CQEs identically if a QP is using an SRQ. But for Tavor hardware, send CQEs with error can be chained together even if the RQ is part of SRQ, so we may miss some CQEs. Fix by following the WQE chain for all send CQEs even for non-SRQ QPs. This fixes crashes in IPoIB CM: Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit 6e98ee75c3ab99db48ecc0615c2246dc193111a9 Merge: 486b4ce... 7db35f3... Author: Linus Torvalds Date: Tue May 29 14:03:42 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fill holes in hypervisor APIs and fix KTSB registry. [SPARC64]: Fix two bugs wrt. kernel 4MB TSB. [SPARC]: Mark as emulating cmpxchg, add appropriate depends for DRM. [SPARC]: Emulate cmpxchg like parisc [SPARC64]: Fix _PAGE_EXEC_4U check in sun4u I-TLB miss handler. [SPARC]: Linux always started with 9600 8N1 [SPARC64]: arch/sparc64/time.c doesn't compile on Ultra 1 (no PCI) [SPARC64]: Eliminate NR_CPUS limitations. [SPARC64]: Use machine description and OBP properly for cpu probing. [SPARC64]: Negotiate hypervisor API for PCI services. [SPARC64]: Report proper system soft state to the hypervisor. [SPARC64]: Fix typo in sun4v_hvapi_register error handling. [SCSI] ESP: Kill SCSI_ESP_CORE and link directly just like jazz_esp [SCSI] jazz_esp: Converted to use esp_core. [SPARC64]: PCI device scan is way too verbose by default. [SERIAL] sunzilog: section mismatch fix [SPARC32]: Removes mismatch section warnigs in sparc time.c file [SPARC64]: Don't be picky about virtual-dma values on sun4v. [SPARC64]: Kill unused DIE_PAGE_FAULT enum value. [SCSI] pluto: Use wait_for_completion_timeout. commit 486b4ce13221aa6cd0cbc9fff6993f444d8a52b5 Merge: 358a9af... 350958f... Author: Linus Torvalds Date: Tue May 29 13:45:38 2007 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: fix return code firewire: prefix modules with firewire- instead of fw- firewire: Add missing byteswapping for receive DMA programs. ieee1394: raw1394: Fix async send ieee1394: eth1394: bring back a parent device ieee1394: eth1394: handle tlabel exhaustion ieee1394: eth1394: remove bogus netif_wake_queue ieee1394: sbp2: include workqueue.h commit 358a9afc35d550db4f67b1c8336f5326244ceeda Merge: 5566321... 6996abf... Author: Linus Torvalds Date: Tue May 29 13:44:34 2007 -0700 Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 * 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: hwmon/applesmc: Handle name file creation error and deletion hwmon/applesmc: Simplify dependencies hwmon-vid: Don't spam the logs when VRM version is missing hwmon/w83627hf: Be quiet when no chip is found hwmon/coretemp: Add more safety checks hwmon/ds1621: Fix swapped temperature limits commit 55663219378eecd6fccb319be27ce6737a535e4c Merge: a432663... 58da10b... Author: Linus Torvalds Date: Tue May 29 13:42:28 2007 -0700 Merge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc * 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc: [POWERPC] Fix Kconfig warning [PPC] Fix modpost warning [POWERPC] Fix modpost warning [POWERPC] Fix Section mismatch warnings [POWERPC] QE: fix Kconfig 'select' warning with UCC_FAST [POWERPC] 52xx: unbreak lite5200 dts (_pic vs. -pic) [PPC] Remove duplicate export of __div64_32. [PPC] Fix COMMON symbol warnings commit a43266355b3d8cf6717a27159f9a417bdff73782 Merge: d5d4db7... 05e9ebb... Author: Linus Torvalds Date: Tue May 29 13:39:52 2007 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: [SCSI] megaraid_sas: intercept cmd timeout and throttle io [SCSI] fusion: Fix |/|| confusion [SCSI] aic94xx: asd_clear_nexus should fail if the cleared task does not complete [SCSI] aic7xxx: fix aicasm build failure with gcc-3.4.6 [SCSI] aacraid: apply commit config for reset_devices flag [SCSI] sd: fix refcounting regression in suspend/resume routines [SCSI] aacraid: fix panic on short Inquiry [SCSI] aacraid: Correct sa platform support. (Was: [Bug 8469] Bad EIP value on pentium3 SMP kernel-2.6.21.1) [SCSI] NCR53C9x: correct spelling mistake in deprecation notice [SCSI] tgt: fix a rdma indirect transfer error bug [SCSI] MegaRAID: Update MAINTAINERS email-id [SCSI] stex: minor cleanup and version update [SCSI] stex: fix reset recovery for console device [SCSI] stex: extend hard reset wait time [SCSI] stex: fix id mapping issue [SCSI] ipr: Proper return codes for eh_dev_reset for SATA devices [SCSI] zfcp: IO stall after deleting and path checker changes after reenabling zfcp devices [SCSI] zfcp: avoid clutter in erp_dbf commit d5d4db704b962773c03ee3beb3258b6450611e66 Author: Alan Stern Date: Tue May 29 16:34:52 2007 -0400 USB: replace flush_workqueue with cancel_sync_work This patch (as912) replaces a couple of calls to flush_workqueue() with cancel_sync_work() and cancel_rearming_delayed_work(). Using a more directed approach allows us to avoid some nasty deadlocks. The prime example occurs when a first-level device (the parent is a root hub) is removed while at the same time the root hub gets a remote wakeup request. khubd would try to flush the autosuspend workqueue while holding the root-hub's lock, and the remote-wakeup workqueue routine would be waiting to lock the root hub. The patch also reorganizes the power management portion of usb_disconnect(), separating it out into its own routine. The autosuspend workqueue entry is cancelled immediately instead of waiting for the device's release routine. In addition, synchronization with the autosuspend thread is carried out even for root hubs (an oversight in the original code). Signed-off-by: Alan Stern Cc: Andrew Morton Cc: Greg KH Cc: Mark Lord Signed-off-by: Linus Torvalds commit 7db35f31cbb8ca1dbaba03d74b7db79ace084358 Author: David S. Miller Date: Tue May 29 02:22:14 2007 -0700 [SPARC64]: Fill holes in hypervisor APIs and fix KTSB registry. Several interfaces were missing and others misnumbered or improperly documented. Also, make sure to check the return value when registering the kernel TSBs with the hypervisor. This helped to find the 4MB kernel TSB alignment bug fixed in a previous changeset. Signed-off-by: David S. Miller commit 2d9e2763c22a4ce41c3cc5f35366a51f1eba38dc Author: David S. Miller Date: Tue May 29 01:58:31 2007 -0700 [SPARC64]: Fix two bugs wrt. kernel 4MB TSB. 1) The TSB lookup was not using the correct hash mask. 2) It was not aligned on a boundary equal to it's size, which is required by the sun4v Hypervisor. wasn't having it's return value checked, and that bug will be fixed up as well in a subsequent changeset. Signed-off-by: David S. Miller commit 5f81941c9d47f783e834028dcfb8548809da5a53 Author: Martin Habets Date: Tue May 29 01:11:57 2007 -0700 [SPARC]: Mark as emulating cmpxchg, add appropriate depends for DRM. The DRM code depends on an atomic version of cmpxchg(), which is not available on sparc32. Since other platforms besides sparc32 have this issue a KCONFIG option is added for it. Signed-off-by: Martin Habets Signed-off-by: David S. Miller commit 6197fe4d720ea3e2ee94cdc7ef32d6c0151199de Author: Kyle McMartin Date: Tue May 29 02:51:13 2007 -0700 [SPARC]: Emulate cmpxchg like parisc Signed-off-by: Kyle McMartin Signed-off-by: David S. Miller commit 679292993c77c06f7ade4e317c13256b92c2651b Author: David S. Miller Date: Sun May 27 20:24:47 2007 -0700 [SPARC64]: Fix _PAGE_EXEC_4U check in sun4u I-TLB miss handler. It was using an immediate _PAGE_EXEC_4U value in an 'and' instruction to perform the test. This doesn't work because the immediate field is signed 13-bit, this the mask being tested against the PTE was 0x1000 sign-extended to 32-bits instead of just plain 0x1000. Signed-off-by: David S. Miller commit b00ccd0f0b3fe8776aead63ec96313e84451b337 Author: Jan Engelhardt Date: Sun May 27 14:48:54 2007 -0700 [SPARC]: Linux always started with 9600 8N1 The Linux kernel ignored the PROM's serial settings (115200,n,8,1 in my case). This was because mode_prop remained "ttyX-mode" (expected: "ttya-mode") due to the constness of string literals when used with "char *". Since there is no "ttyX-mode" property in the PROM, Linux always used the default 9600. [ Investigation of the suncore.s assembler reveals that gcc optimizied away the stores, yet did not emit a warning, which is a pretty anti-social thing to do and is the only reason this bug lived for so long -DaveM ] Signed-off-by: Jan Engelhardt Signed-off-by: David S. Miller commit 7189859f28b7064a83b6ab4036bb334279f922c2 Author: Horst H. von Brand Date: Sat May 26 17:47:53 2007 -0700 [SPARC64]: arch/sparc64/time.c doesn't compile on Ultra 1 (no PCI) This is bug 8540 on bugzilla.kernel.org arch/sparc64/time.c contains references to assorted bq4802 stuff if CONFIG_PCI is not set, and compile fails. I #ifdef'ed out everything that looks PCI-ish in that file. Signed-off-by: David S. Miller commit 22adb358e816ce6aa0afb231ae9d826b0bddc8b0 Author: David S. Miller Date: Sat May 26 01:14:43 2007 -0700 [SPARC64]: Eliminate NR_CPUS limitations. Cheetah systems can have cpuids as large as 1023, although physical systems don't have that many cpus. Only three limitations existed in the kernel preventing arbitrary NR_CPUS values: 1) dcache dirty cpu state stored in page->flags on D-cache aliasing platforms. With some build time calculations and some build-time BUG checks on page->flags layout, this one was easily solved. 2) The cheetah XCALL delivery code could only handle a cpumask with up to 32 cpus set. Some simple looping logic clears that up too. 3) thread_info->cpu was a u8, easily changed to a u16. There are a few spots in the kernel that still put NR_CPUS sized arrays on the kernel stack, but that's not a sparc64 specific problem. Signed-off-by: David S. Miller commit 5cbc30737398b49f62ae8603129ce43ac7db1a41 Author: David S. Miller Date: Fri May 25 15:49:59 2007 -0700 [SPARC64]: Use machine description and OBP properly for cpu probing. Signed-off-by: David S. Miller commit e01c0d6d8cf29c1c11725837b265598cab687952 Author: David S. Miller Date: Fri May 25 01:04:15 2007 -0700 [SPARC64]: Negotiate hypervisor API for PCI services. Signed-off-by: David S. Miller commit 22d6a1cba3e9ec9baf8ce4d8dd1d088e112a64f1 Author: David S. Miller Date: Fri May 25 00:37:12 2007 -0700 [SPARC64]: Report proper system soft state to the hypervisor. Signed-off-by: David S. Miller commit 36b48973b8f1818d0ae6d16e548081d00162ae39 Author: David S. Miller Date: Fri May 25 00:33:49 2007 -0700 [SPARC64]: Fix typo in sun4v_hvapi_register error handling. Signed-off-by: David S. Miller commit 89a4063e959a4701b998f3f1c3f8a6562ab5ba51 Author: David S. Miller Date: Tue May 22 23:48:10 2007 -0700 [SCSI] ESP: Kill SCSI_ESP_CORE and link directly just like jazz_esp Signed-off-by: David S. Miller commit 5ff263667798946abc15314eae3f341345877d7a Author: Thomas Bogendoerfer Date: Tue May 22 17:03:44 2007 -0700 [SCSI] jazz_esp: Converted to use esp_core. Use new esp_scsi for JAZZ SCSI host adapter driver Signed-off-by: Thomas Bogendoerfer Signed-off-by: David S. Miller commit 5840fc66bb47fa4382bf3229d4979c3fcd375b01 Author: David S. Miller Date: Tue May 22 01:24:14 2007 -0700 [SPARC64]: PCI device scan is way too verbose by default. These messages were very useful when bringing up the OBP based PCI device scan code, but it's just a lot of noise every bootup now especially on big machines. The messages can be re-enabled via 'ofpci_debug=1' on the kernel command line. Signed-off-by: David S. Miller commit 9977e390dd25751fc40e01850da88b37d3c81109 Author: Krzysztof Helt Date: Sat May 19 12:06:02 2007 -0700 [SERIAL] sunzilog: section mismatch fix This patch fixes section mismatch warnings in the sunzilog driver. Signed-off-by: Krzysztof Helt Signed-off-by: David S. Miller commit 42e28264783f1b3b9a99e0fdda263ed9bffcf331 Author: Krzysztof Helt Date: Sat May 19 12:03:24 2007 -0700 [SPARC32]: Removes mismatch section warnigs in sparc time.c file This patch removes mismatch section warnings in the sparc/kernel/time.c file. Signed-off-by: Krzysztof Helt Signed-off-by: David S. Miller commit 59db8102bd0ab7a67d525d086ca08e07d69fadd4 Author: David S. Miller Date: Wed May 23 18:00:46 2007 -0700 [SPARC64]: Don't be picky about virtual-dma values on sun4v. Handle arbitrary base and length values as long as they are multiples of IO_PAGE_SIZE. Bug found by Arun Kumar Rao. Signed-off-by: David S. Miller commit a1aadd55fb43e31407aecc4ebaf0258130a98238 Author: Christoph Hellwig Date: Wed May 23 14:57:49 2007 -0700 [SPARC64]: Kill unused DIE_PAGE_FAULT enum value. sparc64 got rid of the pagefault notifiers, so the enum value for them can go away aswell. Signed-off-by: Christoph Hellwig Signed-off-by: David S. Miller commit b68a890fa3cd977365fda2b1f1ec4e8dc58baddf Author: Christoph Hellwig Date: Wed May 23 14:56:45 2007 -0700 [SCSI] pluto: Use wait_for_completion_timeout. Signed-off-by: Christoph Hellwig Signed-off-by: David S. Miller commit 350958f984268dcf0f087aac78c5b9fe2846aeff Author: Jeff Garzik Date: Sun May 27 07:09:18 2007 -0400 firewire: fix return code Fix this warning on x86-64 drivers/firewire/fw-cdev.c:798: warning: initialization from incompatible pointer type by making the return code of ioctl_send_request() the same as all the other ioctl_xxx() return codes. Signed-off-by: Jeff Garzik Signed-off-by: Stefan Richter commit 9a60731d0036a6c6c265acd4248c17fd24fc8e13 Author: Stefan Richter Date: Fri May 25 13:54:49 2007 +0200 firewire: prefix modules with firewire- instead of fw- Of course everybody immediately associates "fw-" with FireWire, not firmware or firewall or whatever. But "firewire-" has a nice ring to it too. Signed-off-by: Stefan Richter Acked-by: Kristian Hoegsberg commit ec839e43fbe1b1ab74264ac510f6cd9c8e8334a4 Author: Kristian Høgsberg Date: Tue May 22 18:55:48 2007 -0400 firewire: Add missing byteswapping for receive DMA programs. Signed-off-by: Kristian Hoegsberg Signed-off-by: Stefan Richter commit 976da96a5d4fe84bd292b950e566325dc3e5904e Author: Petr Vandrovec Date: Sun May 13 22:14:44 2007 -0700 ieee1394: raw1394: Fix async send While playing with libiec61883 I've noticed that async_send is broken because it was doing copy_from_user(...., packet->data_size) before packet->data_size was set to any useful value. It got broken when packet->allocated_data_size got introduced, as hpsb_alloc_packet does not set packet->data_size anymore. (Regression in 2.6.22-rc1) Signed-off-by: Petr Vandrovec Signed-off-by: Stefan Richter commit ef50a6c59dc66f22eba67704e291d709f21e0456 Author: Stefan Richter Date: Mon May 21 01:05:41 2007 +0200 ieee1394: eth1394: bring back a parent device This adds a real parent device to eth1394's ethX device like in Linux 2.6.20 and older. However, due to unfinished conversion of the ieee1394 away from class_device, we now refer to the FireWire controller's PCI device as the parent, not to the ieee1394 driver's fw-host device. Having a real parent device instead of a virtual one allows udev scripts to distinguish eth1394 interfaces from networking bridges, bondings and the likes. Fixes a regression since 2.6.21: https://bugs.gentoo.org/show_bug.cgi?id=177199 Signed-off-by: Stefan Richter commit 7a97bc03e089d1a75dc533f0fe69ec8dac672916 Author: Stefan Richter Date: Sat May 5 17:25:51 2007 +0200 ieee1394: eth1394: handle tlabel exhaustion When eth1394 was unable to acquire a transaction label, it just dropped outgoing packets without attempt to resend them later. The transmit queue is now halted if no tlabel is available to ->hard_start_xmit(). A workqueue job is then scheduled to catch the moment when ieee1394 recycled the next lot of tlabels. Fixes http://bugzilla.kernel.org/show_bug.cgi?id=8402 Signed-off-by: Stefan Richter commit 69c29fa7d142d65b13e366ae51e50944484b65ab Author: Stefan Richter Date: Sat May 5 17:19:09 2007 +0200 ieee1394: eth1394: remove bogus netif_wake_queue When we are within hard_start_xmit, the queue is already awake. Signed-off-by: Stefan Richter commit 20e2008e1f24a6831bf4311f8e2f8692f16a92de Author: Stefan Richter Date: Sat May 5 17:18:12 2007 +0200 ieee1394: sbp2: include workqueue.h Signed-off-by: Stefan Richter commit 6996abf0962bb86b6285987a4698f6d275ff531f Author: Nicolas Boichat Date: Sun May 27 22:17:43 2007 +0200 hwmon/applesmc: Handle name file creation error and deletion The previous patch was incomplete. Signed-off-by: Nicolas Boichat Signed-off-by: Jean Delvare commit 548c343b2ff03488b913440799e83d66d7db8fad Author: Jean Delvare Date: Sun May 27 22:17:43 2007 +0200 hwmon/applesmc: Simplify dependencies The dependency upon HWMON is now handled at menu level. Signed-off-by: Jean Delvare Cc: Nicolas Boichat commit 45f2acc484b31d429eb1359c48ea5cd3acb869cd Author: Jean Delvare Date: Sun May 27 22:17:43 2007 +0200 hwmon-vid: Don't spam the logs when VRM version is missing If we cannot guess which VRM version the CPU uses, we set it to 0 and log it. So we shouldn't spam the log each time vid_from_reg() is later called with vrm 0. Signed-off-by: Jean Delvare Acked-by: Rudolf Marek commit e142e2a30787e9fa1bf0f66aa1d01727ce718cc7 Author: Jean Delvare Date: Sun May 27 22:17:43 2007 +0200 hwmon/w83627hf: Be quiet when no chip is found Signed-off-by: Jean Delvare commit 67f363b1f6a31cf5027a97372f64bcced4f05ba6 Author: Rudolf Marek Date: Sun May 27 22:17:43 2007 +0200 hwmon/coretemp: Add more safety checks Add detection of AE18 Errata of Core processor and warns users that the absolute readings might be wrong for Core2 processor. Signed-off-by: Rudolf Marek Signed-off-by: Jean Delvare commit 7574d7e937f81754dfd82deac24aea5880107e2d Author: Jean Delvare Date: Sun May 27 22:17:43 2007 +0200 hwmon/ds1621: Fix swapped temperature limits The low temperature limit and the high temperature limit registers have been accidentally swapped, causing alarms to trigger when they shouldn't. Signed-off-by: Jean Delvare Acked-by: Aurelien Jarno commit 05e9ebbefb379a4da782b21b8427c88ac28a2334 Author: Sumant Patro Date: Thu May 17 05:47:51 2007 -0700 [SCSI] megaraid_sas: intercept cmd timeout and throttle io eh_timed_out call back (megasas_reset_timer) is used to throttle io to the adapter when it is called the first time for a scmd. The MEGASAS_FW_BUSY flag is set and can_queue reduced to 16. The can_queue is restored from completion routine in following two conditions : 5 seconds has elapsed and the # of outstanding cmds in FW is < 17. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit 58da10bb3fe680a197e83d5eccb5265a721c98e2 Author: Kumar Gala Date: Wed May 23 09:51:46 2007 -0500 [POWERPC] Fix Kconfig warning Fix config warning related to select usage: drivers/macintosh/Kconfig:117:warning: 'select' used by config symbol 'PMAC_APM_EMU' refers to undefined symbol 'SYS_SUPPORTS_APM_EMULATION' Signed-off-by: Kumar Gala commit c1c9889a3860028b3578b98c3a56bdf0dd658920 Author: Kumar Gala Date: Wed May 23 07:59:06 2007 -0500 [PPC] Fix modpost warning Mark pte_alloc_one_kernel as __init_refok to fix the following warning: WARNING: arch/ppc/mm/built-in.o(.text+0x1114): Section mismatch: reference to .init.text:early_get_page (between 'pte_alloc_one_kernel' and 'v_mapped_by_tlbcam') Signed-off-by: Kumar Gala commit f1aed92464def83fc3677cade823cad71cf5f0d4 Author: Kumar Gala Date: Wed May 23 07:49:37 2007 -0500 [POWERPC] Fix modpost warning Mark pte_alloc_one_kernel as __init_refok to fix the following warning: WARNING: arch/powerpc/mm/built-in.o(.text+0x1068): Section mismatch: reference to .init.text:early_get_page (between 'pte_alloc_one_kernel' and 'steal_context') Signed-off-by: Kumar Gala commit 405861a0429113f8e426092af09dd05ec6209410 Author: Li Yang Date: Wed May 23 11:28:03 2007 +0800 [POWERPC] Fix Section mismatch warnings This patch fix the following Section mismatch warnings in powerpc code. WARNING: arch/powerpc/platforms/built-in.o - Section mismatch: reference to .init.data:mv643xx_eth_pd_devs from .text between 'mv643xx_eth_add_pds' (at offset 0x9ed2) and 'gg2_read_config' WARNING: arch/powerpc/platforms/built-in.o - Section mismatch: reference to .init.data:mv643xx_eth_pd_devs from .text between 'mv643xx_eth_add_pds' (at offset 0x9ed6) and 'gg2_read_config' WARNING: arch/powerpc/platforms/built-in.o - Section mismatch: reference to .init.text:note_scsi_host from __ksymtab between '__ksymtab_note_scsi_host' (at offset 0x8) and '__ksymtab_sys_ctrler' Signed-off-by: Li Yang Signed-off-by: Kumar Gala commit 90c615bc42886f23a6112733a949d0f6fbe343b6 Author: Timur Tabi Date: Wed May 23 07:23:55 2007 -0500 [POWERPC] QE: fix Kconfig 'select' warning with UCC_FAST The UCC_GETH Kconfig option in drivers/net/Kconfig had a line to select the UCC_FAST option is arch/powerpc/sysdev/qe_lib/Kconfig, which is only used on PowerPC builds. On other architectures, this would generated a warning. The fix is to have UCC_FAST depend on UCC_GETH. Signed-off-by: Timur Tabi Signed-off-by: Andrew Morton Signed-off-by: Kumar Gala commit f2fb9eb3482c9ab3cca84cf0c80f646ce9aeb4de Author: Domen Puncer Date: Mon May 21 08:56:00 2007 +0200 [POWERPC] 52xx: unbreak lite5200 dts (_pic vs. -pic) Unbreak lite5200 dts, which were broken by 5c1992f83304cf2d56934dd6c06709b96e1b0c81 Signed-off-by: Domen Puncer Acked-by: Sylvain Munaut Signed-off-by: Kumar Gala commit c199426eff6c1a144d1123a80dc123562a9ec7d2 Author: Kumar Gala Date: Thu May 17 07:52:42 2007 -0500 [PPC] Remove duplicate export of __div64_32. We now get the export of __div64_32 from lib/div64.c and can drop the one in ppc_ksysm.c Signed-off-by: Kumar Gala commit 9c05e63e9180011e791c6c72ce38b45c1a3fa898 Author: Kumar Gala Date: Mon May 14 17:12:24 2007 -0500 [PPC] Fix COMMON symbol warnings We get the following warnings in various ARCH=ppc builds: WARNING: "ee_restarts" [arch/ppc/kernel/built-in] is COMMON symbol WARNING: "fee_restarts" [arch/ppc/kernel/built-in] is COMMON symbol WARNING: "htab_hash_searches" [arch/ppc/mm/built-in] is COMMON symbol WARNING: "next_slot" [arch/ppc/mm/built-in] is COMMON symbol WARNING: "mmu_hash_lock" [arch/ppc/mm/built-in] is COMMON symbol WARNING: "primary_pteg_full" [arch/ppc/mm/built-in] is COMMON symbol WARNING: "global_dbcr0" [arch/ppc/kernel/built-in] is COMMON symbol Switch to local symbols for ee_restarts, fee_restarts, and global_dbcr0 and global symbols for mmu_hash_lock, next_slot, primary_pteg_full, and htab_hash_searches. (except mmu_hash_lock which is global) and space directive instead. Signed-off-by: Kumar Gala commit 3d9780b97667fcd63159c0933fdce75465da6c70 Author: Dave Jones Date: Mon May 21 20:59:47 2007 -0400 [SCSI] fusion: Fix |/|| confusion There are several cases where the fusion driver uses the logical || to try to do an arithmetical or ... fix by replacing with |. Signed-off-by: Dave Jones Acked-by: "Moore, Eric" Signed-off-by: James Bottomley commit 8fdcf86af61bfba744f5868ec04dad71637ac33a Author: Darrick J. Wong Date: Wed May 16 14:01:48 2007 -0700 [SCSI] aic94xx: asd_clear_nexus should fail if the cleared task does not complete Every so often, the driver will call asd_clear_nexus to clean out a task. It is supposed to be the case that the CLEAR NEXUS does not go on the done list until after the task itself has been put on the done list, but for some reason this doesn't always happen. Thus, the wait_for_completion_timeout call times out, and we return success. This makes libsas free the task even though the task hasn't completed, leading to a BUG_ON message from aic94xx_hwi.c around line 341. We should return failure from asd_clear_nexus so that libsas tries again; at a bare minimum it shouldn't be freeing active tasks. I _think_ this will fix one of the SCB timeout crash problems (though I've not been able to reproduce it lately...) Signed-off-by: Darrick J. Wong Signed-off-by: James Bottomley commit f45ffaec2e51071ea0067849cbb84df9e0531b35 Author: James Bottomley Date: Tue May 22 09:26:22 2007 -0500 [SCSI] aic7xxx: fix aicasm build failure with gcc-3.4.6 On Tue, 2007-05-22 at 06:51 -0500, Bob Tracy wrote: > Second try: originally reported this back on April 17th. 2.6.X > kernel builds started failing after I upgraded my compiler from > gcc-3.3.X to gcc-3.4.6: > > make -C drivers/scsi/aic7xxx/aicasm > (...) > gcc -I/usr/include -I. aicasm.c aicasm_symbol.c aicasm_gram.c aicasm_macro_gram.c aicasm_scan.c aicasm_macro_scan.c -o aicasm -ldb > aicasm_gram.y:1948: error: conflicting types for 'yyerror' > aicasm_gram.tab.c:3004: error: previous implicit declaration of 'yyerror' was here > aicasm_macro_gram.y:162: error: conflicting types for 'mmerror' > aicasm_macro_gram.tab.c:1196: error: previous implicit declaration of 'mmerror' was here Fix is to add a prototype for yyerror and mmerror to the relevant files. Signed-off-by: James Bottomley commit 1208bab5d07c9a9172f04b76dc107c37507a9bb3 Author: Salyzyn, Mark Date: Tue May 22 09:32:29 2007 -0400 [SCSI] aacraid: apply commit config for reset_devices flag Under some conditions associated with the unclean transition to kdump, the aacraid adapters will view the array as foreign and not export it to prevent access and data manipulation. The solution is to submit a commit configuration to export the devices since this is a expected behavior when transitioning to a kdump kernel. This patch adds the aacraid.reset_devices flag and when either this or the global reset_devices flag is set, ensures that a commit config is issued and extends the startup_timeout if it is set less than 5 minutes. Signed-off-by: Mark Salyzyn Signed-off-by: James Bottomley commit 09ff92fea2890c697a36d8b26f5a3ea725ef8fb4 Author: Alan Stern Date: Mon May 21 09:55:04 2007 -0400 [SCSI] sd: fix refcounting regression in suspend/resume routines This patch (as909) fixes a couple of refcounting errors in the sd driver's suspend and resume methods. Signed-off-by: Alan Stern Signed-off-by: James Bottomley commit cab537d609fb718e9fb09d73e3e3e3062db25743 Author: James Bottomley <[mailto:James.Bottomley@SteelEye.com]> Date: Wed May 16 10:06:39 2007 -0400 [SCSI] aacraid: fix panic on short Inquiry Unable to handle kernel paging request at ffff8101c0000000 RIP: [] :aacraid:aac_internal_transfer+0xd6/0xe3 PGD 8063 PUD 0 Oops: 0000 [1] SMP last sysfs file: /block/sdb/removable CPU 2 Modules linked in: autofs4(U) hidp(U) nfs(U) lockd(U) fscache(U) nfs_acl(U) rfcomm(U) l2cap(U) bluetooth(U) sunrpc(U) ipv6(U) cpufreq_ondemand(U) dm_mirror(U) dm_mod(U) video(U) sbs(U) i2c_ec(U) button(U) battery(U) asus_acpi(U) acpi_memhotplug(U) ac(U) parport_pc(U) lp(U) parport(U) joydev(U) ide_cd(U) i2c_i801(U) i2c_core(U) shpchp(U) cdrom(U) bnx2(U) sg(U) pcspkr(U) ata_piix(U) libata(U) aacraid(U) sd_mod(U) scsi_mod(U) ext3(U) jbd(U) ehci_hcd(U) ohci_hcd(U) uhci_hcd(U) Pid: 2352, comm: syslogd Not tainted 2.6.18-prep #1 RIP: 0010:[] [] :aacraid:aac_internal_transfer+0xd6/0xe3 RSP: 0000:ffff8101bfd1fe68 EFLAGS: 00010083 RAX: 0000000000000063 RBX: 0000000000000008 RCX: 00000000ffd1fea0 RDX: ffffffff802da628 RSI: ffff8101c0000000 RDI: ffff8101b2a08168 RBP: ffff8101b2728010 R08: ffffffff802da628 R09: 0000000000000046 R10: 0000000000000000 R11: 0000000000000080 R12: 0000000000000010 R13: ffff8101bfd1fea8 R14: ffff8101bc74df58 R15: ffff8101bc74df58 FS: 00002aaaab0146f0(0000) GS:ffff8101bfcd2e40(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: ffff8101c0000000 CR3: 00000001bdecd000 CR4: 00000000000006e0 Process syslogd (pid: 2352, threadinfo ffff8101bc74c000, task ffff8101bd979040) Stack: 0000000000000012 0000000000000036 0000000000000000 ffff8101bee9a800 ffff8101be9d3a00 ffff8101be9d3a00 ffff8101be8014f8 ffffffff880b26cc 40212227607e3141 2029282a26252423 0000000000000003 ffff810037e3a000 Call Trace: ] :aacraid:get_container_name_callback+0x8b/0xb5 [] :aacraid:aac_intr_normal+0x1b3/0x1f9 [] :aacraid:aac_rkt_intr+0x37/0x115 [] __rcu_process_callbacks+0xf8/0x1a8 [] handle_IRQ_event+0x29/0x58 [] __do_IRQ+0xa4/0x105 [] __do_softirq+0x5e/0xd5 [] do_IRQ+0xe7/0xf5 [] ret_from_intr+0x0/0xa On digging into it, it turned out that the customer was probing an aacraid device with an INQUIRY of 8 bytes. The way aacraid works, it was blindly trying to use aac_internal_transfer to copy the container name to byte 16 of the inquiry data, resulting in a negative transfer length. It then copies over the whole of kernel memory before dropping off the end. Fix updated and corrected by Mark Salyzyn Signed-off-by: James Bottomley commit 2ab01efd1d2a24db53b4c5d28a2e20cf2b1206c5 Author: Salyzyn, Mark Date: Tue May 15 09:14:21 2007 -0400 [SCSI] aacraid: Correct sa platform support. (Was: [Bug 8469] Bad EIP value on pentium3 SMP kernel-2.6.21.1) http://bugzilla.kernel.org/show_bug.cgi?id=8469 As discussed in the bugzilla outlined below, we have an sa based (Mustang) RAID adapter on the system, a Dell PERC2/QC. Affected controllers are HP NetRAID, Adaptec AAC-364, Dell PERC2/QC or Adaptec 5400S. This problem coincides with the introduction of the adapter_comm and adapter_deliver platform functions (Message [PATCH 1/4] aacraid: rework communication support code, January 23 2007, which initially migrated to 2.6.21) The panic occurs with an uninitialized adapter_deliver platform function pointer. The enclosed patch, unmodified as tested by Rainer, solves the problem. Signed-off-by: Mark Salyzyn Signed-off-by: James Bottomley commit ed56047aecaddc0a45bb23b61ce933fb81f67ef9 Author: Christoph Hellwig Date: Sun May 13 22:48:31 2007 +0200 [SCSI] NCR53C9x: correct spelling mistake in deprecation notice On Mon, Apr 30, 2007 at 03:16:39PM +0200, Geert Uytterhoeven wrote: > > +What: old NCR53C9x driver > > +When: October 2007 > > +Why: Replaced by the much better esp_scsi driver. Actual low-level > > + driver can ported over almost trivially. > ^ > be current linus' tree still has my spelling mistake. Here's a patch to update it Signed-off-by: James Bottomley commit bcd4e22540309f2f135f278cffe134c63dbcaee5 Author: FUJITA Tomonori Date: Fri May 11 19:10:45 2007 +0900 [SCSI] tgt: fix a rdma indirect transfer error bug This sets sg_dma_len to a proper value. Signed-off-by: FUJITA Tomonori Signed-off-by: James Bottomley commit bdd0d7571ac83190ec0caafb86d0d35ba2616fd2 Author: Sumant Patro Date: Thu May 10 07:22:35 2007 -0700 [SCSI] MegaRAID: Update MAINTAINERS email-id Update Maintainer email-id for MegaRAID SCSI drivers. Signed-off-by: Sumant Patro Signed-off-by: James Bottomley commit c25da0afa753c29cd99fb41dc73a33ed69556965 Author: Ed Lin Date: Wed May 9 20:50:42 2007 -0800 [SCSI] stex: minor cleanup and version update Add debug information into abort and host_reset routine. Change ioremap to ioremap_nocache. Version updated to 3.6.0000.1. Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit d116a7bc6ab4dcf752078daeaf2276f7d7660595 Author: Ed Lin Date: Wed May 9 20:50:40 2007 -0800 [SCSI] stex: fix reset recovery for console device After reset completed, the scsi error handler sends out TEST_UNIT_READY to the device. For 'normal' devices the command will be handled by firmware. However, because the RAID console only interfaces to scsi mid layer, the firmware will not process the command for it. This will make the console to be offlined right after reset. Add the handling in driver to fix this problem. Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit 69f4a513911455670d3322fb5252b437c0485707 Author: Ed Lin Date: Wed May 9 20:50:37 2007 -0800 [SCSI] stex: extend hard reset wait time During hard bus reset of st_shasta controllers, 1 ms is not enough for 16-port controllers, although it's good for 8-port controllers. Extend the wait time to 100 ms to allow bus resets finish successfully. Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit e0b2e597d5dd8c4f3778545f65c29a9c6aba0e3a Author: Ed Lin Date: Wed May 9 20:50:33 2007 -0800 [SCSI] stex: fix id mapping issue The correct internal mapping of stex controllers should be: id:0~15, lun:0~7 (st_shasta) id:0, lun:0~127 (st_yosemite) id:0~127, lun:0 (st_vsc and st_vsc1) This patch reports the internal mapping to scsi mid layer, eliminating the translation between scsi mid layer and firmware. To achieve this goal, we also need to: -- fail the REPORT_LUNS command for st_shasta because the firmware is known to not report all actual luns -- add an entry in scsi_devindo.c to force sequential lun scan (for st_shasta controllers) -- fail the REPORT_LUNS command for console device -- remove special handling of REPORT_LUNS command for st_yosemite, as there is no translation mapping now Signed-off-by: Ed Lin Signed-off-by: James Bottomley commit 5af23d263c33a3f6fc93facfd87d2a091eff2060 Author: Brian King Date: Wed May 9 15:36:35 2007 -0500 [SCSI] ipr: Proper return codes for eh_dev_reset for SATA devices Currently ipr always returns success from eh_dev_reset when called for a SATA device. If ata_do_eh is unable to recover for some reason, this can result in commands that are still outstanding when ata_do_eh returns. Change ipr to verify no commands are outstanding before returning success. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 9f28745a6b554fdd6b0dbc9856077701a55f9569 Author: Michael Loehr Date: Wed May 9 11:01:24 2007 +0200 [SCSI] zfcp: IO stall after deleting and path checker changes after reenabling zfcp devices IO stall after deleting and path checker changes after reenabling zfcp device Setting one zfcp device offline using chccwdev in a multipath environment and waiting will lead to IO stall on all paths. After setting the zfcp device back online using chccwdev, the devices with io stall will have a different path checker. Devices corresponding to the deleted units are never freed. This has the effect that 'slave_destroy' is never called and zfcp still thinks that this unit is registered (ZFCP_STATUS_UNIT_REGISTERED is still set). Hence the erp routine is not called correctly and the unit is not enabled properly. Do not delete rport and the sdev. Just set the host to block on 'offline'. Setting host online again will then remove the blocked status and everything is fine again. Signed-off-by: Michael Loehr Signed-off-by: Swen Schillig Signed-off-by: James Bottomley commit 869b2b444c58302e3233ce0b671fabf28135a37d Author: Martin Peschke Date: Wed May 9 11:01:20 2007 +0200 [SCSI] zfcp: avoid clutter in erp_dbf avoid clutter in erp_dbf cleanup zfcp_fsf_req_dismiss functions: - avoid clutter in erp_dbf (reqs_active is always 0) - fold called three-line function into calling function - add meaningful comment - coding style Signed-off-by: Martin Peschke Signed-off-by: Swen Schillig Signed-off-by: James Bottomley