seeing data corruption with zfs trim functionality

Steven Hartland killing at multiplay.co.uk
Mon Apr 29 10:43:31 UTC 2013


Ooo a SAS SSD.

Can you:-
1. Test with a SATA ssd after applying the attached patches.
2. Rerun from a current kernel and see if you still see corruption, this will eliminate the possibility of any missing patches.
  ----- Original Message ----- 
  From: Ajit Jain 
  To: Steven Hartland 
  Cc: freebsd-fs 
  Sent: Monday, April 29, 2013 11:20 AM
  Subject: Re: seeing data corruption with zfs trim functionality


  Hi Steven,


  Freebsd Version: 9


  SSD: Seagate SSD, complete smartctl output is attached with the mail.

  Not sure if I could provide the SSD information that you were looking for.
  If not, could you please tell me command (if any) to get the information.

  LSI card:  
  mpslsi0 at pci0:2:0:0:     class=0x010700 card=0x30801000 chip=0x00721000 rev=0x03 hdr=0x00
      vendor     = 'LSI Logic / Symbios Logic'
      device     = 'SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon]'
      class      = mass storage
      subclass   = SAS


  Complete pciconf -lv output is attached with mail.



  thanks
  ajit






  On Mon, Apr 29, 2013 at 1:52 PM, Steven Hartland <killing at multiplay.co.uk> wrote:

    ----- Original Message ----- From: "Ajit Jain" <ajit.jain at cloudbyte.com>



      I am running zfs with trim functionality (ported from head). Seeing data
      corruption when running iotest* with multiple threads (never saw data
      corruption with single thread).

      The patches merged to add trim support are as follows:
      1. 240868  (zfs trim patch)
      2. 230053 and 245252 (block device driver trim support)
      3. 239655 (fix an issue in patch 230053)

      I am "NOT" seeing data corruption in the following cases:
      1. Running iotest with single thread (Trim is enabled at entire io stack).
      2. Trim is enabled at zfs layer but disable at driver layer i.e. delete
      method is set to NONE (even with multiple threads).


      Since patch 240868 alone was not working as I pulled in additional zfs trim
      patches 244155, 244187, 244188, 248572 (however I am not using separate
      L2arc device), 248573, 248574, 248575 and 248576. Still I am seeing the
      same issue.

      Issue: After some time running with multiple thread write system call
      return sometimes with EIO or 122 (checksum error) error code.

      I looked at GEOM code a bit I think it already has the trim (DELETE)
      command support. Still I am doubtful if I have pulled in all required
      patches in the entire I/O stack.

      I am using a LSI SAS HBA card to connect to the SSD, firmware seems to
      claim the support for trim.

      *iotest: non standard freebsd FreeBSD utility, which creates files and does
      I/O on the files and can be invoked in single/multithread mode to do the
      I/O.



    What version are you porting the changes to?

    What SSD are you using?

    What LSI controller are you using?

       Regards
       Steve

    ================================================
    This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 
    In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337
    or return the E.mail to postmaster at multiplay.co.uk.





================================================
This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. 

In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337
or return the E.mail to postmaster at multiplay.co.uk.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cam-scsi_da-reprobe.patch
Type: application/octet-stream
Size: 420 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20130429/0191aa34/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cam-scsi_da-enable-trim.patch
Type: application/octet-stream
Size: 1008 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20130429/0191aa34/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cam-scsi_da-probe-order.patch
Type: application/octet-stream
Size: 4236 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20130429/0191aa34/attachment-0002.obj>


More information about the freebsd-fs mailing list