Module Name: src Committed By: jdolecek Date: Mon Feb 27 21:25:46 UTC 2017
Modified Files: src/sys/dev: cgd.c Log Message: pass also DIOCGCACHE to underlying device, so that upper layers would be able to get device cache properties without knowing the topology To generate a diff of this commit: cvs rdiff -u -r1.113 -r1.114 src/sys/dev/cgd.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/cgd.c diff -u src/sys/dev/cgd.c:1.113 src/sys/dev/cgd.c:1.114 --- src/sys/dev/cgd.c:1.113 Thu Dec 22 20:57:33 2016 +++ src/sys/dev/cgd.c Mon Feb 27 21:25:45 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: cgd.c,v 1.113 2016/12/22 20:57:33 kamil Exp $ */ +/* $NetBSD: cgd.c,v 1.114 2017/02/27 21:25:45 jdolecek Exp $ */ /*- * Copyright (c) 2002 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: cgd.c,v 1.113 2016/12/22 20:57:33 kamil Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cgd.c,v 1.114 2017/02/27 21:25:45 jdolecek Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -715,14 +715,10 @@ cgdioctl(dev_t dev, u_long cmd, void *da if (DK_BUSY(&cs->sc_dksc, pmask)) return EBUSY; return cgd_ioctl_clr(cs, l); + case DIOCGCACHE: case DIOCCACHESYNC: - /* - * XXX Do we really need to care about having a writable - * file descriptor here? - */ - if ((flag & FWRITE) == 0) - return (EBADF); - + if (!DK_ATTACHED(dksc)) + return ENOENT; /* * We pass this call down to the underlying disk. */