22 Jun, 2009
14 commits
-
If a SCSI ULD driver sets blk_queue_prep_rq(), it should clean it
up itself on remove(), and not from the bus callbacks. This
removes the need to hook into bus->remove(), which should not
be used at the same time as driver->remove().[jejb: fix sdkp initialisation problem due to mismerge]
Signed-off-by: Hannes Reinecke
Signed-off-by: Kay Sievers
Signed-off-by: James Bottomley -
setting err as -EOVERFLOW for Too many iscsi targets.
Also fixes a spurious compiler warning for gcc 4.3.3 and gcc 4.4 :
CC drivers/scsi/scsi_transport_iscsi.o
drivers/scsi/scsi_transport_iscsi.c: In function ‘iscsi_add_session’:
drivers/scsi/scsi_transport_iscsi.c:678: warning: ‘err’ may be used uninitialized in this functionSigned-off-by: Jaswinder Singh Rajput
Acked-by: Mike Christie
Signed-off-by: James Bottomley -
The return value from BSG timout function should be based on the state of the
BSG job. This helps block layer to take selective actions to clean up BSG job.Signed-off-by: Giridhar Malavali
Acked-by: FUJITA Tomonori
Signed-off-by: James Bottomley -
Registered the softirq_done function, since this is requried iby an request
using block level request timeout functionality. This function will be called
by the block layer as part of time out clean process to release the BSG
request.Moved some of the BSG request completion activities to softirq_done routine to
take care of both normal and timout completions.Signed-off-by: Giridhar Malavali
Acked-by: FUJITA Tomonori
Signed-off-by: James Bottomley -
This makes a huge difference when you have a serial console on bootup to limit
these messages to a sane number.Signed-off-by: John Stoffel
Signed-off-by: James Bottomley -
People keep sending patches to expose CONFIG_SCSI_WAIT_SCAN as a tunable
item. These patches aren't accepted upstream, so let's stop the ongoing
irritation of people due to the unconditionally installed module and its
Kconfig symbol.Signed-off-by: Stefan Richter
Signed-off-by: James Bottomley -
Fixes a problem seen where sending a PRLI to a target
resulted in it sending a LOGO. This caused the ibmvfc
driver to go back through discovery again, which caused
another PRLI attempt, which caused another LOGO. Fix this
behavior by ignoring LOGO if we haven't even logged into
the target yet.Signed-off-by: Brian King
Signed-off-by: James Bottomley -
Since async events could indicate changes to link status, or
events which could affect decisions made during discovery, we should
process async events prior to command completion responses.Signed-off-by: Brian King
Signed-off-by: James Bottomley -
This patch adds the /sys/module/libfc/parameters/debug_logging
file to sysfs as a module parameter. It accepts an integer
bitmask for logging. Currently it supports:bit
LSB 0 = general libfc debugging
1 = lport debugging
2 = disc debugging
3 = rport debugging
4 = fcp debugging
5 = EM debugging
6 = exch/seq debugging
7 = scsi logging (mostly error handling)the other bits are not used at this time.
The patch converts all of the libfc source files to use
these new macros and removes the old FC_DBG macro.Signed-off-by: Robert Love
Signed-off-by: James Bottomley -
This patch adds a 'debug_logging' module parameter to
libfcoe.ko. It is an unsigned int that represents a bitmask of
available debug logging levels, each of which can be tuned at
runtime. Currently there are only two logging levels for this
module-bit
LSB 0 = libfcoe general logging
1 = FIP loggingSigned-off-by: Robert Love
Signed-off-by: James Bottomley -
This patch converts all FC_DBG statements to use new runtime tunable
debug macros. The fcoe.ko module now has a debug_logging module
parameter.fcoe_debug_logging is an unsigned integer representing a bitmask of all
available logging levels. Currently only two logging levels are
supported-bit
LSB 0 = general fcoe logging
1 = netdevice related loggingThis patch also attempts to clean up some debug statement formatting
so it's more readable.Signed-off-by: Robert Love
Signed-off-by: James Bottomley -
This patch adds support for setting the physical block exponent and
lowest aligned LBA in the READ CAPACITY(16) response.The B0 VPD page is adjusted accordingly.
Signed-off-by: Martin K. Petersen
Acked-by: Douglas Gilbert
Signed-off-by: James Bottomley -
NETDEVICES + NETDEV_1000 need to be enabled so that kconfig will check
those branches for selects and enforce "select UIO" under CNIC.
Otherwise the build fails with:ERROR: "uio_unregister_device" [drivers/net/cnic.ko] undefined!
ERROR: "uio_event_notify" [drivers/net/cnic.ko] undefined!
ERROR: "__uio_register_device" [drivers/net/cnic.ko] undefined!Signed-off-by: Randy Dunlap
Acked-by: Michael Chan
Signed-off-by: James Bottomley -
Ingo molnar reported the error
drivers/net/cnic.c:2520: error: implicit declaration of function ‘__symbol_get’
when CONFIG_MODULES is not defined. Fix by using symbol_get() instead.
Signed-off-by: Michael Chan
Signed-off-by: James Bottomley
21 Jun, 2009
24 commits
-
This reverts commit bc3bf8fd330ce981ce632a1a4a283eee46838f32.
All the commit did was add a second #include of which is
the wrong fix.Signed-off-by: James Bottomley
-
MSI has only been tested on and known to work with PCI-E based adapters. This
patch adds a field to struct ipr_chip_t to indicate which type of interrupt to
use based on what is known about the chip.Signed-off-by: Wayne Boyer
Acked-by: Brian King
Signed-off-by: James Bottomley -
The return value from pci_enable_msi() can not always be trusted. This patch
adds code to generate an interrupt after MSI has been enabled and tests
whether or not we can receive and process it. If the tests fails, then fall
back to LSI.Signed-off-by: Wayne Boyer
Acked-by: Brian King
Signed-off-by: James Bottomley -
There have been several bug reports which identified the Ultrium-3
tape as just hanging up on the bus during certain types of IU
transfer. The identified culpret is type 0x02 (MULTIPLE COMMAND)
transfers. The only way to prevent this tape wedging is to prevent it
from using IU transfers at all. So this patch uses the exported
blacklist matching technology to recognise the drive and force it not
to use IU transfers.Signed-off-by: James Bottomley
-
Right at the moment, we carefully set up the spi_support_xx in the
device configuration routines, but then we never actually use the
results: we rely on the inquiry strings. If we're going to allow
overrides to the inquiry data, we have to rely on our own internal
settings.Signed-off-by: James Bottomley
-
The current scsi_devinfo.c matching routines use a single table for
the global blacklist. However, we're developing a need to blacklist
from specific transports too (notably some tape drives using SPI which
don't respond well to high speed protocols). Instead of developing
separate blacklist matching for each transport class needing it,
enhance the current list matching to permit multiple lists.Signed-off-by: James Bottomley
-
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Commit 7b867cf76fbcc8d77867cbec6f509f71dce8a98f ([SCSI] qla2xxx:
Refactor qla data structures) inadvertently reverted
e792121ec85672c1fa48f79d13986a3f4f56c590 ([SCSI] qla2xxx: Correct
overflow during dump-processing on large-memory ISP23xx parts.).Cc: stable@kernel.org
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Pre-ISP24xx chips have dedicated uses for mailbox 4 and 5 which
software should typically not query nor update.Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
* To set iiDMA speeds for ISP81XX, bits 5-0 are used whereas for
other older ISPs bits 2-0 are used.
* Pass proper VP indexSigned-off-by: Harish Zunjarrao
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Cc: stable@kernel.org
Signed-off-by: Anirban Chakraborty
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Just once, two fcoe instances got the same host number
from scsi_add_host().Use atomic_t and atomic_inc_return() to get next host number.
Subtract 1, so that scsi_host still starts with 0.[jejb: added comment about unusual subtraction]
Signed-off-by: Joe Eykholt
Signed-off-by: James Bottomley -
We need to call blk_end_request_all to complete SMP requests properly.
Signed-off-by: FUJITA Tomonori
Signed-off-by: James Bottomley -
Allow the user to control the debug logs in libiscsi. We will now
have a module param for connection, session & error handling.[Mike Christie - Fixed up to compile on current code and added
missing ISCSI_DBG_EH conversions]Signed-off-by: Erez Zilber
Signed-off-by: Mike Christie
Signed-off-by: James Bottomley -
The net layer might return -EAGAIN because it could not
get space/mem within the sock sndtimeo or becuase the tcp/ip
connection was down. For the latter we do not want to retry
because the conn/session should just be shutdown and restarted.
libiscsi knows the state of the session recovery so propogate
this error to that layer. It will either do iscsi recovery
or have us retry the operation. Right now if we have partially
sent a pdu we would always retry the IO xmit slowing down
recovery.Signed-off-by: Mike Christie
Signed-off-by: James Bottomley -
If we are sending or receiving data for the task successfully do
not run the scsi eh, because we know the task is making progress.Signed-off-by: Mike Christie
Signed-off-by: James Bottomley -
The default kernel pages supported are 4K, 8K, 16K, and 64K. Re-calculate
entries if PAGE_SIZE is not one of the defaults.Signed-off-by: Karen Xie
Signed-off-by: James Bottomley -
The iscsi ddp functionality could be used by multiple iscsi entities,
add a refcnt to keep track of it, so we would not release it pre-maturely.Signed-off-by: Karen Xie
Signed-off-by: James Bottomley -
Query the block limits VPD page and adjust queue minimum and optimal I/O
sizes.Signed-off-by: Martin K. Petersen
Signed-off-by: James Bottomley -
Detect non-rotational devices and set the queue flag accordingly.
Signed-off-by: Martin K. Petersen
Signed-off-by: James Bottomley -
Extract physical block size and lowest aligned LBA from READ
CAPACITY(16) response and adjust queue parameters.Report physical block size and alignment when applicable.
[jejb: fix up trailing whitespace]
Signed-off-by: Martin K. Petersen
Signed-off-by: James Bottomley -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (35 commits)
Input: add driver for Synaptics I2C touchpad
Input: synaptics - add support for reporting x/y resolution
Input: ALPS - handle touchpoints buttons correctly
Input: gpio-keys - change timer to workqueue
Input: ads7846 - pin change interrupt support
Input: add support for touchscreen on W90P910 ARM platform
Input: appletouch - improve finger detection
Input: wacom - clear Intuos4 wheel data when finger leaves proximity
Input: ucb1400 - move static function from header into core
Input: add driver for EETI touchpanels
Input: ads7846 - more detailed model name in sysfs
Input: ads7846 - support swapping x and y axes
Input: ati_remote2 - use non-atomic bitops
Input: introduce lm8323 keypad driver
Input: psmouse - ESD workaround fix for OLPC XO touchpad
Input: tsc2007 - make sure platform provides get_pendown_state()
Input: uinput - flush all pending ff effects before destroying device
Input: simplify name handling for certain input handles
Input: serio - do not use deprecated dev.power.power_state
Input: wacom - add support for Intuos4 tablets
... -
* 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (24 commits)
agp/intel: Make intel_i965_mask_memory use dma_addr_t for physical addresses
agp: add user mapping support to ATI AGP bridge.
drm/i915: enable GEM on PAE.
drm/radeon: fix unused variables warning
agp: switch AGP to use page array instead of unsigned long array
agpgart: detected ALi M???? chipset with M1621
drm/radeon: command stream checker for r3xx-r5xx hardware
drm/radeon: Fully initialize LVDS info also when we can't get it from the ROM.
radeon: Fix CP byte order on big endian architectures with KMS.
agp/uninorth: Handle user memory types.
drm/ttm: Add some powerpc cache flush code.
radeon: Enable modesetting on non-x86.
drm/radeon: Respect AGP cant_use_aperture flag.
drm: EDID endianness fixes.
drm/radeon: this VRAM vs aperture test is wrong, just remove it.
drm/ttm: fix an error path to exit function correctly
drm: Apply "Memory fragmentation from lost alignment blocks"
ttm: Return -ERESTART when a signal interrupts bo eviction.
drm: Remove memory debugging infrastructure.
drm/i915: Clear fence register on tiling stride change.
... -
* 'for-2.6.31' of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (34 commits)
ide-cd: prevent null pointer deref via cdrom_newpc_intr
ide: BUG() on unknown requests
ide: filter out invalid DMA xfer mode changes in HDIO_DRIVE_CMD ioctl handler
ide: do not access ide_drive_t 'drive_data' field directly
sl82c105: implement test_irq() method
siimage: implement test_irq() method
pdc202xx_old: implement test_irq() method (take 2)
cmd64x: implement test_irq() method
cmd640: implement test_irq() method
ide: move ack_intr() method into 'struct ide_port_ops' (take 2)
ide: move IRQ clearing from ack_intr() method to clear_irq() method (take 2)
siimage: use ide_dma_test_irq() (take 2)
cmd64x: implement clear_irq() method (take 2)
ide: call clear_irq() method in ide_timer_expiry()
sgiioc4: coding style cleanup
ide: don't enable IORDY at a probe time
ide: IORDY handling fixes
ata: add ata_id_pio_need_iordy() helper (v2)
ide-tape: fix build issue
ide: unify interrupt reason checking
...
20 Jun, 2009
2 commits
-
With 2.6.30, the error handling code in cdrom_newpc_intr was changed
to deal with partial request failures by normally completing the 'good'
parts of a request and only 'error' the last (and presumably,
incompletely transferred) bio associated with a particular
request. In order to do this, ide_complete_rq is called over
ide_cd_error_cmd() to partially complete the rq. The block layer
does partial completion only for requests with bio's and if the
rq doesn't have one (eg 'GPCMD_READ_DISC_INFO') the request is
completed as a whole and the drive->hwif->rq pointer set to NULL
afterwards. When calling ide_complete_rq again to report
the error, this null pointer is derefenced, resulting in a kernel
crash.This fixes http://bugzilla.kernel.org/show_bug.cgi?id=13399.
Signed-off-by: Rainer Weikusat
Signed-off-by: Borislav Petkov
Signed-off-by: Bartlomiej Zolnierkiewicz -
This driver supports Synaptics I2C touchpad controller on eXeda
mobile device. Unfortunaltely it only works in relative mode and
thus is not comaptible with Xorg Synaptics driver.Signed-off-by: Igor Grinberg
Signed-off-by: Mike Rapoport
Signed-off-by: Dmitry Torokhov