Date: Tue, 20 Mar 2018 03:37:09 +0000 (UTC) From: Warner Losh <imp@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r331238 - head/sys/cam/nvme Message-ID: <201803200337.w2K3b9fL028482@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: imp Date: Tue Mar 20 03:37:09 2018 New Revision: 331238 URL: https://svnweb.freebsd.org/changeset/base/331238 Log: Make kern.cam.nda.num_trim tunable to limit the number of BIO_DELETE requests that we'll collapse into one DSM_TRIM. By default it is a 256, which is the max that will fit into a 4k page. Sponsored by: Netflix Modified: head/sys/cam/nvme/nvme_da.c Modified: head/sys/cam/nvme/nvme_da.c ============================================================================== --- head/sys/cam/nvme/nvme_da.c Tue Mar 20 03:37:04 2018 (r331237) +++ head/sys/cam/nvme/nvme_da.c Tue Mar 20 03:37:09 2018 (r331238) @@ -167,19 +167,22 @@ static void ndasuspend(void *arg); #define NDA_MAX_TRIM_ENTRIES 256 /* Number of DSM trims to use, max 256 */ #endif +static SYSCTL_NODE(_kern_cam, OID_AUTO, nda, CTLFLAG_RD, 0, + "CAM Direct Access Disk driver"); + //static int nda_retry_count = NDA_DEFAULT_RETRY; static int nda_send_ordered = NDA_DEFAULT_SEND_ORDERED; static int nda_default_timeout = NDA_DEFAULT_TIMEOUT; static int nda_max_trim_entries = NDA_MAX_TRIM_ENTRIES; +SYSCTL_INT(_kern_cam_nda, OID_AUTO, max_trim, CTLFLAG_RDTUN, + &nda_max_trim_entries, NDA_MAX_TRIM_ENTRIES, + "Maximum number of BIO_DELETE to send down as a DSM TRIM."); /* * All NVMe media is non-rotational, so all nvme device instances * share this to implement the sysctl. */ static int nda_rotating_media = 0; - -static SYSCTL_NODE(_kern_cam, OID_AUTO, nda, CTLFLAG_RD, 0, - "CAM Direct Access Disk driver"); static struct periph_driver ndadriver = {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803200337.w2K3b9fL028482>