- 13 11月, 2008 4 次提交
-
-
由 Yossi Etigin 提交于
Fix a crash in path_rec_completion() during an SM up/down loop. If more than one path record request is issued, the first completion releases path->done, allowing ipoib_flush_paths() to free the path, and thus corrupting it for the second completion. Commit ee1e2c82 ("IPoIB: Refresh paths instead of flushing them on SM change events") added the field path->valid and changed the test "if (!path)" to "if (!path || !path->valid)". This change made it possible for a path with an outstanding query to pass the test and issue another query on the same path. Having two queries on the same path leads to a crash. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=1325>. Signed-off-by: NYossi Etigin <yosefe@voltaire.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Yossi Etigin 提交于
ipoib_flush_paths() can hang during an SM up/down loop: if path_rec_start() fails (for instance, because there is no sm_ah), the path is still added to the path list by neigh_add_path(). Then, ipoib_flush_paths() will wait for path->done, but it will never complete because the request was not issued at all. Fix this by completing path->done if issuing the query fails. This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=1329>. Signed-off-by: NYossi Etigin <yosefe@voltaire.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Yossi Etigin 提交于
If a P_Key is not present when an interface is created, ipoib_open() will return after doing napi_enable(). ipoib_open() will be called again from ipoib_pkey_poll() when the P_Key appears, after NAPI has already been enabled, and try to enable it again. This triggers a BUG_ON() in napi_enable(). Fix this by moving the call to napi_enable() to after the test for P_Key presence. Signed-off-by: NYossi Etigin <yosefe@voltaire.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Steve Wise 提交于
When the iw_cxgb3 module's cxgb3_client "add" func gets called by the cxgb3 module, the iwarp driver ends up calling the ethtool ops get_drvinfo function in cxgb3 to get the fw version and other info. Currently the iwarp driver grabs the rtnl lock around this down call to serialize. As of 2.6.27 or so, things changed such that the rtnl lock is held around the call to the netdev driver open function. Also the cxgb3_client "add" function doesn't get called if the device is down. So, if you load cxgb3, then load iw_cxgb3, then ifconfig up the device, the iw_cxgb3 add func gets called with the rtnl_lock held. If you load cxgb3, ifconfig up the device, then load iw_cxgb3, the add func gets called without the rtnl_lock held. The former causes the deadlock, the latter does not. In addition, there are iw_cxgb3 sysfs handlers that also can call down into cxgb3 to gather the fw and hw versions. These can be called concurrently on different processors and at any time. Thus we need to push this serialization down in the cxgb3 driver get_drvinfo func. The fix is to remove rtnl lock usage, and use a per-device lock in cxgb3. Signed-off-by: NSteve Wise <swise@opengridcomputing.com> Acked-by: NDivy Le Ray <divy@chelsio.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 12 11月, 2008 1 次提交
-
-
由 Stefan Roscher 提交于
If the initialization of a special QP (e.g. AQP1) fails due to a software timeout, we have to remove the reference to that special QP struct from the port struct to stop the driver from accessing the QP, since it will be/has been destroyed by the caller, eg in this case ib_mad. Signed-off-by: NStefan Roscher <stefan.roscher@de.ibm.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 06 11月, 2008 1 次提交
-
-
由 Vladimir Sokolovsky 提交于
Set mr->umem to NULL in mlx4_ib_alloc_fast_reg_mr(). Otherwise ib_dereg_mr() may invoke ib_umem_release() on a random pointer value and get an oops. Signed-off-by: NVladimir Sokolovsky <vlad@mellanox.co.il> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 05 11月, 2008 1 次提交
-
-
由 Roland Dreier 提交于
Fix drivers/net/mlx4/profile.c:55: warning: 'res_name' defined but not used by making mlx4_dbg() always use all of its parameters, regardless of whether CONFIG_MLX4_DEBUG is set or not. Reported-by: NAlexander Beregalov <a.beregalov@gmail.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 03 11月, 2008 4 次提交
-
-
由 Chien Tung 提交于
Under heavy load, there is an compatibility issue regarding PCIe write credits with certain chipsets. It can be mitigated by limiting read requests to 256 Bytes. This workaround is always enabled for Tbird2 on Gladius. We also add a module parameter to enable workaround for non-Gladius cards. Signed-off-by: NChien Tung <chien.tin.tung@intel.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Vadim Makhervaks 提交于
Fix CQ allocation for multicast receive queue applications. Before this patch, the CQ was not lined up with the right NIC. Signed-off-by: NVadim Makhervaks <vadim.makhervaks@intel.com> Signed-off-by: NChien Tung <chien.tin.tung@intel.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Chien Tung 提交于
* Roll back allocated structures on failures. * Use GFP_ATOMIC instead of GFP_KERNEL since we are holding a lock. * Acquire nesadapter->pbl_lock when modifying PBL counters. * Decrement PBL counters on deallocation. Signed-off-by: NChien Tung <chien.tin.tung@intel.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
由 Ilpo Järvinen 提交于
Signed-off-by: NIlpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 02 11月, 2008 1 次提交
-
-
由 Roland Dreier 提交于
The array wqe->read.reserved has only two entries, but iwch_post_zb_read() sets [0], [1], and [2], which is one too many. This is harmless since it runs into the next field, rem_stag, which is initialized correctly immediately after, but we might as well get things right, especially since it makes the code smaller. This was spotted by the Coverity checker (CID 2475). Signed-off-by: NRoland Dreier <rolandd@cisco.com> Acked-by: NSteve Wise <swise@opengridcomputing.com>
-
- 28 10月, 2008 1 次提交
-
-
由 Ralph Campbell 提交于
When the last packet of a RDMA write with immediate is received, the next receive work queue entry ID should be used to generate a completion entry. The code was incorrectly resetting part of the state used to copy the last packet. Signed-off-by: NRalph Campbell <ralph.campbell@qlogic.com> Signed-off-by: NRoland Dreier <rolandd@cisco.com>
-
- 24 10月, 2008 26 次提交
-
-
由 Len Brown 提交于
pcc_acpi is based on an old version of drivers/misc/panasonic-laptop.c Signed-off-by: NLen Brown <len.brown@intel.com>
-
由 Linus Torvalds 提交于
This was another merge problem that wasn't a data conflict, but due to independent changes in two branches that just didn't work together. The pcc-acpi staging driver used acpi_driver_data(device) = hotkey; to set driver data, but the ACPI merge made that invalid in commit db89b4f0 ("ACPI: catch calls of acpi_driver_data on pointer of wrong type"), and now you're supposed to just do. device->driver_data = hotkey; instead. Fix it up. Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 H. Peter Anvin 提交于
When computing the full size of the device, we need to cast sdkp->capacity before shifting, since in some configurations sector_t can be a 32-bit number. Also, change ffz(~x) to the more idiomatic ilog2(x). Signed-off-by: NH. Peter Anvin <hpa@zytor.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Julia Lawall 提交于
The pattern !E && !E->fld is nonsensical. The patch below updates this according to the assumption that && should be ||. But perhaps another solution was intended. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @disable and_comm@ expression E; identifier fld; @@ - !E && !E->fld + !E || !E->fld // </smpl> Signed-off-by: NJulia Lawall <julia@diku.dk> Acked-By: NThomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Alan Stern 提交于
This patch (as1138) removes from sd.c some old code for switching from 10-byte commands to 6-byte commands. This code is redundant -- the switching for READ and WRITE is already handled in scsi_io_completion() and the switching for MODE SENSE is already handled in scsi_mode_sense(). (There is no comparable switch for MODE SELECT, but I doubt one is needed.) Furthermore the other handlers do a better job; they check for appropriate ASC and ASCQ values before blindly switching the size. The code in sd.c is known to cause problems with some devices by switching when it shouldn't. Signed-off-by: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 FUJITA Tomonori 提交于
Since the commit 50bed2e2 (sg: disable interrupts inside sg_copy_buffer), no need to disable interrupts before calling scsi_sg_copy_from_buffer. So we can simplify twa_scsiop_execute_scsi_complete() a bit, which disables interrupts just for scsi_sg_copy_from_buffer. Signed-off-by: NFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: NAdam Radford <linuxraid@amcc.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 FUJITA Tomonori 提交于
Since the commit 50bed2e2 (sg: disable interrupts inside sg_copy_buffer), no need to disable interrupts before calling scsi_sg_copy_from_buffer. So we can simplify tw_transfer_internal, which disables interrupts just for scsi_sg_copy_from_buffer. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>\ Acked-by: NAdam Radford <linuxraid@amcc.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Randy Dunlap 提交于
Fix kernel-doc warning: the function short description must be on one line and the previous comment is not kernel-doc but it was confusing scripts/kernel-doc. Warning(lin2627-g3-kdocfixes//drivers/scsi/scsi_netlink.c:221): No description found for parameter 'skb' Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Jamie Wellnitz 提交于
The current handling of NO_SENSE check condition is the same as RECOVERED_ERROR, and assumes that in both cases, the I/O was fully transferred. We have seen cases of arrays returning with NO_SENSE (no error), but the I/O was not completely transferred, thus residual set. Thus, rather than return good_bytes as the entire transfer, set good_bytes to 0, so that the midlayer then applies the residual in calculating the transfer, and for sd, will fail the I/O and fall into a retry path. Signed-off-by: NJamie Wellnitz <Jamie.Wellnitz@emulex.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Kiyoshi Ueda 提交于
This patch implements q->lld_busy_fn() for scsi mid layer to export its busy state for request stacking drivers. For efficiency, no lock is taken to check the busy state of shost/starget/sdev, since the returned value is not guaranteed and may be changed after request stacking drivers call the function, regardless of taking lock or not. When scsi can't dispatch I/Os anymore and needs to kill I/Os (e.g. !sdev), scsi needs to return 'not busy'. Otherwise, request stacking drivers may hold requests forever. Signed-off-by: NKiyoshi Ueda <k-ueda@ct.jp.nec.com> Signed-off-by: NJun'ichi Nomura <j-nomura@ce.jp.nec.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Kiyoshi Ueda 提交于
This patch refactors the busy checking codes of scsi_device, Scsi_Host and scsi_target. There should be no functional change. This is a preparation for another patch which exports scsi's busy state to the block layer for request stacking drivers. Signed-off-by: NKiyoshi Ueda <k-ueda@ct.jp.nec.com> Signed-off-by: NJun'ichi Nomura <j-nomura@ce.jp.nec.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Bernd Schubert 提交于
Make SPI timeout 10s the same as SAS Signed-off-by: NBernd Schubert <bs@q-leap.de> Acked-by: N"Prakash, Sathya" <Sathya.Prakash@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 thomas schorpp 提交于
Take the Diag/Activity-LED of the HBA out of diagnostic mode on PM resume after successful PM resume from standby and HBA restart, it remained always on before. If something fails before complete recovery, it should remain on, since it is a diagnostics LED, reason for the used higher layer for the clear. Signed-off-by: thomas.schorpp@gmail.com Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Alan Cox 提交于
MHZ not Mhz for SI unit pedants Closes bug #6422 Signed-off-by: NAlan Cox <alan@redhat.com> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Akinobu Mita 提交于
Signed-off-by: NAkinobu Mita <akinobu.mita@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NBrian King <brking@us.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Harvey Harrison 提交于
OK to just reuse the outer declaration as it is never used again. drivers/scsi/aic7xxx/aic79xx_pci.c:340:12: warning: symbol 'devconfig' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_pci.c:299:12: originally declared here targpcistat is always assigned just before use, remove the inner declaration. drivers/scsi/aic7xxx/aic79xx_pci.c:486:9: warning: symbol 'targpcistat' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_pci.c:429:9: originally declared here Signed-off-by: NHarvey Harrison <harvey.harrison@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Harvey Harrison 提交于
Redeclared within different if/else blocks, safe to reuse the original from beginning of function. drivers/scsi/aic7xxx/aic79xx_core.c:2475:10: warning: symbol 'scbid' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_core.c:2399:10: originally declared here drivers/scsi/aic7xxx/aic79xx_core.c:2586:10: warning: symbol 'scbid' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_core.c:2399:10: originally declared here drivers/scsi/aic7xxx/aic79xx_core.c:2587:15: warning: symbol 'scb' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_core.c:2393:13: originally declared here Use caminfo for the outer declaration, the redeclared version is iterating over all initiator/target pairs (devices) which. drivers/scsi/aic7xxx/aic79xx_core.c:8857:23: warning: symbol 'devinfo' shadows an earlier one drivers/scsi/aic7xxx/aic79xx_core.c:8711:21: originally declared here Forward declaration was already marked static, make the definition match. drivers/scsi/aic7xxx/aic79xx_core.c:3693:1: warning: symbol 'ahd_devlimited_syncrate' was not declared. Should it be static? Signed-off-by: NHarvey Harrison <harvey.harrison@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Denys Vlasenko 提交于
Signed-off-by: NDenys Vlasenko <vda.linux@googlemail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Denys Vlasenko 提交于
Update .reg files, marking unused registers with dont_generate_debug_code. Comment explains how to use it. Signed-off-by: NDenys Vlasenko <vda.linux@googlemail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Denys Vlasenko 提交于
aic7xxx still contains ~30kb of dead code if pretty printing of registers is requested. These patches deal with it. Size differences: text data bss dec hex filename DEBUG_ENABLE+PRETTY_PRINT: 234697 2362 1188 238247 3a2a7 linux-2.6.26-rc8-/drivers/scsi/aic7xxx/built-in.o 205092 2362 1188 208642 32f02 linux-2.6.26-rc8/drivers/scsi/aic7xxx/built-in.o NO_DEBUG_ENABLE+PRETTY_PRINT: 227272 2362 1172 230806 38596 linux-2.6.26-rc8-/drivers/scsi/aic7xxx/built-in.o 197671 2362 1172 201205 311f5 linux-2.6.26-rc8/drivers/scsi/aic7xxx/built-in.o DEBUG_ENABLE+NO_PRETTY_PRINT: 192457 2362 1188 196007 2fda7 linux-2.6.26-rc8-/drivers/scsi/aic7xxx/built-in.o 192457 2362 1188 196007 2fda7 linux-2.6.26-rc8/drivers/scsi/aic7xxx/built-in.o NO_DEBUG_ENABLE+NO_PRETTY_PRINT: 185040 2362 1172 188574 2e09e linux-2.6.26-rc8-/drivers/scsi/aic7xxx/built-in.o 185040 2362 1172 188574 2e09e linux-2.6.26-rc8/drivers/scsi/aic7xxx/built-in.o This patch: Introduce "dont_generate_debug_code" keyword in aicasm parser. Signed-off-by: NDenys Vlasenko <vda.linux@googlemail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Acked-by: NHannes Reinecke <hare@suse.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Chandra Seetharaman 提交于
Set the path state to be passive when we learn that the controller does not own the path to the LUN. This will avoid sending even a single i/o thru the passive path at the probe time. Signed-off-by: NChandra Seetharaman <sekharan@us.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 James Bottomley 提交于
On Tue, 12 Aug 2008 15:08:14 +0200 Giuliano Pochini <pochini@shiny.it> wrote: > Fujitsu magneto-optical drive, Adaptec 29160 and > Linux Jay 2.6.26 #7 SMP Sun Aug 10 18:34:22 CEST 2008 ppc 7455, altivec supported PowerMac3,6 GNU/Linux > > When I insert a disk and I mount it, scsi_test_unit_ready() is called and > the do-while loop gets sshdr->sense_key == UNIT_ATTENTION in the first > cycle and 0 in the second one. So the if below misses the UNIT_ATTENTION > and sdev->changed = 1 is not executed. At this point bad things can > happen... I'm not sure how to fix this. Any clue ? The problem is essentially caused by us eating UNIT_ATTENTION conditions in scsi_test_unit_ready(). Fix by updating the ->changed flag when this happens if the media is removable. [pochini@shiny.it: updates to tidy up patch] Signed-off-by: NGiuliano Pochini <pochini@shiny.it> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Lee Howard 提交于
These have the Mainpine PCI identifier on however Additional paranoia check for Tornado versions added by Alan Cox (and this time I remembered to do an stg refresh so that the corrections ended up in these patches not randomly attached to another diff -- Alan) Signed-off-by: NLee Howard <lee.howard@mainpine.com> Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 Lee Howard 提交于
Add support for the OxSemi 'Tornado' devices. Reformatted and reworked a bit by Alan Cox Signed-off-by: NLee Howard <lee.howard@mainpine.com> Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 Alan Cox 提交于
Pass the brown paper bags please. I changed the semantics of this so the function was supposed to do the extra kref itself then forgot to do the change.. duh.... Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 Alan Cox 提交于
This seems to have popped up after the recent merges: drivers/watchdog/w83697ug_wdt.c: In function ‘w83697ug_select_wd_register’: drivers/watchdog/w83697ug_wdt.c:105: warning: ‘return’ with a value, in function returning void Signed-off-by: NAlan Cox <alan@redhat.com> Acked-by: NWim Van Sebroeck <wim@iguana.be> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 23 10月, 2008 1 次提交
-
-
由 Christoph Hellwig 提交于
Now that lookup_bdev is exported and used by dm just use it directly instead of through a trivial wrapper. Signed-off-by: NChristoph Hellwig <hch@lst.de> Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
-