NVMf initiator persistent across boots

Sagi Grimberg sagi at grimberg.me
Mon Mar 5 11:45:17 PST 2018


> Hi all,
> 
> Sorry for the delay, but I wanted to know if we had a progress for this 
> topic. I want to add functionality that gives persistency for fabric 
> devices not only across boots but also across adapter/device removals.
> My idea is to add a flag --persist to "nvme connect" command. This 
> command will add the created ctrls to a file 
> (/etc/nvme-fabrics/persistent_ctrls for example).
> And I want to add a udev rule that in case of ctrl removal, we'll run a 
> script that try to periodicly connect to the target.
Why not just add a periodic task to run nvme connect-all?
--
[Unit]
Description=NVMf auto discovery service
After=systemd-modules-load.service network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/nvme connect-all
StandardOutput=journal

[Timer]
OnUnitActiveSec=1min

[Install]
WantedBy=multi-user.target timers.target
--

That would simply run nvme connect-all once every say minute.
The only problem is that it relies on the kernel to fail
duplicate subsystems. We could enforce that in nvme-cli for that
matter though (we can compare against sysfs address and subsysnqn).

Johannes is probably one to know better than me if this is the
correct way to go...



More information about the Linux-nvme mailing list