Commit 3f8314f
nvmeof: fix CSI node plugin crash on immutable Linux distributions
On distributions like Talos Linux,
NVMe modules are compiled directly into the kernel
(CONFIG_NVME_TCP=y, CONFIG_NVME_FABRICS=y) instead of
being loadable .ko files.
Explicitly calling modprobe on nvme_fabrics fails on
these systems since there is no .ko file present,
causing the CSI node plugin to crash on startup.
Removing nvme_fabrics from the module load
list is safe because it is always a dependency
of nvme_tcp.
On normal distributions modprobe loads it automatically
as part of the nvme_tcp dependency chain. On immutable
distributions it is already baked into the kernel.
We verify the fabrics framework is functional
after loading nvme_tcp by checking that
/dev/nvme-fabrics exists.
This device node is created by the kernel on init
regardless of whether nvme_fabrics was loaded as a
module or compiled in, making it a
reliable indicator that NVMe-oF TCP is ready to use.
Signed-off-by: gadi-didi <gadi.didi@ibm.com>
(cherry picked from commit 992d720)1 parent b94b497 commit 3f8314f
1 file changed
+18
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
125 | 125 | | |
126 | 126 | | |
127 | 127 | | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
| 128 | + | |
| 129 | + | |
133 | 130 | | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
139 | 134 | | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
140 | 145 | | |
141 | | - | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
142 | 149 | | |
143 | 150 | | |
144 | 151 | | |
| |||
0 commit comments