All of lore.kernel.org
 help / color / mirror / Atom feed
* Write protected devices, unexpected dm-multipath queueing
@ 2012-01-06 19:30 Christophe Varoqui
  2012-01-06 22:32 ` Mike Snitzer
  0 siblings, 1 reply; 6+ messages in thread
From: Christophe Varoqui @ 2012-01-06 19:30 UTC (permalink / raw)
  To: Hannes Reinecke, dm-devel; +Cc: cyril.galibern

Hannes, list,

reading your kernel path there
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=63583cca745f440167bf27877182dc13e19d4bcf
I wonder if this is expected that a write io on a write protected device
is returned to the queue ? I would have guessed it qualified as
TARGET_ERROR, hence not retryable (and not causing path invalidation).

In the following log the sense code is clearly seen as 
Sense Key : Data Protect [current]
Add. Sense: Write protected

The log is grabbed from a el6 kernel rev. 131 which include the
mentioned patch (since rev. 110 iirc).

Care to confirm something is fishy there ?

Regards,
cvaroqui

====

Jan  6 02:54:20 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 0

Jan  6 02:54:20 wheeler multipathd: 360000970000292602571533030384444:
Entering recovery mode: max_retries=5

Jan  6 02:54:23 wheeler multipathd: 360000970000292602571533030384444:
sdbq - tur checker reports path is up

Jan  6 02:54:23 wheeler multipathd: 68:64: reinstated

Jan  6 02:54:23 wheeler multipathd: 360000970000292602571533030384444:
queue_if_no_path enabled

Jan  6 02:54:23 wheeler multipathd: 360000970000292602571533030384444:
Recovered to normal mode

Jan  6 02:54:23 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 1

Jan  6 02:54:23 wheeler kernel: sd 2:0:0:15: [sdbq] Unhandled sense code

Jan  6 02:54:23 wheeler kernel: sd 2:0:0:15: [sdbq] Result:
hostbyte=invalid driverbyte=DRIVER_SENSE

Jan  6 02:54:23 wheeler kernel: sd 2:0:0:15: [sdbq] Sense Key : Data
Protect [current] 

Jan  6 02:54:23 wheeler kernel: sd 2:0:0:15: [sdbq] Add. Sense: Write
protected

Jan  6 02:54:23 wheeler kernel: sd 2:0:0:15: [sdbq] CDB: Write(10): 2a
00 00 00 00 d0 00 00 10 00

Jan  6 02:54:23 wheeler kernel: end_request: I/O error, dev sdbq, sector
208

Jan  6 02:54:23 wheeler kernel: device-mapper: multipath: Failing path
68:64.

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
sdq - tur checker reports path is up

Jan  6 02:54:24 wheeler multipathd: 65:0: reinstated

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 2

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
sdaq - tur checker reports path is up

Jan  6 02:54:24 wheeler multipathd: 66:160: reinstated

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 3

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
sdcq - tur checker reports path is up

Jan  6 02:54:24 wheeler multipathd: 69:224: reinstated

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 4

Jan  6 02:54:24 wheeler multipathd: 68:64: mark as failed

Jan  6 02:54:24 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 3

Jan  6 02:54:24 wheeler kernel: sd 1:0:0:15: [sdq] Unhandled sense code

Jan  6 02:54:24 wheeler kernel: sd 1:0:0:15: [sdq] Result:
hostbyte=invalid driverbyte=DRIVER_SENSE

Jan  6 02:54:24 wheeler kernel: sd 1:0:0:15: [sdq] Sense Key : Data
Protect [current] 

Jan  6 02:54:24 wheeler kernel: sd 1:0:0:15: [sdq] Add. Sense: Write
protected

Jan  6 02:54:24 wheeler kernel: sd 1:0:0:15: [sdq] CDB: Write(10): 2a 00
00 00 00 d0 00 00 10 00

Jan  6 02:54:24 wheeler kernel: end_request: I/O error, dev sdq, sector
208

Jan  6 02:54:24 wheeler kernel: device-mapper: multipath: Failing path
65:0.

Jan  6 02:54:24 wheeler kernel: sd 2:0:1:15: [sdcq] Unhandled sense code

Jan  6 02:54:24 wheeler kernel: sd 2:0:1:15: [sdcq] Result:
hostbyte=invalid driverbyte=DRIVER_SENSE

Jan  6 02:54:24 wheeler kernel: sd 2:0:1:15: [sdcq] Sense Key : Data
Protect [current] 

Jan  6 02:54:24 wheeler kernel: sd 2:0:1:15: [sdcq] Add. Sense: Write
protected

Jan  6 02:54:24 wheeler kernel: sd 2:0:1:15: [sdcq] CDB: Write(10): 2a
00 00 00 00 d0 00 00 10 00

Jan  6 02:54:24 wheeler kernel: end_request: I/O error, dev sdcq, sector
208

Jan  6 02:54:24 wheeler kernel: device-mapper: multipath: Failing path
69:224.

Jan  6 02:54:24 wheeler kernel: sd 1:0:1:15: [sdaq] Unhandled sense code

Jan  6 02:54:24 wheeler kernel: sd 1:0:1:15: [sdaq] Result:
hostbyte=invalid driverbyte=DRIVER_SENSE

Jan  6 02:54:24 wheeler kernel: sd 1:0:1:15: [sdaq] Sense Key : Data
Protect [current] 

Jan  6 02:54:24 wheeler kernel: sd 1:0:1:15: [sdaq] Add. Sense: Write
protected

Jan  6 02:54:24 wheeler kernel: sd 1:0:1:15: [sdaq] CDB: Write(10): 2a
00 00 00 00 d0 00 00 10 00

Jan  6 02:54:24 wheeler kernel: end_request: I/O error, dev sdaq, sector
208

Jan  6 02:54:24 wheeler kernel: device-mapper: multipath: Failing path
66:160.

Jan  6 02:54:25 wheeler multipathd: 65:0: mark as failed

Jan  6 02:54:25 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 2

Jan  6 02:54:25 wheeler multipathd: 66:160: mark as failed

Jan  6 02:54:25 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 1

Jan  6 02:54:25 wheeler multipathd: 69:224: mark as failed

Jan  6 02:54:25 wheeler multipathd: 360000970000292602571533030384444:
Entering recovery mode: max_retries=5

Jan  6 02:54:25 wheeler multipathd: 360000970000292602571533030384444:
remaining active paths: 0

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-01-09  8:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-06 19:30 Write protected devices, unexpected dm-multipath queueing Christophe Varoqui
2012-01-06 22:32 ` Mike Snitzer
2012-01-06 22:55   ` Mike Snitzer
2012-01-06 23:20     ` Mike Snitzer
2012-01-07  9:39       ` Christophe Varoqui
2012-01-09  8:01   ` Hannes Reinecke

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.