** Description changed:

+ Impact: Data corruption is seen when using the hio driver with 4.8 and
+ later kernels.
+ 
+ Fix: Patch to fix incorrect use of enumerated values as bitmasks.
+ 
+ Test case: See below.
+ 
+ Regression potential: Very low. Changes are simple and Obviously Correct
+ (TM), and they only affect the hio driver.
+ 
+ ---
+ 
  We are seeing data corruption issues using the hio driver with kernel
  4.10.0
  
  # uname -a
  Linux arbok 4.10.0-26-generic #30~16.04.1-Ubuntu SMP Tue Jun 27 09:40:14 UTC 
2017 x86_64 x86_64 x86_64 GNU/Linux
  
  Making xfs fails:
  
  root@arbok:~# mkfs.xfs /dev/hioa
  meta-data=/dev/hioa              isize=512    agcount=4, agsize=48835584 blks
-          =                       sectsz=512   attr=2, projid32bit=1
-          =                       crc=1        finobt=1, sparse=0
+          =                       sectsz=512   attr=2, projid32bit=1
+          =                       crc=1        finobt=1, sparse=0
  data     =                       bsize=4096   blocks=195342336, imaxpct=25
-          =                       sunit=0      swidth=0 blks
+          =                       sunit=0      swidth=0 blks
  naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
  log      =internal log           bsize=4096   blocks=95382, version=2
-          =                       sectsz=512   sunit=0 blks, lazy-count=1
+          =                       sectsz=512   sunit=0 blks, lazy-count=1
  realtime =none                   extsz=4096   blocks=0, rtextents=0
  bad magic number
  bad magic number
  Metadata corruption detected at xfs_sb block 0x0/0x200
  libxfs_writebufr: write verifer failed on xfs_sb bno 0x0/0x200
  
- 
- The drive appears to be healthy. Firmware has been upgraded to ver 656: 
+ The drive appears to be healthy. Firmware has been upgraded to ver 656:
  
  root@arbok:~# hio_info -d /dev/hioa
  hioa    Serial number:          022XWV10G2000325
-         Size(GB):               800
-         Max size(GB):           800
-         Hardware version:       1.0
-         Firmware version:       656
-         Driver version:         2.1.0.28
-         Work mode:              MLC
-         Run time (sec.):        8910490
-         Total  read(MB):        8499
-         Total write(MB):        0
-         Lifetime remaining:     99.844%
-         Max bad block rate:     0.167%
-         Health:                 OK
-         Comment:                NA
+         Size(GB):               800
+         Max size(GB):           800
+         Hardware version:       1.0
+         Firmware version:       656
+         Driver version:         2.1.0.28
+         Work mode:              MLC
+         Run time (sec.):        8910490
+         Total  read(MB):        8499
+         Total write(MB):        0
+         Lifetime remaining:     99.844%
+         Max bad block rate:     0.167%
+         Health:                 OK
+         Comment:                NA
  
  No relevant entries about read/write errors in dmesg
  
- Also just copying 8G random data and reading those back gives a hash 
mismatch: 
+ Also just copying 8G random data and reading those back gives a hash mismatch:
  root@arbok:~# dd if=/dev/urandom of=test.dat bs=1G count=8 iflag=fullblock
  8+0 records in
  8+0 records out
  8589934592 bytes (8.6 GB, 8.0 GiB) copied, 85.6076 s, 100 MB/s
  root@arbok:~# dd if=test.dat of=/dev/hioa bs=1G count=8 iflag=fullblock
  8+0 records in
  8+0 records out
  8589934592 bytes (8.6 GB, 8.0 GiB) copied, 10.6034 s, 810 MB/s
  root@arbok:~# dd if=/dev/hioa of=read-back.dat bs=1G count=8 iflag=fullblock
  sha256sum test.dat read-
  8+0 records in
  8+0 records out
  8589934592 bytes (8.6 GB, 8.0 GiB) copied, 66.1872 s, 130 MB/s
- root@arbok:~# sha256sum test.dat read-back.dat 
+ root@arbok:~# sha256sum test.dat read-back.dat
  6376d245a07c42c990589a3c17c44e63d826d1cb583fc5a065deff9dae69fd3a  test.dat
  ebfb4ef19ae410f190327b5ebd312711263bc7579970e87d9c1e2d84e06b3c25  
read-back.dat

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1701316

Title:
  Data corruption with hio driver

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1701316/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to