Change in reported values of some block integrity sysfs attributes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Everyone,

 * We have observed change in the values of some of the block integrity
   sysfs attributes for the block devices on the master branch. The
   sysfs attributes related to block device integrity , write_generate
   and read_verify are  enabled for the block device when the parameter
   device_is_integrity_capable is disabled. This behaviour is seen on
   the scsi disks irrespective of DIF protection enabled or disabled on
   the disks.

   *Logs of the block integrity sysfs attributes for one of the block
   device:*

a3560030:~ # cat /sys/block/sda/integrity/write_generate

1

a3560030:~ # cat /sys/block/sda/integrity/read_verify

1

a3560030:~ # cat /sys/block/sda/integrity/device_is_integrity_capable

0

 * Similarly unexpected values of block integrity sysfs attributes are
   seen for multipath devices as well. Multipath device reporting value
   1 for device_is_integrity_capable even though it is based on SCSI
   disk devices, which all have 0 for device_is_integrity_capable.

a3560030:~ # cat /sys/block/dm-0/integrity/device_is_integrity_capable

1

a3560030:~ # cat /sys/block/dm-0/integrity/read_verify

1

a3560030:~ # cat /sys/block/dm-0/integrity/write_generate

1

 * Earlier the block integrity sysfs parameters "write_generate" and
   "read_verify" reported value 0 when the sysfs attribute
   device_is_integrity_capable was not set. But when tested with a
   recent upstream kernel, there is a change in the block device
   integrity sysfs attributes.
 * In the process of finding the kernel changes which might have caused
   the change in functionality, we have identified the below commit
   which was leading to the change in the sysfs attributes.
   9f4aa46f2a74 ("block: invert the BLK_INTEGRITY_{GENERATE,VERIFY} flags")
 * By reverting the code changes which are part of above commit and
   when tested the values of attributes read_verify and write_generate
   were set to 0 which was the older functionality.
  * From the description in the patch related to above commit, what we
   understand is that the changes are meant to invert the block
   integrity flags(READ_VERIFY and WRITE_GENERATE) vs the values in
   sysfs for making the user values persistent.
 * We would like to know if the change in the values of sysfs
   attributes write_generate and read_verify is expected?
 * And some additional information on in which scenario the attributes
   will be disabled or set to 0 and the affect of other block integrity
   attribute device_is_integrity_capable on attributes read_verify and
   write_generate.


Regards,

*M Nikhil
*

Software Engineer

ISDL, Bangalore, India

Linux on IBM Z and LinuxONE





[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux