Page MenuHomeFreeBSD

D45414.1784955747.diff
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

D45414.1784955747.diff

diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c
--- a/sys/dev/nvme/nvme_ctrlr.c
+++ b/sys/dev/nvme/nvme_ctrlr.c
@@ -1478,8 +1478,8 @@
md_args.mda_mode = 0600;
md_args.mda_unit = device_get_unit(dev);
md_args.mda_si_drv1 = (void *)ctrlr;
- status = make_dev_s(&md_args, &ctrlr->cdev, "nvme%d",
- device_get_unit(dev));
+ status = make_dev_s(&md_args, &ctrlr->cdev, "%s",
+ device_get_nameunit(dev));
if (status != 0)
return (ENXIO);
diff --git a/sys/dev/nvme/nvme_ns.c b/sys/dev/nvme/nvme_ns.c
--- a/sys/dev/nvme/nvme_ns.c
+++ b/sys/dev/nvme/nvme_ns.c
@@ -604,10 +604,12 @@
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);
+ res = make_dev_s(&md_args, &ns->cdev, "%sn%d",
+ device_get_nameunit(ctrlr->dev), ns->id);
if (res != 0)
return (ENXIO);
+ ns->cdev->si_drv2 = make_dev_alias(ns->cdev, "%sns%d",
+ device_get_nameunit(ctrlr->dev), ns->id);
ns->cdev->si_flags |= SI_UNMAPPED;
@@ -618,6 +620,8 @@
nvme_ns_destruct(struct nvme_namespace *ns)
{
+ if (ns->cdev->si_drv2 != NULL)
+ destroy_dev(ns->cdev->si_drv2);
if (ns->cdev != NULL)
destroy_dev(ns->cdev);
}
diff --git a/sys/dev/nvmf/host/nvmf_ns.c b/sys/dev/nvmf/host/nvmf_ns.c
--- a/sys/dev/nvmf/host/nvmf_ns.c
+++ b/sys/dev/nvmf/host/nvmf_ns.c
@@ -49,7 +49,7 @@
sbuf_new(&sb, buf, sizeof(buf), SBUF_FIXEDLEN);
sbuf_set_drain(&sb, sbuf_printf_drain, NULL);
- sbuf_printf(&sb, "%sns%u: ", device_get_nameunit(ns->sc->dev),
+ sbuf_printf(&sb, "%sn%u: ", device_get_nameunit(ns->sc->dev),
ns->id);
va_start(ap, fmt);
@@ -371,10 +371,12 @@
mda.mda_gid = GID_WHEEL;
mda.mda_mode = 0600;
mda.mda_si_drv1 = ns;
- error = make_dev_s(&mda, &ns->cdev, "%sns%u",
+ error = make_dev_s(&mda, &ns->cdev, "%sn%u",
device_get_nameunit(sc->dev), id);
if (error != 0)
goto fail;
+ ns->cdev->si_drv2 = make_dev_alias(ns->cdev, "%sns%u",
+ device_get_nameunit(sc->dev), id);
ns->cdev->si_flags |= SI_UNMAPPED;
@@ -418,6 +420,8 @@
TAILQ_HEAD(, bio) bios;
struct bio *bio;
+ if (ns->cdev->si_drv2 != NULL)
+ destroy_dev(ns->cdev->si_drv2);
destroy_dev(ns->cdev);
/*

File Metadata

Mime Type
text/plain
Expires
Sat, Jul 25, 5:02 AM (8 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29252858
Default Alt Text
D45414.1784955747.diff (2 KB)

Event Timeline