summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorsos <sos@FreeBSD.org>2000-03-24 07:44:20 +0000
committersos <sos@FreeBSD.org>2000-03-24 07:44:20 +0000
commit0ab6e0ba4d3e239c835a6d00f3e04d36a1e728cd (patch)
treed2276b140efb1c6127803a097c7953e8ac90febe /sys
parent53bc1ed53886ac23a4fc402e8539d501e35b4210 (diff)
downloadFreeBSD-src-0ab6e0ba4d3e239c835a6d00f3e04d36a1e728cd.zip
FreeBSD-src-0ab6e0ba4d3e239c835a6d00f3e04d36a1e728cd.tar.gz
Fix the panic occuring on non-changer devices.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/ata/atapi-cd.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/ata/atapi-cd.c b/sys/dev/ata/atapi-cd.c
index b34a899..4735d1a 100644
--- a/sys/dev/ata/atapi-cd.c
+++ b/sys/dev/ata/atapi-cd.c
@@ -494,7 +494,7 @@ acdopen(dev_t dev, int32_t flags, int32_t fmt, struct proc *p)
return EBUSY;
}
if (count_dev(dev) == 1) {
- if (cdp->slot != cdp->changer_info->current_slot) {
+ if (cdp->changer_info && cdp->slot != cdp->changer_info->current_slot) {
acd_select_slot(cdp);
tsleep(&cdp->changer_info, PRIBIO, "acdopn", 0);
}
@@ -515,7 +515,7 @@ acdclose(dev_t dev, int32_t flags, int32_t fmt, struct proc *p)
struct acd_softc *cdp = dev->si_drv1;
if (count_dev(dev) == 1) {
- if (cdp->slot != cdp->changer_info->current_slot) {
+ if (cdp->changer_info && cdp->slot != cdp->changer_info->current_slot) {
acd_select_slot(cdp);
tsleep(&cdp->changer_info, PRIBIO, "acdclo", 0);
}
@@ -531,7 +531,7 @@ acdioctl(dev_t dev, u_long cmd, caddr_t addr, int32_t flags, struct proc *p)
struct acd_softc *cdp = dev->si_drv1;
int32_t error = 0;
- if (cdp->slot != cdp->changer_info->current_slot) {
+ if (cdp->changer_info && cdp->slot != cdp->changer_info->current_slot) {
acd_select_slot(cdp);
tsleep(&cdp->changer_info, PRIBIO, "acdctl", 0);
}
OpenPOWER on IntegriCloud