svn commit: r272152 - in stable/10: . contrib/hyperv etc/devd etc/mtree libexec libexec/hyperv share/mk sys/conf sys/dev/hyperv/include sys/dev/hyperv/utilities sys/modules/hyperv/utilities tools/b...
Glen Barber
gjb at FreeBSD.org
Fri Sep 26 03:04:03 UTC 2014
Author: gjb
Date: Fri Sep 26 03:03:58 2014
New Revision: 272152
URL: http://svnweb.freebsd.org/changeset/base/272152
Log:
Properly revert r272128.
Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation
Deleted:
stable/10/contrib/hyperv/
stable/10/etc/devd/hyperv.conf
stable/10/libexec/hyperv/
stable/10/sys/dev/hyperv/utilities/hv_kvp.c
stable/10/sys/dev/hyperv/utilities/unicode.h
stable/10/tools/build/options/WITHOUT_HYPERV
stable/10/tools/build/options/WITH_HYPERV
stable/10/usr.sbin/hyperv/
Modified:
stable/10/ObsoleteFiles.inc
stable/10/etc/devd/Makefile
stable/10/etc/mtree/BSD.usr.dist
stable/10/etc/mtree/BSD.var.dist
stable/10/libexec/Makefile
stable/10/share/mk/bsd.own.mk
stable/10/sys/conf/files.amd64
stable/10/sys/conf/files.i386
stable/10/sys/dev/hyperv/include/hyperv.h
stable/10/sys/dev/hyperv/utilities/hv_kvp.h (contents, props changed)
stable/10/sys/dev/hyperv/utilities/hv_util.c (contents, props changed)
stable/10/sys/modules/hyperv/utilities/Makefile
stable/10/tools/build/mk/OptionalObsoleteFiles.inc
stable/10/usr.sbin/Makefile.amd64
stable/10/usr.sbin/Makefile.i386
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/ObsoleteFiles.inc
==============================================================================
--- stable/10/ObsoleteFiles.inc Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/ObsoleteFiles.inc Fri Sep 26 03:03:58 2014 (r272152)
@@ -38,8 +38,6 @@
# xargs -n1 | sort | uniq -d;
# done
-# 20140925: hv_kvpd rc.d script removed in favor of devd configuration
-OLD_FILES+=etc/rc.d/hv_kvpd
# 20140814: libopie version bump
OLD_LIBS+=usr/lib/libopie.so.7
OLD_LIBS+=usr/lib32/libopie.so.7
Modified: stable/10/etc/devd/Makefile
==============================================================================
--- stable/10/etc/devd/Makefile Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/etc/devd/Makefile Fri Sep 26 03:03:58 2014 (r272152)
@@ -10,10 +10,6 @@ FILES+= apple.conf
FILES+= asus.conf
.endif
-.if ${MK_HYPERV} != "no"
-FILES+= hyperv.conf
-.endif
-
NO_OBJ=
FILESDIR= /etc/devd
FILESMODE= 644
Modified: stable/10/etc/mtree/BSD.usr.dist
==============================================================================
--- stable/10/etc/mtree/BSD.usr.dist Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/etc/mtree/BSD.usr.dist Fri Sep 26 03:03:58 2014 (r272152)
@@ -108,8 +108,6 @@
..
bsdinstall
..
- hyperv
- ..
lpr
ru
..
Modified: stable/10/etc/mtree/BSD.var.dist
==============================================================================
--- stable/10/etc/mtree/BSD.var.dist Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/etc/mtree/BSD.var.dist Fri Sep 26 03:03:58 2014 (r272152)
@@ -42,8 +42,6 @@
..
freebsd-update mode=0700
..
- hyperv mode=0700
- ..
ipf mode=0700
..
pkg
Modified: stable/10/libexec/Makefile
==============================================================================
--- stable/10/libexec/Makefile Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/libexec/Makefile Fri Sep 26 03:03:58 2014 (r272152)
@@ -10,7 +10,6 @@ SUBDIR= ${_atf} \
fingerd \
ftpd \
getty \
- ${_hyperv} \
${_mail.local} \
${_mknetid} \
${_pppoed} \
@@ -43,10 +42,6 @@ _atrun= atrun
_comsat= comsat
.endif
-.if ${MK_HYPERV} != "no"
-_hyperv= hyperv
-.endif
-
.if ${MK_NIS} != "no"
_mknetid= mknetid
_ypxfr= ypxfr
Modified: stable/10/share/mk/bsd.own.mk
==============================================================================
--- stable/10/share/mk/bsd.own.mk Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/share/mk/bsd.own.mk Fri Sep 26 03:03:58 2014 (r272152)
@@ -438,12 +438,6 @@ __DEFAULT_YES_OPTIONS+=FDT
.else
__DEFAULT_NO_OPTIONS+=FDT
.endif
-# HyperV is only available for x86 and amd64.
-.if ${__T} == "amd64" || ${__T} == "i386"
-__DEFAULT_YES_OPTIONS+=HYPERV
-.else
-__DEFAULT_NO_OPTIONS+=HYPERV
-.endif
.undef __T
#
Modified: stable/10/sys/conf/files.amd64
==============================================================================
--- stable/10/sys/conf/files.amd64 Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/conf/files.amd64 Fri Sep 26 03:03:58 2014 (r272152)
@@ -234,7 +234,6 @@ dev/hyperv/netvsc/hv_netvsc_drv_freebsd.
dev/hyperv/netvsc/hv_rndis_filter.c optional hyperv
dev/hyperv/stordisengage/hv_ata_pci_disengage.c optional hyperv
dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c optional hyperv
-dev/hyperv/utilities/hv_kvp.c optional hyperv
dev/hyperv/utilities/hv_util.c optional hyperv
dev/hyperv/vmbus/hv_channel.c optional hyperv
dev/hyperv/vmbus/hv_channel_mgmt.c optional hyperv
Modified: stable/10/sys/conf/files.i386
==============================================================================
--- stable/10/sys/conf/files.i386 Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/conf/files.i386 Fri Sep 26 03:03:58 2014 (r272152)
@@ -227,7 +227,6 @@ dev/hyperv/netvsc/hv_netvsc_drv_freebsd.
dev/hyperv/netvsc/hv_rndis_filter.c optional hyperv
dev/hyperv/stordisengage/hv_ata_pci_disengage.c optional hyperv
dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c optional hyperv
-dev/hyperv/utilities/hv_kvp.c optional hyperv
dev/hyperv/utilities/hv_util.c optional hyperv
dev/hyperv/vmbus/hv_channel.c optional hyperv
dev/hyperv/vmbus/hv_channel_mgmt.c optional hyperv
Modified: stable/10/sys/dev/hyperv/include/hyperv.h
==============================================================================
--- stable/10/sys/dev/hyperv/include/hyperv.h Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/dev/hyperv/include/hyperv.h Fri Sep 26 03:03:58 2014 (r272152)
@@ -795,34 +795,5 @@ hv_get_phys_addr(void *virt)
return (ret);
}
-
-/**
- * KVP related structures
- *
- */
-typedef struct hv_vmbus_service {
- hv_guid guid; /* Hyper-V GUID */
- char *name; /* name of service */
- boolean_t enabled; /* service enabled */
- hv_work_queue *work_queue; /* background work queue */
-
- /*
- * function to initialize service
- */
- int (*init)(struct hv_vmbus_service *);
-
- /*
- * function to process Hyper-V messages
- */
- void (*callback)(void *);
-} hv_vmbus_service;
-
-extern uint8_t* receive_buffer[];
-extern hv_vmbus_service service_table[];
-
-void hv_kvp_callback(void *context);
-int hv_kvp_init(hv_vmbus_service *serv);
-void hv_kvp_deinit(void);
-
#endif /* __HYPERV_H__ */
Modified: stable/10/sys/dev/hyperv/utilities/hv_kvp.h
==============================================================================
--- stable/10/sys/dev/hyperv/utilities/hv_kvp.h Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/dev/hyperv/utilities/hv_kvp.h Fri Sep 26 03:03:58 2014 (r272152)
@@ -1,5 +1,7 @@
/*-
- * Copyright (c) 2014 Microsoft Corp.
+ * Copyright (c) 2009-2012 Microsoft Corp.
+ * Copyright (c) 2012 NetApp Inc.
+ * Copyright (c) 2012 Citrix Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -22,15 +24,13 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $FreeBSD$
*/
#ifndef _KVP_H
#define _KVP_H
/*
- * An implementation of HyperV key value pair (KVP) functionality for FreeBSD
+ * An implementation of HyperV key value pair (KVP) functionality for FreeBSD
*
*/
@@ -53,15 +53,15 @@
/*
* bytes, including any null terminators
*/
-#define HV_KVP_EXCHANGE_MAX_VALUE_SIZE (2048)
+#define HV_KVP_EXCHANGE_MAX_VALUE_SIZE (2048)
/*
* Maximum key size - the registry limit for the length of an entry name
* is 256 characters, including the null terminator
*/
-#define HV_KVP_EXCHANGE_MAX_KEY_SIZE (512)
+#define HV_KVP_EXCHANGE_MAX_KEY_SIZE (512)
/*
* In FreeBSD, we implement the KVP functionality in two components:
@@ -111,20 +111,30 @@
* (not supported), a NULL key string is returned.
*/
-
+
/*
* Registry value types.
*/
-#define HV_REG_SZ 1
-#define HV_REG_U32 4
-#define HV_REG_U64 8
+#define HV_REG_SZ 1
+#define HV_REG_U32 4
+#define HV_REG_U64 8
+
+
+/*
+ * Daemon code not supporting IP injection (legacy daemon).
+ */
+
+#define HV_KVP_OP_REGISTER 4
/*
* Daemon code supporting IP injection.
+ * The KVP opcode field is used to communicate the
+ * registration information; so define a namespace that
+ * will be distinct from the host defined KVP opcode.
*/
-#define HV_KVP_OP_REGISTER 4
+#define KVP_OP_REGISTER1 100
enum hv_kvp_exchg_op {
HV_KVP_OP_GET = 0,
@@ -145,41 +155,41 @@ enum hv_kvp_exchg_pool {
HV_KVP_POOL_COUNT /* Number of pools, must be last. */
};
-
/*
* Some Hyper-V status codes.
*/
-#define HV_KVP_S_OK 0x00000000
-#define HV_KVP_E_FAIL 0x80004005
-#define HV_KVP_S_CONT 0x80070103
-#define HV_ERROR_NOT_SUPPORTED 0x80070032
-#define HV_ERROR_MACHINE_LOCKED 0x800704F7
-#define HV_ERROR_DEVICE_NOT_CONNECTED 0x8007048F
-#define HV_INVALIDARG 0x80070057
-#define HV_KVP_GUID_NOTFOUND 0x80041002
-
-#define ADDR_FAMILY_NONE 0x00
-#define ADDR_FAMILY_IPV4 0x01
-#define ADDR_FAMILY_IPV6 0x02
-
-#define MAX_ADAPTER_ID_SIZE 128
-#define MAX_IP_ADDR_SIZE 1024
-#define MAX_GATEWAY_SIZE 512
+#define HV_KVP_S_OK 0x00000000
+#define HV_KVP_E_FAIL 0x80004005
+#define HV_KVP_S_CONT 0x80070103
+#define HV_ERROR_NOT_SUPPORTED 0x80070032
+#define HV_ERROR_MACHINE_LOCKED 0x800704F7
+#define HV_ERROR_DEVICE_NOT_CONNECTED 0x8007048F
+#define HV_INVALIDARG 0x80070057
+#define HV_KVP_GUID_NOTFOUND 0x80041002
+
+#define ADDR_FAMILY_NONE 0x00
+#define ADDR_FAMILY_IPV4 0x01
+#define ADDR_FAMILY_IPV6 0x02
+
+#define MAX_ADAPTER_ID_SIZE 128
+#define MAX_IP_ADDR_SIZE 1024
+#define MAX_GATEWAY_SIZE 512
struct hv_kvp_ipaddr_value {
- uint16_t adapter_id[MAX_ADAPTER_ID_SIZE];
- uint8_t addr_family;
- uint8_t dhcp_enabled;
- uint16_t ip_addr[MAX_IP_ADDR_SIZE];
- uint16_t sub_net[MAX_IP_ADDR_SIZE];
- uint16_t gate_way[MAX_GATEWAY_SIZE];
- uint16_t dns_addr[MAX_IP_ADDR_SIZE];
-}__attribute__((packed));
+ uint16_t adapter_id[MAX_ADAPTER_ID_SIZE];
+ uint8_t addr_family;
+ uint8_t dhcp_enabled;
+ uint16_t ip_addr[MAX_IP_ADDR_SIZE];
+ uint16_t sub_net[MAX_IP_ADDR_SIZE];
+ uint16_t gate_way[MAX_GATEWAY_SIZE];
+ uint16_t dns_addr[MAX_IP_ADDR_SIZE];
+} __attribute__((packed));
+
struct hv_kvp_hdr {
- uint8_t operation;
- uint8_t pool;
+ uint8_t operation;
+ uint8_t pool;
uint16_t pad;
} __attribute__((packed));
@@ -187,9 +197,9 @@ struct hv_kvp_exchg_msg_value {
uint32_t value_type;
uint32_t key_size;
uint32_t value_size;
- uint8_t key[HV_KVP_EXCHANGE_MAX_KEY_SIZE];
+ uint8_t key[HV_KVP_EXCHANGE_MAX_KEY_SIZE];
union {
- uint8_t value[HV_KVP_EXCHANGE_MAX_VALUE_SIZE];
+ uint8_t value[HV_KVP_EXCHANGE_MAX_VALUE_SIZE];
uint32_t value_u32;
uint64_t value_u64;
} msg_value;
@@ -219,16 +229,16 @@ struct hv_kvp_register {
struct hv_kvp_msg {
union {
- struct hv_kvp_hdr kvp_hdr;
- uint32_t error;
+ struct hv_kvp_hdr kvp_hdr;
+ int error;
} hdr;
union {
- struct hv_kvp_msg_get kvp_get;
- struct hv_kvp_msg_set kvp_set;
+ struct hv_kvp_msg_get kvp_get;
+ struct hv_kvp_msg_set kvp_set;
struct hv_kvp_msg_delete kvp_delete;
struct hv_kvp_msg_enumerate kvp_enum_data;
- struct hv_kvp_ipaddr_value kvp_ip_val;
- struct hv_kvp_register kvp_register;
+ struct hv_kvp_ipaddr_value kvp_ip_val;
+ struct hv_kvp_register kvp_register;
} body;
} __attribute__((packed));
@@ -238,17 +248,38 @@ struct hv_kvp_ip_msg {
struct hv_kvp_ipaddr_value kvp_ip_val;
} __attribute__((packed));
+#define BSD_SOC_PATH "/etc/hyperv/socket"
+
+#define HV_SHUT_DOWN 0
+#define HV_TIME_SYNCH 1
+#define HV_HEART_BEAT 2
+#define HV_KVP 3
+#define HV_MAX_UTIL_SERVICES 4
+
+#define HV_WLTIMEDELTA 116444736000000000L /* in 100ns unit */
+#define HV_ICTIMESYNCFLAG_PROBE 0
+#define HV_ICTIMESYNCFLAG_SYNC 1
+#define HV_ICTIMESYNCFLAG_SAMPLE 2
+#define HV_NANO_SEC_PER_SEC 1000000000
+
+typedef struct hv_vmbus_service {
+ hv_guid guid; /* Hyper-V GUID */
+ char* name; /* name of service */
+ boolean_t enabled; /* service enabled */
+ hv_work_queue* work_queue; /* background work queue */
+
+ //
+ // function to initialize service
+ //
+ int (*init)(struct hv_vmbus_service *);
+
+ //
+ // function to process Hyper-V messages
+ //
+ void (*callback)(void *);
+} hv_vmbus_service;
-#define HV_SHUT_DOWN 0
-#define HV_TIME_SYNCH 1
-#define HV_HEART_BEAT 2
-#define HV_KVP 3
-#define HV_MAX_UTIL_SERVICES 4
-
-#define HV_WLTIMEDELTA 116444736000000000L /* in 100ns unit */
-#define HV_ICTIMESYNCFLAG_PROBE 0
-#define HV_ICTIMESYNCFLAG_SYNC 1
-#define HV_ICTIMESYNCFLAG_SAMPLE 2
-#define HV_NANO_SEC_PER_SEC 1000000000
+extern uint8_t* receive_buffer[];
+extern hv_vmbus_service service_table[];
#endif /* _KVP_H */
Modified: stable/10/sys/dev/hyperv/utilities/hv_util.c
==============================================================================
--- stable/10/sys/dev/hyperv/utilities/hv_util.c Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/dev/hyperv/utilities/hv_util.c Fri Sep 26 03:03:58 2014 (r272152)
@@ -1,5 +1,7 @@
/*-
- * Copyright (c) 2014 Microsoft Corp.
+ * Copyright (c) 2009-2012 Microsoft Corp.
+ * Copyright (c) 2012 NetApp Inc.
+ * Copyright (c) 2012 Citrix Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -22,11 +24,9 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * $FreeBSD$
*/
-/*
+/**
* A common driver for all hyper-V util services.
*/
@@ -53,7 +53,7 @@ static void hv_timesync_cb(void *context
static int hv_timesync_init(hv_vmbus_service *serv);
-/*
+/**
* Note: GUID codes below are predefined by the host hypervisor
* (Hyper-V and Azure)interface and required for correct operation.
*/
@@ -80,16 +80,7 @@ hv_vmbus_service service_table[] = {
0xab, 0x55, 0x38, 0x2f, 0x3b, 0xd5, 0x42, 0x2d},
.name = "Hyper-V Heartbeat Service\n",
.enabled = TRUE,
- .callback = hv_heartbeat_cb,
- },
-
- /* KVP (Key Value Pair) Service */
- { .guid.data = {0xe7, 0xf4, 0xa0, 0xa9, 0x45, 0x5a, 0x96, 0x4d,
- 0xb8, 0x27, 0x8a, 0x84, 0x1e, 0x8c, 0x3, 0xe6},
- .name = "Hyper-V KVP Service\n",
- .enabled = TRUE,
- .init = hv_kvp_init,
- .callback = hv_kvp_callback,
+ .callback = hv_heartbeat_cb,
},
};
@@ -99,8 +90,6 @@ hv_vmbus_service service_table[] = {
*/
uint8_t *receive_buffer[HV_MAX_UTIL_SERVICES];
-static boolean_t destroyed_kvp = FALSE;
-
struct hv_ictimesync_data {
uint64_t parenttime;
uint64_t childtime;
@@ -154,7 +143,7 @@ hv_negotiate_version(
static void
hv_set_host_time(void *context)
{
- time_sync_data* time_msg = (time_sync_data*) context;
+ time_sync_data *time_msg = context;
uint64_t hosttime = time_msg->data;
struct timespec guest_ts, host_ts;
uint64_t host_tns;
@@ -264,12 +253,12 @@ hv_timesync_cb(void *context)
static void
hv_shutdown_cb(void *context)
{
- uint8_t* buf;
+ uint8_t* buf;
hv_vmbus_channel* channel = context;
- uint8_t execute_shutdown = 0;
+ uint8_t execute_shutdown = 0;
hv_vmbus_icmsg_hdr* icmsghdrp;
- uint32_t recv_len;
- uint64_t request_id;
+ uint32_t recv_len;
+ uint64_t request_id;
int ret;
hv_vmbus_shutdown_msg_data* shutdown_msg;
@@ -432,11 +421,6 @@ hv_util_detach(device_t dev)
struct hv_vmbus_service* service;
size_t receive_buffer_offset;
- if (!destroyed_kvp) {
- hv_kvp_deinit();
- destroyed_kvp = TRUE;
- }
-
hv_dev = vmbus_get_devctx(dev);
hv_vmbus_channel_close(hv_dev->channel);
@@ -448,22 +432,21 @@ hv_util_detach(device_t dev)
free(receive_buffer[receive_buffer_offset], M_DEVBUF);
receive_buffer[receive_buffer_offset] = NULL;
+
return (0);
}
-static void
-hv_util_init(void)
+static void hv_util_init(void)
{
}
-static int
-hv_util_modevent(module_t mod, int event, void *arg)
+static int hv_util_modevent(module_t mod, int event, void *arg)
{
switch (event) {
case MOD_LOAD:
break;
case MOD_UNLOAD:
- break;
+ break;
default:
break;
}
Modified: stable/10/sys/modules/hyperv/utilities/Makefile
==============================================================================
--- stable/10/sys/modules/hyperv/utilities/Makefile Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/sys/modules/hyperv/utilities/Makefile Fri Sep 26 03:03:58 2014 (r272152)
@@ -3,7 +3,7 @@
.PATH: ${.CURDIR}/../../../dev/hyperv/utilities
KMOD= hv_utils
-SRCS= hv_util.c hv_kvp.c
+SRCS= hv_util.c
SRCS+= bus_if.h device_if.h
CFLAGS+= -I${.CURDIR}/../../../dev/hyperv/include \
Modified: stable/10/tools/build/mk/OptionalObsoleteFiles.inc
==============================================================================
--- stable/10/tools/build/mk/OptionalObsoleteFiles.inc Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/tools/build/mk/OptionalObsoleteFiles.inc Fri Sep 26 03:03:58 2014 (r272152)
@@ -4670,11 +4670,3 @@ OLD_FILES+=usr/bin/svnserve
OLD_FILES+=usr/bin/svnsync
OLD_FILES+=usr/bin/svnversion
.endif
-
-.if ${MK_HYPERV} == no
-OLD_FILES+=etc/devd/hyperv.conf
-OLD_FILES+=usr/libexec/hyperv/hv_set_ifconfig
-OLD_FILES+=usr/libexec/hyperv/hv_get_dns_info
-OLD_FILES+=usr/libexec/hyperv/hv_get_dhcp_info
-OLD_FILES+=usr/sbin/hv_kvpd
-.endif
Modified: stable/10/usr.sbin/Makefile.amd64
==============================================================================
--- stable/10/usr.sbin/Makefile.amd64 Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/usr.sbin/Makefile.amd64 Fri Sep 26 03:03:58 2014 (r272152)
@@ -18,9 +18,6 @@ SUBDIR+= boot0cfg
SUBDIR+= btxld
.endif
SUBDIR+= cpucontrol
-.if ${MK_HYPERV} != "no"
-SUBDIR+= hyperv
-.endif
SUBDIR+= kgmon
SUBDIR+= lptcontrol
SUBDIR+= mount_smbfs
Modified: stable/10/usr.sbin/Makefile.i386
==============================================================================
--- stable/10/usr.sbin/Makefile.i386 Fri Sep 26 02:30:47 2014 (r272151)
+++ stable/10/usr.sbin/Makefile.i386 Fri Sep 26 03:03:58 2014 (r272152)
@@ -9,9 +9,6 @@ SUBDIR+= asf
SUBDIR+= btxld
.endif
SUBDIR+= cpucontrol
-.if ${MK_HYPERV} != "no"
-SUBDIR+= hyperv
-.endif
SUBDIR+= kgmon
SUBDIR+= kgzip
SUBDIR+= lptcontrol
More information about the svn-src-all
mailing list