On 02/06/2013 12:51 AM, Alan Stern wrote:
> On Tue, 5 Feb 2013, Aaron Lu wrote:
>
>> From: Lin Ming
>>
>> Uses block layer runtime pm helper functions in
>> scsi_runtime_suspend/resume for devices that take advantage of it.
>>
>> Remove scsi_autopm_* from sd open/release path and check_events pat
On Tue, Jan 29, 2013 at 12:14 AM, Hannes Reinecke wrote:
> Hi all,
>
> Thin-provisioned devices have the ability to set a 'soft threshold', which
> is triggered if the real free space for this device is beyond this mark.
>
> The intention behind this is to allow the system to induce some garbage
>
On Tue, 5 Feb 2013, Aaron Lu wrote:
> From: Lin Ming
>
> Uses block layer runtime pm helper functions in
> scsi_runtime_suspend/resume for devices that take advantage of it.
>
> Remove scsi_autopm_* from sd open/release path and check_events path.
One thing is a little odd here...
> --- a/dri
From: Vinayak Holikatti
This patch corrects the expected data transfer size of the
command UPIU. The current implementation of cmd->transfersize
is wrong as it probably equal to sector size. With this
implementation the transfer size is updated correctly
Reported-by: KOBAYASHI Yoshitake
Reviewe
From: Vinayak Holikatti
This patch separates PCI code from ufshcd.c and makes it as a
core driver module and adds a new file ufshcd-pci.c as PCI glue
driver.
Reviewed-by: Arnd Bergmann
Reviewed-by: Namjae Jeon
Reviewed-by: Subhash Jadavani
Signed-off-by: Vinayak Holikatti
Signed-off-by: Sant
From: Vinayak Holikatti
This patch adds Platform glue driver for ufshcd.
Reviewed-by: Arnd Bergmann
Reviewed-by: Namjae Jeon
Reviewed-by: Subhash Jadavani
Reviewed-by: Sujit Reddy Thumma
Signed-off-by: Vinayak Holikatti
Signed-off-by: Santosh Yaraganavi
---
drivers/scsi/ufs/Kconfig
From: Vinayak Holikatti
This patch seggregates the PCI specific code in ufshcd.c to make it
ready for splitting into core ufs driver and PCI glue driver. Also
copyright header modification to remove extra warranty disclaim.
Reviewed-by: Arnd Bergmann
Reviewed-by: Namjae Jeon
Reviewed-by: Subha
From: Vinayak Holikatti
This patch set adds following features
- Seggregate PCI specific code in ufshcd.c and corrected copyright
- Adds PCI glue driver ufshcd-pci.c and ufshcd.c become core module
- Adds Platform glue driver ufshcd-pltfrm.c
- Update correct transfer size in Command UPIU
Vin
A SCSI LLD may overwrite host_scribble in its queuecommand()
implementation. Several drivers need that field to process
requests and aborts correctly. Hence this field must be saved
by scsi_eh_prep_cmnd() and must be restored by
scsi_eh_restore_cmnd().
Signed-off-by: Bart Van Assche
Cc: James Bot
Signed-off-by: Bart Van Assche
Acked-by: Hannes Reinecke
Cc: James Bottomley
Cc: Tejun Heo
Cc: Mike Christie
---
drivers/scsi/scsi_error.c |4
drivers/scsi/scsi_lib.c | 43 ++-
drivers/scsi/scsi_scan.c | 15 ---
drivers/scsi/
A SCSI LLD may start cleaning up host resources as soon as
scsi_remove_host() returns. These host resources may be needed by
the LLD in an implementation of one of the eh_* functions. So if
one of the eh_* functions is in progress when scsi_remove_host()
is invoked, wait until the eh_* function has
If removal of a SCSI device has been triggered via sysfs that
device may still be in state SDEV_CANCEL if scsi_remove_host()
is invoked later on and after scsi_remove_host() returns.
SCSI LLDs may start cleaning up host resources needed by their
queuecommand() callback as soon as scsi_remove_host()
Since it is not allowed to invoke scsi_remove_host() with interrupts
disabled, avoid saving and restoring the interrupt state inside
scsi_remove_host(). This patch does not change the functionality of
the function scsi_remove_host().
Signed-off-by: Bart Van Assche
Acked-by: Tejun Heo
Acked-by: H
Changing the state of a SCSI device via sysfs into "cancel" or
"deleted" prevents removal of these devices by scsi_remove_host().
Hence do not allow this. Also, introduce the symbolic name
INVALID_SDEV_STATE, representing a value different from any valid
SCSI device state. Update scsi_device_set_st
__scsi_remove_device() incorrectly skips devices that are visible
and offline. Such devices get skipped because scsi_device_set_state()
refuses the transition from SDEV_OFFLINE into SDEV_CANCEL. Make
sure that these devices get removed by changing their device state
into SDEV_DEL at the start of __
This patch does not change any functionality.
Signed-off-by: Bart Van Assche
Acked-by: Hannes Reinecke
Cc: James Bottomley
Cc: Mike Christie
Cc: Tejun Heo
---
drivers/scsi/device_handler/scsi_dh.c |7 ++-
include/scsi/scsi_device.h| 15 +++
2 files changed,
Now that all scsi_request_fn() callers hold a reference on the
SCSI device that function is invoked for and since
blk_cleanup_queue() waits until scsi_request_fn() has finished
it is safe to remove the get_device() / put_device() pair from
scsi_request_fn().
Signed-off-by: Bart Van Assche
Acked-b
scsi_run_queue() examines all SCSI devices that are present on
the starved list. Since scsi_run_queue() unlocks the SCSI host
lock before running a queue a SCSI device can get removed after
it has been removed from the starved list and before its queue
is run. Protect against that race condition by
Fix a few race conditions that can be triggered by removing a device:
- Fix a race between starved list processing and device removal.
- Avoid that a SCSI LLD callback can get invoked after
scsi_remove_host() finished.
- Speed up device removal by stopping error handling as soon as
the SHOST_D
Hello James Smart,
The patch 962bc51b04b2: "[SCSI] lpfc 8.3.37: Provide support for FCoE
protocol dual-chute (ULP) operation" from Jan 3, 2013, leads to the
following warning:
"drivers/scsi/lpfc/lpfc_sli.c:12818 lpfc_wq_create()
warn: 0x800 is larger than 8 bits"
[ This is from a not rea
From: Lin Ming
Add a flag REQ_PM to identify the request is PM related, such requests
will not change the device request queue's runtime status. It is
intended to be used in driver's runtime PM callback, so that driver can
perform some IO to the device there with the queue's runtime status
unaffe
From: Lin Ming
When a request is added:
If device is suspended or is suspending and the request is not a
PM request, resume the device.
When the last request finishes:
Call pm_runtime_mark_last_busy().
When pick a request:
If device is resuming/suspending, then only PM request i
In August 2010, Jens and Alan discussed about "Runtime PM and the block
layer". http://marc.info/?t=12825910841&r=1&w=2
And then Alan has given a detailed implementation guide:
http://marc.info/?l=linux-scsi&m=133727953625963&w=2
To test:
# ls -l /sys/block/sda
/sys/devices/pci:00/:00:
From: Lin Ming
Add runtime pm helper functions:
void blk_pm_runtime_init(struct request_queue *q, struct device *dev)
- Initialization function for drivers to call.
int blk_pre_runtime_suspend(struct request_queue *q)
- If any requests are in the queue, mark last busy and return -EBUSY.
From: Lin Ming
Uses block layer runtime pm helper functions in
scsi_runtime_suspend/resume for devices that take advantage of it.
Remove scsi_autopm_* from sd open/release path and check_events path.
Signed-off-by: Lin Ming
Signed-off-by: Aaron Lu
---
drivers/scsi/scsi_pm.c | 79
25 matches
Mail list logo