summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2012-12-02 19:34:36 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2012-12-02 19:34:36 +0000
commit70ada46e2c34b7d2989a3fa819f3cca052cef54b (patch)
tree2928f3aa7d4e9cfc274227dbf1131eff5b6b5bd1 /sys/arch/sparc64
parent14475bb087f7ef7e84d382366c6f048f2d3e01ae (diff)
Add "support" for VD_OP_GET_WCE and VD_OP_SET_WCE. These operations don't
really make sense for virtual disks backed by disk images, so we return ENOTSUP just like Solaris does. But advertising support for these operations works around a bug in the Linux kernel.
Diffstat (limited to 'sys/arch/sparc64')
-rw-r--r--sys/arch/sparc64/dev/vdsp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/arch/sparc64/dev/vdsp.c b/sys/arch/sparc64/dev/vdsp.c
index 2b55a522284..8ef94fcc93b 100644
--- a/sys/arch/sparc64/dev/vdsp.c
+++ b/sys/arch/sparc64/dev/vdsp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vdsp.c,v 1.14 2012/12/01 11:59:05 kettenis Exp $ */
+/* $OpenBSD: vdsp.c,v 1.15 2012/12/02 19:34:35 kettenis Exp $ */
/*
* Copyright (c) 2009, 2011 Mark Kettenis
*
@@ -185,6 +185,7 @@ struct vdsk_desc_msg {
*/
#define VD_OP_MASK \
((1 << VD_OP_BREAD) | (1 << VD_OP_BWRITE) | (1 << VD_OP_FLUSH) | \
+ (1 << VD_OP_GET_WCE) | (1 << VD_OP_SET_WCE) | \
(1 << VD_OP_GET_VTOC) | (1 << VD_OP_SET_VTOC) | \
(1 << VD_OP_GET_DISKGEOM))
@@ -750,6 +751,8 @@ vdsp_rx_vio_dring_data(struct vdsp_softc *sc, struct vio_msg_tag *tag)
case VD_OP_GET_DISKGEOM:
workq_add_task(NULL, 0, vdsp_get_diskgeom, sc, vd);
break;
+ case VD_OP_GET_WCE:
+ case VD_OP_SET_WCE:
case VD_OP_GET_DEVID:
/*
* Solaris issues VD_OP_GET_DEVID despite the