← Back to team overview

kernel-packages team mailing list archive

[Bug 1336541] Re: No TRIM via USB


** Package changed: udev (Ubuntu) => linux (Ubuntu)

You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.

  No TRIM via USB

Status in “linux” package in Ubuntu:

Bug description:

  As USB attached SSDs are becoming quite big and affordable, along comes the idea of installing systems on these.
  But with current USB drivers, some functionality seems to be missing from USB subsystem.

  The system does not recognize it is an SSD, but it is corrected manually:
  # cat /etc/udev/rules.d/10-forcessd.rules
  SUBSYSTEM=="block", ATTRS{vendor}=="SanDisk", ATTRS{model}=="Extreme", KERNEL=="sd?", ATTR{queue/rotational}="0"

  # cat /sys/block/sdb/queue/rotational

  Checked hdparm, it is saying I have TRIM on the device:
  # hdparm -I /dev/sdb


  ATA device, with non-removable media
   Model Number:       SanDisk pSSD
   Enabled	Supported:
      *	Data Set Management TRIM supported (limit 8 blocks)
      *	Deterministic read ZEROs after TRIM

  Here is appropriate dmesg:
  [    3.815604] usb 2-8: Manufacturer: SunplusIT INC.
  [    4.122002] usb 3-3: new SuperSpeed USB device number 2 using xhci_hcd
  [    4.138402] usb 3-3: New USB device found, idVendor=0781, idProduct=5580
  [    4.138404] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
  [    4.138405] usb 3-3: Product: Extreme
  [    4.138406] usb 3-3: Manufacturer: SanDisk
  [    4.138407] usb 3-3: SerialNumber: AA011109131654094942
  [    4.141393] usb-storage 3-3:1.0: USB Mass Storage device detected
  [    4.141431] scsi0 : usb-storage 3-3:1.0
  [    4.141703] usbcore: registered new interface driver usb-storage

  [    5.331311] sd 0:0:0:0: [sdb] 122544516 512-byte logical blocks: (62.7 GB/58.4 GiB)
  [    5.331608] sd 0:0:0:0: [sdb] Write Protect is off
  [    5.331611] sd 0:0:0:0: [sdb] Mode Sense: 33 00 00 08
  [    5.331855] sd 0:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
  [    5.339849]  sdb: sdb1 sdb2 sdb3 < sdb5 >
  [    5.340783] sd 0:0:0:0: [sdb] Attached SCSI disk

  From here I'll be using /boot formatted to ext4 to eliminate luks,lvm
  and btrfs from the equasion:

  # mount |grep sdb2
  /dev/sdb2 on /boot type ext4 (rw,noexec,discard)

  # fstrim -v /boot/
  fstrim: /boot/: FITRIM ioctl failed: Operation not supported

  # strace fstrim -v /boot/
  open("/boot/", O_RDONLY)                = 3
  ioctl(3, FITRIM, 0x7fffdded85c0)        = -1 EOPNOTSUPP (Operation not supported)

  During debugging, I've tried compiling a kernel with UAS module to
  check, it booted, system was g changed with the trim - as it wouldn't
  been used at all.

  Any ideas why TRIM is not working on USB?
  Any timeframes for possible fix?
  Any workarounds maybe?

To manage notifications about this bug go to: