svn commit: r298002 - in head/sys: cam cam/ata cam/scsi conf dev/ahci
Ngie Cooper (yaneurabeya)
yaneurabeya at gmail.com
Thu Apr 14 22:02:14 UTC 2016
> On Apr 14, 2016, at 14:47, Warner Losh <imp at freebsd.org> wrote:
>
> Author: imp
> Date: Thu Apr 14 21:47:58 2016
> New Revision: 298002
> URL: https://svnweb.freebsd.org/changeset/base/298002
>
> Log:
> New CAM I/O scheduler for FreeBSD. The default I/O scheduler is the same
> as before. The common scheduling bits have moved from inline code in
> each of the CAM periph drivers into a library that implements the
> default scheduling.
>
> In addition, a number of rate-limiting and I/O preference options can
> be enabled by adding CAM_IOSCHED_NETFLIX to your config file. A number
> of extra stats are also maintained. CAM_IOSCHED_NETFLIX isn't on by
> default because it uses a separate BIO_READ and BIO_WRITE queue, so
> doesn't honor BIO_ORDERED between these two types of operations. We
> already didn't honor it for BIO_DELETE, and we don't depend on
> BIO_ORDERED between reads and writes anywhere in the system (it is
> currently used with BIO_FLUSH in ZFS to make sure some writes are
> complete before others start and as a poor-man's soft dependency in
> one place in UFS where we won't be issuing READs until after the
> operation completes). However, out of an abundance of caution, it
> isn't enabled by default.
>
> Plus, this also brings in NCQ TRIM support for those SSDs that support
> it. A black list is also provided for known rogues that use NCQ trim
> as an excuse to corrupt the drive. It was difficult to separate out
> into a separate commit.
>
> This code has run in production at Netflix for over a year now.
>
> Sponsored by: Netflix, Inc
> Differential Revision: https://reviews.freebsd.org/D4609
I left some comments in the CR.
Thanks,
-Ngie
More information about the svn-src-all
mailing list