Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Dec 2009 20:08:01 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/cam/ata ata_all.c ata_da.c src/sys/geom geom_dev.c src/sys/sys ata.h
Message-ID:  <200912282008.nBSK8qEU036238@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
mav         2009-12-28 20:08:01 UTC

  FreeBSD src repository

  Modified files:
    sys/cam/ata          ata_all.c ata_da.c 
    sys/geom             geom_dev.c 
    sys/sys              ata.h 
  Log:
  SVN rev 201139 on 2009-12-28 20:08:01Z by mav
  
  Add BIO_DELETE support to ada(4):
  - For SSDs use TRIM feature of DATA SET MANAGEMENT command, as defined by
  ACS-2 specification working draft.
  - For CompactFlash use CFA ERASE command, same as ad(4) does.
  
  With this patch, `newfs -E /dev/ada1` was able to restore write speed of
  my heavily weared OCZ Vertex SSD (firmware 1.4) up to the initial level
  for the most part of it's capacity. Previous 1.3 firmware, even reportiong
  TRIM capabilty bit set, was not working, reporting ABORT error for every
  DSM command.
  
  I have no idea whether it is normal, but for some reason it takes 200ms
  to handle any TRIM command on this drive, that was making delete extremely
  slow. But TRIM command is able to accept long list of LBAs and the length of
  that list seems doesn't affect it's execution time. Implemented request
  clusting algorithm allowed me to rise delete rate up to reasonable numbers,
  when many parallel DELETE requests running.
  
  Revision  Changes    Path
  1.12      +7 -1      src/sys/cam/ata/ata_all.c
  1.14      +241 -111  src/sys/cam/ata/ata_da.c
  1.105     +2 -2      src/sys/geom/geom_dev.c
  1.48      +11 -3     src/sys/sys/ata.h



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912282008.nBSK8qEU036238>