Module Name: src Committed By: mlelstv Date: Mon Feb 10 10:05:55 UTC 2020
Modified Files: src/sys/dev: ld.c Log Message: Reject open when attach didn't complete successfully. To generate a diff of this commit: cvs rdiff -u -r1.107 -r1.108 src/sys/dev/ld.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/ld.c diff -u src/sys/dev/ld.c:1.107 src/sys/dev/ld.c:1.108 --- src/sys/dev/ld.c:1.107 Sun Oct 6 06:10:44 2019 +++ src/sys/dev/ld.c Mon Feb 10 10:05:55 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: ld.c,v 1.107 2019/10/06 06:10:44 mlelstv Exp $ */ +/* $NetBSD: ld.c,v 1.108 2020/02/10 10:05:55 mlelstv Exp $ */ /*- * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ld.c,v 1.107 2019/10/06 06:10:44 mlelstv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ld.c,v 1.108 2020/02/10 10:05:55 mlelstv Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -296,6 +296,10 @@ ldopen(dev_t dev, int flags, int fmt, st unit = DISKUNIT(dev); if ((sc = device_lookup_private(&ld_cd, unit)) == NULL) return (ENXIO); + + if ((sc->sc_flags & LDF_ENABLED) == 0) + return (ENODEV); + dksc = &sc->sc_dksc; return dk_open(dksc, dev, flags, fmt, l);