New: DPOFUA should not be related to WCE / Caching mode page
https://bugzilla.kernel.org/show_bug.cgi?id=106861
Bug ID: 106861
Summary: DPOFUA should not be related to WCE / Caching mode
page
Product: IO/Storage
Version: 2.5
Kernel Version: 4.2.4
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: SCSI
Assignee: [email protected]
Reporter: [email protected]
Regression: NoThe sd driver checks whether the device supports DPO/FUA and reports it to the FUA readonly attribute. However, they are somehow "depended" on the Caching mode page and WCE (sd.c).
The fact is, the DPOFUA bit just isn't part of the Caching mode page. Instead it is reported in DEVICE-SPECIFIC PARAMETER of mode parameter header.
Moreover, I don't see what impact does WCE have on DPO/FUA as per SBC or SAT. As long as it is implemented correctly, DPO/FUA should be completely fine on drives without write cache as well.
So IMHO how the kernel handles the checking and reporting simply has logical mistake.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.
[Bug 106861] DPOFUA should not be related to WCE / Caching mode page
https://bugzilla.kernel.org/show_bug.cgi?id=106861
--- Comment #1 from Tom Yan <[email protected]> --- Example drive:
[tom@localhost ~]$ sudo sdparm --long /dev/sdc
/dev/sdc: WD My Passport 083A 1065
Direct access device specific parameters: WP=0 DPOFUA=1
Control [co] mode page:
SWP 0 [cha: n, def: 0, sav: 0] Software write protect
[tom@localhost ~]$ sudo sdparm -a --long /dev/sdc
/dev/sdc: WD My Passport 083A 1065
Direct access device specific parameters: WP=0 DPOFUA=1
Control [co] mode page:
TST 0 [cha: n, def: 0, sav: 0] Task set type TMF_ONLY 0 [cha: n, def: 0, sav: 0] Task management functions only DPICZ 0 [cha: n, def: 0, sav: 0] Disable protection information check if protect field zero D_SENSE 0 [cha: n, def: 0, sav: 0] Descriptor format sense data GLTSD 0 [cha: n, def: 0, sav: 0] Global logging target save disable RLEC 0 [cha: n, def: 0, sav: 0] Report log exception condition QAM 1 [cha: n, def: 1, sav: 1] Queue algorithm modifier NUAR 0 [cha: n, def: 0, sav: 0] No unit attention on release QERR 0 [cha: n, def: 0, sav: 0] Queue error management RAC 0 [cha: n, def: 0, sav: 0] Report a check UA_INTLCK 0 [cha: n, def: 0, sav: 0] Unit attention interlocks control SWP 0 [cha: n, def: 0, sav: 0] Software write protect ATO 0 [cha: n, def: 0, sav: 0] Application tag owner TAS 0 [cha: n, def: 0, sav: 0] Task aborted status ATMPE 0 [cha: n, def: 0, sav: 0] Application tag mode page enabled RWWP 0 [cha: n, def: 0, sav: 0] Reject write without protection AUTOLOAD 0 [cha: n, def: 0, sav: 0] Autoload mode BTP 0 [cha: n, def: 0, sav: 0] Busy timeout period (100us) ESTCT 0 [cha: n, def: 0, sav: 0] Extended self test completion time
(sec)
Power condition [po] mode page:
PM_BG 0 [cha: n, def: 0, sav: 0] Power management, background
functions, precedence
STANDBY_Y 0 [cha: n, def: 0, sav: 0] Standby_y timer enable IDLE_C 0 [cha: n, def: 0, sav: 0] Idle_c timer enable IDLE_B 0 [cha: n, def: 0, sav: 0] Idle_b timer enable IDLE 0 [cha: n, def: 0, sav: 0] Idle_a timer enable STANDBY 1 [cha: y, def: 1, sav: 1] Standby_z timer enable ICT 0 [cha: n, def: 0, sav: 0] Idle_a condition timer (100 ms) SCT 18000 [cha: y, def:18000, sav:18000] Standby_z condition timer (100 ms) IBCT 0 [cha: n, def: 0, sav: 0] Idle_b condition timer (100 ms) ICCT 0 [cha: n, def: 0, sav: 0] Idle_c condition timer (100 ms) SYCT 0 [cha: n, def: 0, sav: 0] Standby_y condition timer (100 ms) CCF_IDLE 0 [cha: n, def: 0, sav: 0] check condition on transition from
idle
CCF_STAND 0 [cha: n, def: 0, sav: 0] check condition on transition from
standby
CCF_STOPP 0 [cha: n, def: 0, sav: 0] check condition on transition from
stopped
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.