svn commit: r333123 - head/sys/dev/nvme

Alexander Motin mav at FreeBSD.org
Mon Apr 30 19:21:21 UTC 2018


Author: mav
Date: Mon Apr 30 19:21:20 2018
New Revision: 333123
URL: https://svnweb.freebsd.org/changeset/base/333123

Log:
  Set si_drv1 for nvmeXnsY in a new race-free way.
  
  r332897 switched to new KPI, but havent used its main benefit.
  
  Sponsored by:	iXsystems, Inc.

Modified:
  head/sys/dev/nvme/nvme_ns.c

Modified: head/sys/dev/nvme/nvme_ns.c
==============================================================================
--- head/sys/dev/nvme/nvme_ns.c	Mon Apr 30 18:55:01 2018	(r333122)
+++ head/sys/dev/nvme/nvme_ns.c	Mon Apr 30 19:21:20 2018	(r333123)
@@ -596,6 +596,7 @@ nvme_ns_construct(struct nvme_namespace *ns, uint32_t 
 	md_args.mda_devsw = &nvme_ns_cdevsw;
 	md_args.mda_unit = unit;
 	md_args.mda_mode = 0600;
+	md_args.mda_si_drv1 = ns;
 	res = make_dev_s(&md_args, &ns->cdev, "nvme%dns%d",
 	    device_get_unit(ctrlr->dev), ns->id);
 	if (res != 0)
@@ -604,8 +605,6 @@ nvme_ns_construct(struct nvme_namespace *ns, uint32_t 
 #ifdef NVME_UNMAPPED_BIO_SUPPORT
 	ns->cdev->si_flags |= SI_UNMAPPED;
 #endif
-
-	ns->cdev->si_drv1 = ns;
 
 	return (0);
 }


More information about the svn-src-all mailing list