Page MenuHomeFreeBSD

D56497.id175820.diff
No OneTemporary

D56497.id175820.diff

diff --git a/sys/dev/virtio/p9fs/virtio_p9fs.c b/sys/dev/virtio/p9fs/virtio_p9fs.c
--- a/sys/dev/virtio/p9fs/virtio_p9fs.c
+++ b/sys/dev/virtio/p9fs/virtio_p9fs.c
@@ -464,16 +464,22 @@
vt9p_modevent(module_t mod, int type, void *unused)
{
int error;
+ static int loaded = 0;
error = 0;
switch (type) {
case MOD_LOAD:
- p9_init_zones();
- p9_register_trans(&vt9p_trans);
+ if (loaded++ == 0) {
+ p9_init_zones();
+ p9_register_trans(&vt9p_trans);
+ }
break;
case MOD_UNLOAD:
- p9_destroy_zones();
+ if (--loaded == 0) {
+ p9_unregister_trans(&vt9p_trans);
+ p9_destroy_zones();
+ }
break;
case MOD_SHUTDOWN:
break;

File Metadata

Mime Type
text/plain
Expires
Tue, Aug 11, 11:33 AM (18 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36247292
Default Alt Text
D56497.id175820.diff (657 B)

Event Timeline