mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
dm-mpath, scsi_dh: don't let dm detach device handlers
While allowing dm-mpath to attach device handlers is a functionality we need for backwards compatibility reason there is no reason to reference count them and detach them if dm-mpath stops using the device for some reason. If the device handler works for the given device it can just stay attached, and we can take the retain_hw_handler codepath. Signed-off-by: Christoph Hellwig <[email protected]> Acked-by: Mike Snitzer <[email protected]> Acked-by: Hannes Reinecke <[email protected]> Signed-off-by: James Bottomley <[email protected]>
This commit is contained in:
parent
36dd5acd19
commit
1bab0de027
4 changed files with 28 additions and 95 deletions
|
|
@ -221,7 +221,6 @@ struct scsi_device_handler {
|
|||
struct scsi_dh_data {
|
||||
struct scsi_device_handler *scsi_dh;
|
||||
struct scsi_device *sdev;
|
||||
struct kref kref;
|
||||
};
|
||||
|
||||
#define to_scsi_device(d) \
|
||||
|
|
|
|||
|
|
@ -59,7 +59,6 @@ enum {
|
|||
extern int scsi_dh_activate(struct request_queue *, activate_complete, void *);
|
||||
extern int scsi_dh_handler_exist(const char *);
|
||||
extern int scsi_dh_attach(struct request_queue *, const char *);
|
||||
extern void scsi_dh_detach(struct request_queue *);
|
||||
extern const char *scsi_dh_attached_handler_name(struct request_queue *, gfp_t);
|
||||
extern int scsi_dh_set_params(struct request_queue *, const char *);
|
||||
#else
|
||||
|
|
@ -77,10 +76,6 @@ static inline int scsi_dh_attach(struct request_queue *req, const char *name)
|
|||
{
|
||||
return SCSI_DH_NOSYS;
|
||||
}
|
||||
static inline void scsi_dh_detach(struct request_queue *q)
|
||||
{
|
||||
return;
|
||||
}
|
||||
static inline const char *scsi_dh_attached_handler_name(struct request_queue *q,
|
||||
gfp_t gfp)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue