diff options
author | simokawa <simokawa@FreeBSD.org> | 2003-06-03 22:52:55 +0000 |
---|---|---|
committer | simokawa <simokawa@FreeBSD.org> | 2003-06-03 22:52:55 +0000 |
commit | 8c022bf81b34414608d7d1932582f42f39df07c1 (patch) | |
tree | 70d67683c5f88cc35e1b964959409652ef904084 /sys/dev/firewire/fwmem.c | |
parent | 4b1578a3c5a02bcec9fbf0245cd738eefb756311 (diff) | |
download | FreeBSD-src-8c022bf81b34414608d7d1932582f42f39df07c1.zip FreeBSD-src-8c022bf81b34414608d7d1932582f42f39df07c1.tar.gz |
Open fwmem device exclusively.
Diffstat (limited to 'sys/dev/firewire/fwmem.c')
-rw-r--r-- | sys/dev/firewire/fwmem.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/dev/firewire/fwmem.c b/sys/dev/firewire/fwmem.c index 5471687..7a0fda7 100644 --- a/sys/dev/firewire/fwmem.c +++ b/sys/dev/firewire/fwmem.c @@ -241,6 +241,9 @@ fwmem_open (dev_t dev, int flags, int fmt, fw_proc *td) { struct fw_eui64 *eui; + if (dev->si_drv1 != NULL) + return (EBUSY); + eui = (struct fw_eui64 *)malloc(sizeof(struct fw_eui64), M_FW, M_WAITOK); if (eui == NULL) @@ -255,6 +258,8 @@ int fwmem_close (dev_t dev, int flags, int fmt, fw_proc *td) { free(dev->si_drv1, M_FW); + dev->si_drv1 = NULL; + return (0); } |