From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 03:46:59 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3628FB82; Sun, 12 Jan 2014 03:46:59 +0000 (UTC) Received: from mail-la0-x22a.google.com (mail-la0-x22a.google.com [IPv6:2a00:1450:4010:c03::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 84FD51FC9; Sun, 12 Jan 2014 03:46:58 +0000 (UTC) Received: by mail-la0-f42.google.com with SMTP id ec20so4296811lab.29 for ; Sat, 11 Jan 2014 19:46:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=5FYfrU6PinRQ42tefRvkGfdIxeZVaf8ana0NOmMbzuM=; b=u4H47hRaoAH7bWU1/DRl1AyLJ+XoYFsonqVhOmeMhBcX2ydlgPWA/1WkKD/XrC3f29 0dTQPb2lSPzKBNd3Lh/zCPKl4v+dTusqwGLOe2CsIPILf4/qLDSC8JDL9f4gz05EYB1o z4k+dt24pUWrsH3xTEKD3MN+n4SHJfz7I4F2ucaOTsdPbNwpYP2GVZ0W+LCtbkK3cQ9O Fzko5gsVYvGihHpmLbddYjj9ZjONei1cKx42kZL8Lsu3G4Sf1nizuj/hAPLThdL3P+Zv qhd+wkIqfxu3GSqIcT2/tjhDtPBlY5TiQtxmFdmjlwpJeqav8CE1I+rhueavwNRkdZ6p kd8Q== MIME-Version: 1.0 X-Received: by 10.112.78.4 with SMTP id x4mr650211lbw.81.1389498416461; Sat, 11 Jan 2014 19:46:56 -0800 (PST) Sender: crodr001@gmail.com Received: by 10.112.38.43 with HTTP; Sat, 11 Jan 2014 19:46:56 -0800 (PST) In-Reply-To: <52CB384A.7050405@freebsd.org> References: <52CB384A.7050405@freebsd.org> Date: Sat, 11 Jan 2014 19:46:56 -0800 X-Google-Sender-Auth: fIHhiwd5fMRiCPXbyExg6pRfAuE Message-ID: Subject: Re: Remote serial console for BHyve VM? From: Craig Rodrigues To: Peter Grehan Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: Peter Wemm , "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 03:46:59 -0000 On Mon, Jan 6, 2014 at 3:12 PM, Peter Grehan wrote: > One way is to use the cloneable null-modem driver, nmdm(4). Others have > used tmux for this, but I'll give a quick overview of the former. > > kldload nmdm.ko before starting VMs, e.g. at boottime or in rc.conf's > kld_list variable. > > Use the '-c' option for bhyveload to point it at one end of an nmdm > instance, and use it in place of "stdio" in the bhyve commandline. > > bhyveload .... -c /dev/nmdm0A ... > bhyve ... -l com1,/dev/nmdm0A ... > > You can then attach to the other end (nmdm*B) with any tool of your > choice - cu, screen, or socat to relay the device to a network connection. > Some experimentation may be required :) > > later, > I did the following: (1) Put the following in /boot/loader.conf to load the nmdm driver on bootup: nmdm_load="YES" (2) I wrote a script with this: #!/bin/sh touch /dev/nmdm0A /usr/sbin/bhyvectl --vm=vm1 --destroy /usr/sbin/bhyveload -m 8G -d disk.img -c /dev/nmdm0A vm1 /usr/sbin/bhyve -c 2 -m 8G -A -H -P -g 0 -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap0 -s 3:0,virtio-blk,disk.img -l com1,/dev/nmdm0A vm1 When I ran the script, there was no output, which was a good sign. I then ran this command: cu -l /dev/nmdm0A and had full access to the console of the VM. Thanks!! -- Craig From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 04:13:18 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5A91496A; Sun, 12 Jan 2014 04:13:18 +0000 (UTC) Received: from mail-pa0-x22d.google.com (mail-pa0-x22d.google.com [IPv6:2607:f8b0:400e:c03::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2AE8A11A4; Sun, 12 Jan 2014 04:13:18 +0000 (UTC) Received: by mail-pa0-f45.google.com with SMTP id ld10so1835256pab.32 for ; Sat, 11 Jan 2014 20:13:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=aGPJLl5Ue9PfbG65hmLidfq5nUw8grW9Uc28cJEBhZg=; b=EaBkACXvwsW7EZZTiwWlu7Xbfn3qogf8B3iubIpDPBTxERSSUD9f5xOkO966b+ULWp Kig70DaPvlKwEfdYXV48yzAKW1tIYUYkMZ/UEBg9+wOrvFZkdtKidps25ZADbJNslz+1 wPpLtb3yuEgfQqIbsXvYVFS5dIg03X9MYrrJ/gdjP7RLDNVGgfPw6HMQpQlWPjQmRIxE TZzC4itxRcBMl76dUQuXPYSd/GiWw8TKdBNUetiviOZTZTsiReX3XAR6xNX9FZdXVXfo KB9zBmjY44AyA1huuUNsz+bwv7/1UGp1WjArzNvIdCKS3MZwpt1ihP6dUsIgZvwFYAJM 5uLg== MIME-Version: 1.0 X-Received: by 10.66.141.231 with SMTP id rr7mr21366525pab.41.1389499997738; Sat, 11 Jan 2014 20:13:17 -0800 (PST) Received: by 10.68.185.130 with HTTP; Sat, 11 Jan 2014 20:13:17 -0800 (PST) In-Reply-To: References: Date: Sat, 11 Jan 2014 23:13:17 -0500 Message-ID: Subject: Re: Remote serial console for BHyve VM? From: Aryeh Friedman To: Craig Rodrigues Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: Peter Wemm , "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 04:13:18 -0000 On Mon, Jan 6, 2014 at 5:56 PM, Craig Rodrigues wrote: > Hi, > > I am working with Sean Bruno to set up some BHyve VM's. > > Right now, the vmrun.sh script tells BHyve to direct > the serial console to stdout. > Best solution for a permanent remote console I have heard so far is to use screen to be able to reconnect to it. We (Dee Nixon and I) have not actually done this, however, and are looking for a more portable solution. If I want to have the VM's start via an rc.d script, and > have the VM be headless, what is the best way to have > the VM console still be accessible? > A small hack to PetiteCloud (which neither me or Dee have time for but would be very interested in if someone can do it) might be the best here since PetiteCloud has auto start on boot -- something that is hard to do without a lot of custom scripting if you're going with no front-end. For example it took us over 40 hrs of work to add the auto-start capability to PetiteCloud. (We were never able to get vmrun.sh to start on boot.) > > Has anyone done something like use netcat > to direct the BHyve stdio to a socket? > Me and Dee spent a few weeks with something like it last summer and didn't have much success. > That way the serial console could be accessed remotely > via telnet or ssh. > > Is there a better way to do this? > > -- > Craig > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to " > freebsd-virtualization-unsubscribe@freebsd.org" > From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 08:11:33 2014 Return-Path: Delivered-To: virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 07DBEE75 for ; Sun, 12 Jan 2014 08:11:33 +0000 (UTC) Received: from mail-pd0-x233.google.com (mail-pd0-x233.google.com [IPv6:2607:f8b0:400e:c02::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D070F1EC0 for ; Sun, 12 Jan 2014 08:11:32 +0000 (UTC) Received: by mail-pd0-f179.google.com with SMTP id y13so3736699pdi.38 for ; Sun, 12 Jan 2014 00:11:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:date:cc :content-transfer-encoding:message-id:references:to; bh=0C9pf5z5ABupRzRiKGqo3C/aANKTH0jg7I3g4bFjSkA=; b=h+a1qXhO41hFMqcEnDp8VNzJkVKGIf3Pw6ThNNM643wCOmNmMuHDiKUN/O4aiWZXRJ LMna3cNK2H0FwIfT+lbozqNWTIESnNipWdKG1gk7TzVr55X0yIofiFqiV6iGt72XnIGL UyKhkcQ+Cz9CuembET0AwYvebREjESu83xVnJElbbr5xffi+JnGTvXO0XkpSvGNFVbrv V2WH/YmiEZEy10VU5503hflvRlfZzhih+g418UpTKj2bhzv8tJkzK995kTmxph03bdnQ yBwqaf99E0RR45NE4z1pStx8atsI5ia743DLI0An0zk8str3wdC+oU36KQp6WECvkspd mqoA== X-Received: by 10.66.141.144 with SMTP id ro16mr22318414pab.131.1389514292484; Sun, 12 Jan 2014 00:11:32 -0800 (PST) Received: from [192.168.20.5] (c-50-181-163-89.hsd1.wa.comcast.net. [50.181.163.89]) by mx.google.com with ESMTPSA id tu3sm37576535pab.1.2014.01.12.00.11.30 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 12 Jan 2014 00:11:31 -0800 (PST) Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Fwd: hyperv doesn't compile on i386 with gcc From: Garrett Cooper Date: Sun, 12 Jan 2014 00:11:28 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: References: To: virtualization@FreeBSD.org X-Mailer: Apple Mail (2.1827) X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 08:11:33 -0000 Please see the below message. Thanks, -Garrett Begin forwarded message: > From: "yaneurabeya ." > Subject: hyperv doesn't compile on i386 with gcc > Date: January 10, 2014 at 11:33:25 AM PST > To: Peter Grehan > Cc: Gleb Smirnoff >=20 > Keep on running into this issue when compiling GENERIC on i386 > with gcc (not clang). Could someone please fix this type issue (sizeof > returns size_t, not uint32_t)? > Thanks, > -Garrett >=20 > int > hv_vmbus_channel_send_packet( > hv_vmbus_channel* channel, > void* buffer, > uint32_t buffer_len, > uint64_t request_id, > hv_vmbus_packet_type type, > uint32_t flags) >=20 > cc -c -O -pipe -march=3Dcore2 -std=3Dc99 -g -Wall -Wredundant-decls > -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes > -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign > -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option > -nostdinc -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq > -I/usr/src/sys/contrib/libfdt -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS > -include opt_global.h -fno-common -finline-limit=3D8000 --param > inline-unit-growth=3D100 --param large-function-growth=3D1000 > -mno-align-long-strings -mpreferred-stack-boundary=3D2 -mno-mmx = -mno-sse > -msoft-float -ffreestanding -fstack-protector -Werror > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c > cc1: warnings being treated as errors > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_init_rx_buffer_with_net_vsp': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:185: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_init_send_buffer_with_net_vsp': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:283: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_destroy_rx_buffer': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:337: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_destroy_send_buffer': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:405: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_negotiate_nvsp_protocol': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:467: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function > 'hv_nv_send_ndis_config': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:511: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function = 'hv_nv_connect_to_vsp': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:583: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c: In function = 'hv_nv_on_send': > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:833: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > /usr/src/sys/dev/hyperv/netvsc/hv_net_vsc.c:836: warning: cast from > pointer to integer of different size [-Wpointer-to-int-cast] > *** [hv_net_vsc.o] Error code 1 > 1 error > *** [buildkernel] Error code 2 > 1 error > *** [buildkernel] Error code 2 > 1 error > + [ -f /root/bk.s ] > You have new mail in /var/mail/root > [root@fbsd-vm /usr/src]# From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 11:27:46 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2AAF76C for ; Sun, 12 Jan 2014 11:27:46 +0000 (UTC) Received: from sunner.semmy.ru (sunner.semmy.ru [IPv6:2a00:14d0:0:20::3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7F4BD1955 for ; Sun, 12 Jan 2014 11:27:46 +0000 (UTC) Received: from broadband-178-140-93-168.nationalcablenetworks.ru ([178.140.93.168] helo=[172.16.100.50]) by sunner.semmy.ru with esmtpsa (TLSv1:DHE-RSA-CAMELLIA256-SHA:256) (Exim 4.82 (FreeBSD)) (envelope-from ) id 1W2JCh-000HIh-2x for freebsd-virtualization@freebsd.org; Sun, 12 Jan 2014 15:27:43 +0400 Message-ID: <52D27C3A.2050205@FreeBSD.org> Date: Sun, 12 Jan 2014 15:27:54 +0400 From: Sergey Matveychuk User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: freebsd-virtualization@freebsd.org Subject: broken image after installworld/installkernel Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 11:27:46 -0000 Hi. My VM image has broken twice after I did installworld/installkernel inside VM. First time I installed FreeBSD-10 from this ISO-image: ftp://ftp.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-amd64/10.0/FreeBSD-10.0-RC4-amd64-disc1.iso It worked well, but after I did 'svn co' buildworld/buildkernel installworld/installkernel kernel even did not boot. Second time I install FreeBSD-10 from the same ISO and after the same action I have: Copyright (c) 1992-2014 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 10.0-PRERELEASE #0 r260554: Sun Jan 12 21:54:44 MSK 2014 root@avim-new:/usr/obj/usr/src/sys/GENERIC amd64 FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610 CPU: Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz (2294.33-MHz K8-class CPU) Origin = "GenuineIntel" Id = 0x206d7 Family = 0x6 Model = 0x2d Stepping = 7 Features=0x8f83ab7f Features2=0x82be6257 AMD Features=0x24100800 AMD Features2=0x1 TSC: P-state invariant real memory = 1073741824 (1024 MB) avail memory = 1012215808 (965 MB) Event timer "LAPIC" quality 400 ACPI APIC Table: panic: AP #1 (PHY# 1) failed! cpuid = 0 KDB: stack backtrace: #0 0xffffffff808ed7a0 at kdb_backtrace+0x60 #1 0xffffffff808b5175 at panic+0x155 #2 0xffffffff80c854f5 at cpu_mp_start+0x625 #3 0xffffffff808fa85d at mp_start+0x3d #4 0xffffffff80866528 at mi_startup+0x118 #5 0xffffffff802d4cac at btext+0x2c Uptime: 1s Any suggestions? From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 16:41:25 2014 Return-Path: Delivered-To: virtualization@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 796FB429 for ; Sun, 12 Jan 2014 16:41:25 +0000 (UTC) Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1blp0187.outbound.protection.outlook.com [207.46.163.187]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 323481ECE for ; Sun, 12 Jan 2014 16:41:21 +0000 (UTC) Received: from BL2PR03MB210.namprd03.prod.outlook.com (10.255.230.144) by BL2PR03MB209.namprd03.prod.outlook.com (10.255.230.140) with Microsoft SMTP Server (TLS) id 15.0.847.13; Sun, 12 Jan 2014 16:41:14 +0000 Received: from BL2PR03MB210.namprd03.prod.outlook.com ([169.254.1.13]) by BL2PR03MB210.namprd03.prod.outlook.com ([169.254.1.13]) with mapi id 15.00.0847.008; Sun, 12 Jan 2014 16:41:13 +0000 From: "Abhishek Gupta (LIS)" To: Garrett Cooper , "virtualization@FreeBSD.org" Subject: RE: hyperv doesn't compile on i386 with gcc Thread-Topic: hyperv doesn't compile on i386 with gcc Thread-Index: AQHPD23qa0FxUVAaE0yox4fHCoc3/5qBSzoP Date: Sun, 12 Jan 2014 16:41:13 +0000 Message-ID: References: , In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [71.227.189.220] x-forefront-prvs: 008960E8EC x-forefront-antispam-report: SFV:NSPM; SFS:(10009001)(377454003)(164054003)(189002)(199002)(76576001)(76786001)(74502001)(79102001)(80022001)(65816001)(83322001)(19580395003)(63696002)(87936001)(51856001)(76796001)(46102001)(59766001)(85306002)(50986001)(74316001)(2656002)(87266001)(47736001)(49866001)(47976001)(4396001)(56776001)(85806002)(77982001)(74366001)(66066001)(47446002)(74662001)(81686001)(81816001)(33646001)(74706001)(54316002)(80976001)(77096001)(81542001)(83072002)(19580405001)(92566001)(81342001)(69226001)(31966008)(74876001)(76482001)(54356001)(56816005)(85852003)(93136001)(90146001)(53806001)(24736002); DIR:OUT; SFP:1101; SCL:1; SRVR:BL2PR03MB209; H:BL2PR03MB210.namprd03.prod.outlook.com; CLIP:71.227.189.220; FPR:; RD:InfoNoRecords; MX:1; A:1; LANG:en; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 16:41:25 -0000 Hi Garrett, Sorry for the trouble. We shall have this fixed early next week= .=0A= Thanks,=0A= Abhishek=0A= ________________________________________=0A= From: Garrett Cooper =0A= Sent: Sunday, January 12, 2014 12:11 AM=0A= To: virtualization@FreeBSD.org=0A= Cc: Abhishek Gupta (LIS)=0A= Subject: Fwd: hyperv doesn't compile on i386 with gcc=0A= =0A= Please see the below message.=0A= Thanks,=0A= -Garrett=0A= =0A= =0A= From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 18:24:28 2014 Return-Path: Delivered-To: virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7065C320 for ; Sun, 12 Jan 2014 18:24:28 +0000 (UTC) Received: from mail-pa0-x22f.google.com (mail-pa0-x22f.google.com [IPv6:2607:f8b0:400e:c03::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 415851584 for ; Sun, 12 Jan 2014 18:24:28 +0000 (UTC) Received: by mail-pa0-f47.google.com with SMTP id kp14so588822pab.6 for ; Sun, 12 Jan 2014 10:24:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=PHn0bJ/iLLaLi7L73tUIhjdPzYQkUUy/PSU3nlkXaUg=; b=C+SJTNWOLI3Rhj5ehRd0Cc3NajDU+ka7dWFQkbBzOdkjVLPM++Ipfx0sGEFbwKV5m9 k2VtpvBclLsuDX4FoouB3ABCTve7HDeOB9PDS455y9T8saaeRrCIjjt1QNiRiHxy2DbR M4v729m/GeP737aE1ePkHcTdXTXwzfO4ZwpHB1OXhn8NFpjZVVCBgvdi+batN2yqDkdt Oe7MGi58xTTHoA2BTRDbB3CQfysAz2f3EDpg7z0IEfVTYs2Q7R8WEVPR6ERZHlNcX0fu 3ZUziUDtNQ787t0ZtcIDSDzLW+02teq6zwrqFlcGG7E8FaMjQbCp7QJZOeND2BLD6Wee rsUw== X-Received: by 10.66.186.174 with SMTP id fl14mr25220218pac.108.1389551067858; Sun, 12 Jan 2014 10:24:27 -0800 (PST) Received: from [192.168.20.5] (c-50-181-163-89.hsd1.wa.comcast.net. [50.181.163.89]) by mx.google.com with ESMTPSA id jn12sm32328235pbd.37.2014.01.12.10.24.26 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 12 Jan 2014 10:24:26 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: hyperv doesn't compile on i386 with gcc From: Garrett Cooper In-Reply-To: Date: Sun, 12 Jan 2014 10:24:25 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: References: , To: "Abhishek Gupta (LIS)" X-Mailer: Apple Mail (2.1827) Cc: "virtualization@FreeBSD.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 18:24:28 -0000 Thanks! On Jan 12, 2014, at 8:41 AM, Abhishek Gupta (LIS) = wrote: > Hi Garrett, Sorry for the trouble. We shall have this fixed early next = week. > Thanks, > Abhishek > ________________________________________ > From: Garrett Cooper > Sent: Sunday, January 12, 2014 12:11 AM > To: virtualization@FreeBSD.org > Cc: Abhishek Gupta (LIS) > Subject: Fwd: hyperv doesn't compile on i386 with gcc >=20 > Please see the below message. > Thanks, > -Garrett >=20 >=20 From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 19:40:47 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1321FDBC for ; Sun, 12 Jan 2014 19:40:47 +0000 (UTC) Received: from nm27-vm3.bullet.mail.ne1.yahoo.com (nm27-vm3.bullet.mail.ne1.yahoo.com [98.138.91.157]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 987B11B0C for ; Sun, 12 Jan 2014 19:40:46 +0000 (UTC) Received: from [98.138.100.102] by nm27.bullet.mail.ne1.yahoo.com with NNFMP; 12 Jan 2014 19:38:09 -0000 Received: from [98.138.84.39] by tm101.bullet.mail.ne1.yahoo.com with NNFMP; 12 Jan 2014 19:38:09 -0000 Received: from [127.0.0.1] by smtp107.mail.ne1.yahoo.com with NNFMP; 12 Jan 2014 19:38:09 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1389555489; bh=QFGIrbr4/6BEhCL4XaQDNo8YyfThYsbRH8v1nr8QEUA=; h=X-Yahoo-Newman-Id:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:X-Rocket-Received:Subject:From:Reply-To:To:Cc:In-Reply-To:References:Content-Type:Date:Message-ID:Mime-Version:X-Mailer:Content-Transfer-Encoding; b=4vZv+CpRyJqjgVZ8H2DmaIL0KKo4y79GAhZJGH0H6KULx02yw1F2bJFpsMOQFsBSB90ZTCLHdWVMuw6XfQplUsD68ozpeFMfgz1R70Kgqx9RU0IxeB8Smb/z+M3E/7fXsKYSnkxRAwVeEvVfSXWxYxBdjuBYz9FyedWVy/ikCfc= X-Yahoo-Newman-Id: 289951.31744.bm@smtp107.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: UJ1.pWUVM1kHfHPEuirM_CO9LPq5V.QPNTR6ldLVCtwCuFi Kx5Spblxj4aoEVHI_W_KRaShf53veqAdFoCLaz2cymibx.oDKloiDCGl2HK9 N4O6HVJ3QJyWcx0StrEiTdw_ftV.GfvVb0KVcDpF5o_X_ZBPQ76ZUiYuhdrm PunO26HSgacEYM7zOecgY_pHkUzs4rEOiVCmk.z94cKmzWKiH0BD18ZQzxi3 OR_3mdR2ery5YRpWYVtmh.nBm.yfIYrkbeWk18d5F2YbOxw7OawTZBVkHIsk 6wnP2WRbI5CLW4EGEJPO50REn837AKgNB4vmzYfoK02KF8IyCR0SkfzSe.e. qEw.e0Bso_4yVrkYJ9TjkQRpC8xMd3GcUwLyeG10..dwwyhLRiQ_2V7vkv4Y qfiOf95XOneVEVuF0qR91Ot3AkkPMXkk2VI7rVcLINub4VUKMEuTvDGzeD47 oLJULBw8RKidAEGVgmK6C0vFJty.EaPxifC_SXJrZ3k41y4OSKWyYnwAybfV HiFDelwjhaNte2tiFun70g.ANkYbSAx0bY9Ll6VAIPXteej9VYjDy X-Yahoo-SMTP: u5BKR6OswBC_iZJVfGRoMkTIpc8pEA4- X-Rocket-Received: from [192.168.100.138] (sean_bruno@24.23.220.111 with plain [98.138.105.21]) by smtp107.mail.ne1.yahoo.com with SMTP; 12 Jan 2014 11:38:09 -0800 PST Subject: Re: Virtio Driver From: Sean Bruno To: Robert Simmons In-Reply-To: References: Content-Type: text/plain; charset="us-ascii" Date: Sun, 12 Jan 2014 11:38:07 -0800 Message-ID: <1389555487.1395.7.camel@powernoodle.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: sbruno@freebsd.org List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 19:40:47 -0000 On Thu, 2014-01-09 at 10:50 -0500, Robert Simmons wrote: > I've run into an interesting behavior regarding the virtio driver in > FreeBSD 9.2-RELEASE with regards to running in a VM on OpenStack. When I > attach a volume to the instance running FreeBSD, a device node does not > appear in /dev until after a reboot. > > Is there a way to rescan manually? > _______________________________________________ What happens if you "camcontrol rescan all" ? sean From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 19:56:14 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EAC292F4; Sun, 12 Jan 2014 19:56:14 +0000 (UTC) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9F20A1CDE; Sun, 12 Jan 2014 19:56:14 +0000 (UTC) Received: from Julian-MBP3.local (50-196-156-133-static.hfc.comcastbusiness.net [50.196.156.133]) (authenticated bits=0) by vps1.elischer.org (8.14.7/8.14.7) with ESMTP id s0CJu9gX055792 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Sun, 12 Jan 2014 11:56:12 -0800 (PST) (envelope-from julian@freebsd.org) Message-ID: <52D2F354.6050005@freebsd.org> Date: Sun, 12 Jan 2014 20:56:04 +0100 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Aryeh Friedman , Craig Rodrigues Subject: Re: Remote serial console for BHyve VM? References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-virtualization@freebsd.org" , Peter Wemm X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 19:56:15 -0000 On 1/12/14, 5:13 AM, Aryeh Friedman wrote: > On Mon, Jan 6, 2014 at 5:56 PM, Craig Rodrigues wrote: > >> Hi, >> >> I am working with Sean Bruno to set up some BHyve VM's. >> >> Right now, the vmrun.sh script tells BHyve to direct >> the serial console to stdout. >> > Best solution for a permanent remote console I have heard so far is to use > screen to be able to reconnect to it. We (Dee Nixon and I) have not > actually done this, however, and are looking for a more portable solution. > > If I want to have the VM's start via an rc.d script, and >> have the VM be headless, what is the best way to have >> the VM console still be accessible? >> > A small hack to PetiteCloud (which neither me or Dee have time for but > would be very interested in if someone can do it) might be the best here > since PetiteCloud has auto start on boot -- something that is hard to do > without a lot of custom scripting if you're going with no front-end. For > example it took us over 40 hrs of work to add the auto-start capability to > PetiteCloud. (We were never able to get vmrun.sh to start on boot.) > >> Has anyone done something like use netcat >> to direct the BHyve stdio to a socket? since I think bHyve can export a socket for debugger control, I'm surprised it cant' export a socket for the serial console.. a bit like dcons.. In fact I'd like to see dcons work with bhyve.. it would be neat to implement a version of the dcons code that used a signal instead of polling.. also it'd be nice it the gdb remote could access the machine's memory without VM co-operation. > Me and Dee spent a few weeks with something like it last summer and didn't > have much success. > > >> That way the serial console could be accessed remotely >> via telnet or ssh. >> >> Is there a better way to do this? >> >> -- >> Craig >> _______________________________________________ >> freebsd-virtualization@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization >> To unsubscribe, send any mail to " >> freebsd-virtualization-unsubscribe@freebsd.org" >> > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to "freebsd-virtualization-unsubscribe@freebsd.org" > From owner-freebsd-virtualization@FreeBSD.ORG Sun Jan 12 21:36:15 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 51D605A0; Sun, 12 Jan 2014 21:36:15 +0000 (UTC) Received: from mail-pb0-x230.google.com (mail-pb0-x230.google.com [IPv6:2607:f8b0:400e:c01::230]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1B16112F7; Sun, 12 Jan 2014 21:36:15 +0000 (UTC) Received: by mail-pb0-f48.google.com with SMTP id md12so244321pbc.7 for ; Sun, 12 Jan 2014 13:36:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=LnQlXV601GFvLOUpa57Hn0E2tnV6dtfW8sXcJG8OzMI=; b=YKWL1oyu+uWbpZvBp0B7A4v98Y8QmNlH/1EAtPVSvYh2Pqp4UM/Qcw0PZuDchKQCQM brdkz2oHk/dbPZjPNnbHFFURDqDrgHxM+VtqkbIur7Pb8f/zsBpgorPjkU12fpaBzRNf K5ycMMGi0+TCgK5ikolM38LvABpWt7isEDFOma/u3jhyiQUDwHo4uNyuJ80dQWieypPd mMFeTgB55UW62tSGQVYoqzwriiCbaLpae4b6UEib2QvRCVHSdcPMoWMHMQnz+3QcKK1O 8GcFsQ5R5eqgNNfSMYryvzVHga2FwV/X8HsdRIejrESoPp1UIxFWnWU/oaq9fIvBMYMb nBew== MIME-Version: 1.0 X-Received: by 10.66.227.104 with SMTP id rz8mr25991629pac.74.1389562574412; Sun, 12 Jan 2014 13:36:14 -0800 (PST) Received: by 10.68.185.130 with HTTP; Sun, 12 Jan 2014 13:36:14 -0800 (PST) In-Reply-To: <52D2F354.6050005@freebsd.org> References: <52D2F354.6050005@freebsd.org> Date: Sun, 12 Jan 2014 16:36:14 -0500 Message-ID: Subject: Re: Remote serial console for BHyve VM? From: Aryeh Friedman To: Julian Elischer Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" , Peter Wemm X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jan 2014 21:36:15 -0000 > >>> > since I think bHyve can export a socket for debugger control, I'm > surprised it cant' export a socket for the serial console.. a bit like > dcons.. In fact I'd like to see dcons work with bhyve.. > it would be neat to implement a version of the dcons code that used a > signal instead of polling.. > also it'd be nice it the gdb remote could access the machine's memory > without VM co-operation. Looking at the options available in RC4, I do not see anything in the usage statement or the man page on this. Since PetiteCloud (the bhyve front end I'm working on) is designed to work specifically with 10-RELEASE (whenever that is) we have not incorporated anything from bhyve-grub or head/ yet. Once the plans for what is 10 and what is not are 100% final we will update our support. If there is a management socket, you're right it would be a good solution. A better long term solution would be something like VNC (the idea last summer of including mouse/keyboard integration is incomplete for the remote access case of non-command line OS's)... As for the idea of allowing host access to the VM's memory without VM cooperation, why do you want that? Security wise it would be very risky. P.S. ports/185362 and ports/185361 (PetiteCloud and the unit testing framework it uses) need to be committed. Can someone please do this? -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Mon Jan 13 05:13:28 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 90F9C795; Mon, 13 Jan 2014 05:13:28 +0000 (UTC) Received: from torment.daemoninthecloset.org (torment.daemoninthecloset.org [94.242.209.234]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4E6AA12E9; Mon, 13 Jan 2014 05:13:27 +0000 (UTC) Received: from sage.daemoninthecloset.org (unknown [70.114.209.60]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "sage.daemoninthecloset.org", Issuer "daemoninthecloset.org" (verified OK)) by torment.daemoninthecloset.org (Postfix) with ESMTPS id 290F042C2530; Mon, 13 Jan 2014 06:13:19 +0100 (CET) X-Virus-Scanned: amavisd-new at daemoninthecloset.org X-Virus-Scanned: amavisd-new at daemoninthecloset.org Date: Sun, 12 Jan 2014 23:13:07 -0600 (CST) From: Bryan Venteicher To: sbruno@freebsd.org Message-ID: <33701594.2026.1389589987223.JavaMail.root@daemoninthecloset.org> In-Reply-To: <1389555487.1395.7.camel@powernoodle.corp.yahoo.com> References: <1389555487.1395.7.camel@powernoodle.corp.yahoo.com> Subject: Re: Virtio Driver MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [192.168.10.20] X-Mailer: Zimbra 8.0.2_GA_5569 (ZimbraWebClient - GC31 ([unknown])/8.0.2_GA_5569) Thread-Topic: Virtio Driver Thread-Index: 7D7mJbic+t/Ys7mDlTQmJDTHeVcN5w== Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jan 2014 05:13:28 -0000 ----- Original Message ----- > What happens if you "camcontrol rescan all" ? > A VirtIO block device (and a parent VirtIO PCI device) is what is likely getting created here, so there is no SCSI bus to rescan. I had a prior private conversation with Robert last week. This particular use case will not work until PCI hotplug support is there - this is not a limitation of VirtIO (fundamentally or as implemented in FreeBSD). Workarounds include use VirtIO SCSI since it supports hot plug. In FreeBSD 10, VirtIO block supports the resize events from the hypervisor, but the GEOM support for this was not MFC'ed to 9. > sean > > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to > "freebsd-virtualization-unsubscribe@freebsd.org" > From owner-freebsd-virtualization@FreeBSD.ORG Mon Jan 13 11:06:55 2014 Return-Path: Delivered-To: freebsd-virtualization@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1ABF46EB for ; Mon, 13 Jan 2014 11:06:55 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 05BE91162 for ; Mon, 13 Jan 2014 11:06:55 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id s0DB6svY096031 for ; Mon, 13 Jan 2014 11:06:54 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id s0DB6s96096029 for freebsd-virtualization@FreeBSD.org; Mon, 13 Jan 2014 11:06:54 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 13 Jan 2014 11:06:54 GMT Message-Id: <201401131106.s0DB6s96096029@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-virtualization@FreeBSD.org Subject: Current problem reports assigned to freebsd-virtualization@FreeBSD.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jan 2014 11:06:55 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/165252 virtualization[vimage] [pf] [panic] kernel panics with VIMAGE and PF o kern/161094 virtualization[vimage] [pf] [panic] kernel panic with pf + VIMAGE wh o kern/160541 virtualization[vimage][pf][patch] panic: userret: Returning on td 0x o kern/160496 virtualization[vimage] [pf] [patch] kernel panic with pf + VIMAGE o kern/148155 virtualization[vimage] [pf] Kernel panic with PF + VIMAGE kernel opt a kern/147950 virtualization[vimage] [carp] VIMAGE + CARP = kernel crash s kern/143808 virtualization[pf] pf does not work inside jail 7 problems total. From owner-freebsd-virtualization@FreeBSD.ORG Mon Jan 13 17:59:04 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id ECCB0E06 for ; Mon, 13 Jan 2014 17:59:04 +0000 (UTC) Received: from mail-pa0-f52.google.com (mail-pa0-f52.google.com [209.85.220.52]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C41441721 for ; Mon, 13 Jan 2014 17:59:04 +0000 (UTC) Received: by mail-pa0-f52.google.com with SMTP id kx10so4108438pab.39 for ; Mon, 13 Jan 2014 09:58:58 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type; bh=YL/kqh1wT2Q8GE6MYgM5DFLMCS7k6ELc0N372qCdF3E=; b=c57RNw5Bchi9Fotmmhi2j+1RYU/NDXLhj0PcQ+WVzZhbc5Ho5a97KIZBj2YixWU3j0 3bSyxuzFK7aQdD18SXLuoYo33WxwYJtCsx/KJFAvN0qV/jNdMuVAbn8WaurBmsoF3x/n P69DQkOOx5aI8ciIqxGGJWkEmE/r2GJeEE+i9rgcOF5N3xT+EiD7VzFjrIYPRSbLjr5e Qh2+lyoEToucxMDn0Jfu8XEcjfouj6iPOoBClsZYZwQg0RD+Zp5ySx6gUqv7Uv6pl1kf 9ZxfuH6w5Dv4NzIlWBfRmM0aiy1GFTh7MElZ/SnXPs64rSeno3x9yhlqjQvCJMFoY6Yl s7Pg== X-Gm-Message-State: ALoCoQludpNqK3fZ+zde3OzjZzOQPL14z8jzGkYA8AOnygy5mZ23tdztHLBDIGxZntxiP6+Np2M8 MIME-Version: 1.0 X-Received: by 10.66.180.200 with SMTP id dq8mr31576741pac.104.1389635465152; Mon, 13 Jan 2014 09:51:05 -0800 (PST) Received: by 10.68.176.5 with HTTP; Mon, 13 Jan 2014 09:51:04 -0800 (PST) X-Originating-IP: [217.200.201.39] Received: by 10.68.176.5 with HTTP; Mon, 13 Jan 2014 09:51:04 -0800 (PST) Date: Mon, 13 Jan 2014 18:51:04 +0100 Message-ID: Subject: Bhyve infos about a vm From: Andrea Brancatelli To: freebsd-virtualization@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jan 2014 17:59:05 -0000 Hello, Whats the command to list all the attached devices to a vm? Bhyctl --vm=vm0 --get-all seemsto write of funny but totally irrelevant info for an user (instead of a developer...) Is there a way to get a list of the attached devices, say virtio-blk, ethernet stuff... Andrea Brancatelli Schema31 From owner-freebsd-virtualization@FreeBSD.ORG Mon Jan 13 19:29:37 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E6ED184F for ; Mon, 13 Jan 2014 19:29:37 +0000 (UTC) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id A89B81EF8 for ; Mon, 13 Jan 2014 19:29:37 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 7215711D5A; Tue, 14 Jan 2014 05:29:30 +1000 (EST) Received: from Peter-Grehans-MacBook-Pro-2.local ([64.245.0.210]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BRD54172 (AUTH peterg@ptree32.com.au); Tue, 14 Jan 2014 05:29:29 +1000 Message-ID: <52D43E92.7020007@freebsd.org> Date: Mon, 13 Jan 2014 11:29:22 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Andrea Brancatelli Subject: Re: Bhyve infos about a vm References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jan 2014 19:29:38 -0000 Hi Andrea, > Whats the command to list all the attached devices to a vm? The only way currently is to list the bhyve command line using ps. Any preferences for how you'd like to see this ? later, Peter. From owner-freebsd-virtualization@FreeBSD.ORG Mon Jan 13 22:11:56 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B95AEB70 for ; Mon, 13 Jan 2014 22:11:56 +0000 (UTC) Received: from mail-ea0-f181.google.com (mail-ea0-f181.google.com [209.85.215.181]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 46E021E4D for ; Mon, 13 Jan 2014 22:11:55 +0000 (UTC) Received: by mail-ea0-f181.google.com with SMTP id m10so3583701eaj.26 for ; Mon, 13 Jan 2014 14:11:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:references:mime-version:in-reply-to:content-type :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=MTM0ZnkFGKhCMaYvEcEWiWSArQpenEcqGRnk/rWlUWc=; b=FdxfA2hbnjbgypZhtdk4hRf7oy4XxKVzV86gFb0Sqg6lI+8NGpRDl2yxDyjtiP77ay pxLfmr6rBRreLFljl72itvj7/Oz+mgaP/Pxxb8Dd3oKpE3RcfJXvsLUyFic+QljntWGL Ry0/Csk0PZncVVRIlP4QU8gTse+G9azThHq5PJM0tEJfh3jvw17J+Wk5pzGF+OQkFqlS V5gKwnzfbSqQkHl4HNwFtaWqsAtTcqnznXOAfo+fs/chF14o6KUYxh1gvSks4s2uE389 cmjxl2ACAl+Biy+kCF/JVRX3E3mUC7wuPh6m/8CF8/+uE4Ppz3LFcLVLJIbpmt9kpMzJ EIXg== X-Gm-Message-State: ALoCoQlVfF6Ca+tfRR9UnnpjsQDBd1IW9r+EZ5Xl5Cf0ghbJ0ijGn8YlSHDF5pIRBoBKdVV0uC0K X-Received: by 10.15.94.201 with SMTP id bb49mr17451213eeb.45.1389651107738; Mon, 13 Jan 2014 14:11:47 -0800 (PST) Received: from [192.168.1.25] (host158-211-dynamic.9-79-r.retail.telecomitalia.it. [79.9.211.158]) by mx.google.com with ESMTPSA id 7sm43424570eee.12.2014.01.13.14.11.45 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 13 Jan 2014 14:11:45 -0800 (PST) References: <52D43E92.7020007@freebsd.org> Mime-Version: 1.0 (1.0) In-Reply-To: <52D43E92.7020007@freebsd.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Message-Id: <0A9B06EE-9B7A-4F8E-A970-12D25BCB8F7F@schema31.it> X-Mailer: iPad Mail (11B554a) From: Andrea Brancatelli Subject: Re: Bhyve infos about a vm Date: Mon, 13 Jan 2014 23:11:45 +0100 To: Peter Grehan Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jan 2014 22:11:56 -0000 Hello Peter. Funny but my ps doesn't seem to report it, it only shows bhyve vm0. Maybe it= is because it was run as Bhyve vm0 \ -something \ -something Btw I think the bhyvectl is the candidate for this, maybe bhyvectl --vm=3Dvm= 0 --get-devices ? Is "devices" the correct name for those parameters? Or maybe just --get-parm= s ? Thank you very much. Bhyve is coming on as a great project (performances are= great!), we now just have to work a lot to make it "friendly"!!! Andrea "Mr.SK" Brancatelli > On 13/gen/2014, at 20:29, Peter Grehan wrote: >=20 > Hi Andrea, >> Whats the command to list all the attached devices to a vm? >=20 > The only way currently is to list the bhyve command line using ps. >=20 > Any preferences for how you'd like to see this ? >=20 > later, >=20 > Peter. From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:06:42 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 78C59AD3 for ; Tue, 14 Jan 2014 00:06:42 +0000 (UTC) Received: from mail.leadmon.net (mail.leadmon.net [IPv6:2001:550:102:301::13]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2E02116EC for ; Tue, 14 Jan 2014 00:06:42 +0000 (UTC) Received: from HDLDESKTOP (hdl-desktop.leadmon.net [10.0.0.3]) (authenticated bits=0) by mail.leadmon.net (8.14.7/8.14.7/Blacklist) with ESMTP id s0E06ds7040276 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO) for ; Mon, 13 Jan 2014 19:06:39 -0500 (EST) (envelope-from howard@leadmon.net) DKIM-Filter: OpenDKIM Filter v2.8.3 mail.leadmon.net s0E06ds7040276 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leadmon.net; s=default; t=1389657999; bh=GH6WdSdKBU84lS66BV9atP+z2g1kOoR38rb/a9tAvVI=; h=From:To:Subject:Date; b=mt0QU3FGg/2xXnfc+OnO4p9ezLiiF+LIdzMU8Kb1bkjG43kRQF6K9pf2h8cNnMZJO QyS+GbHtmB8R2B4SKviwkT/F+XOhKN6TthnanHMa4c/INHJYt1GlkhybAK9x2xgFD2 kBm3JI6lt4zo2NxrtxLXeVs6TVnmmykmND0x9z1g= From: "Howard Leadmon" To: Subject: FreeBSD 10 under QEMU-KVM Issues.. Date: Mon, 13 Jan 2014 19:06:36 -0500 Message-ID: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 14.0 Thread-Index: Ac8Qu56/yb6Oi9nPT9K4LRgkDwfgKg== Content-Language: en-us X-Virus-Scanned: clamav-milter 0.98 at vorlon.leadmon.net X-Virus-Status: Clean X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:06:42 -0000 I have had FreeBSD 8 and 9 running just fine under a Linux KVM, and as I know 10 is about to go official, I figured I would load up a VM of 10 to play with. So I grabbed the ISO of RC5, and proceeded to load a VM. Anytime I try this, I get to the phase where it tries to load, but then it just hangs, and I have left it set for an hour, still nothing. When it starts to boot I see: gPXE (http://etherboot.org) - 00:04.0 C980 PCI2.10 PnP BBS PMM7FC0@20 C980 Booting from DVD/CD... CD Loader 1.2 Building the boot loader arguments Looking up the /BOOT/LOADER... Found Relocating the loader and the BTX That is it, at that point it just hangs. I have tried from 2G RAM to 6G RAM for the VM, and from 1 to 4 CPU's, but no effect. If I try and load something prior to 10, it works fine, but 10 for some reason will not boot. I have tried older BETA's as well, no difference. Any ideas how to get past this?? --- Howard Leadmon From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:23:39 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 44D8DD5B; Tue, 14 Jan 2014 00:23:39 +0000 (UTC) Received: from mail0.glenbarber.us (mail0.glenbarber.us [IPv6:2607:fc50:1:2300:1001:1001:1001:face]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 175FD1872; Tue, 14 Jan 2014 00:23:39 +0000 (UTC) Received: from glenbarber.us (c-71-224-221-174.hsd1.nj.comcast.net [71.224.221.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id 9F804EEE8; Tue, 14 Jan 2014 00:23:37 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us 9F804EEE8 Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Mon, 13 Jan 2014 19:23:36 -0500 From: Glen Barber To: Howard Leadmon Subject: Re: FreeBSD 10 under QEMU-KVM Issues.. Message-ID: <20140114002336.GQ1742@glenbarber.us> References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="hSZb4FHl1C2xfsUy" Content-Disposition: inline In-Reply-To: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> X-Operating-System: FreeBSD 11.0-CURRENT amd64 User-Agent: Mutt/1.5.22 (2013-10-16) Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:23:39 -0000 --hSZb4FHl1C2xfsUy Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jan 13, 2014 at 07:06:36PM -0500, Howard Leadmon wrote: >=20 > I have had FreeBSD 8 and 9 running just fine under a Linux KVM, and as I > know 10 is about to go official, I figured I would load up a VM of 10 to > play with. So I grabbed the ISO of RC5, and proceeded to load a VM. >=20 > Anytime I try this, I get to the phase where it tries to load, but then = it > just hangs, and I have left it set for an hour, still nothing. =20 >=20 >=20 > When it starts to boot I see: >=20 >=20 > gPXE (http://etherboot.org) - 00:04.0 C980 PCI2.10 PnP BBS PMM7FC0@20 C980 >=20 > Booting from DVD/CD... > CD Loader 1.2 >=20 > Building the boot loader arguments > Looking up the /BOOT/LOADER... Found > Relocating the loader and the BTX >=20 >=20 >=20 > That is it, at that point it just hangs. I have tried from 2G RAM to 6G > RAM for the VM, and from 1 to 4 CPU's, but no effect. If I try and load > something prior to 10, it works fine, but 10 for some reason will not boo= t. > I have tried older BETA's as well, no difference. =20 >=20 > Any ideas how to get past this?? >=20 What version of qemu-kvm is this? Glen --hSZb4FHl1C2xfsUy Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBCAAGBQJS1IOHAAoJELls3eqvi17QTOgQAJVDvxGeY6HWb2ahWjDtpw31 kCzuwkp17bEIJgUiDrhMQlxeDTKSY/pJUCQ5s2g1aK8jSgZhlAuyEo8EE55M5e9k 72wt++ZwaZQIX+2W5gbTpd1vJed2F+hx1uBSLCt92Pq/jR2+KEQUUNIPm50ee6MF wHDWMQnmQ1JEqXQWHK51NxjSOlczCJvBTiKXG+ysJYfD72mqT0tAHEnRSJ6A/TQd uiJLY/rlfL+ovExFuvSW/8XF8xE4lzn5gZllI1fd71/UdGcZo1VZW1vsElZVrckO gG9lnGVMYkE7Y+3SwkEg2v+qgE+Xjj+5LZybrFkQaKC78k1q7Xv77JnSp6sVNwNJ VuTuIhYhX5wYj29oOVO3WaqajS1y1tfKBkioznhCvoHntOcTi8h1u4xLzi9XU4xG D6jmhJwxZg7LlZY+Dww1eiXxEBPXO39X2Bc74dEoOj7QXmoEg6TxzhZxDksDLZ6A /IwCowMGORZsQ9O//B8ELuDodhqhuHoYTsApZfeUAJaq4KalOZ2vucGJYrcsVu6b SHiDPlX5n0ZrJ91/6qEQV6S2lrX9ELbyFOODTRMwh4U0TfwjiN7Wm3rwgHoffbwn IphqvvCdKnZoa1tVh08mw4tUdQSvBZC5uWbdZK0/y8jXARd23dRDBTId0iERi0Lg nA9YMaIkdGsRhLDJKgdU =/VGH -----END PGP SIGNATURE----- --hSZb4FHl1C2xfsUy-- From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:28:00 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 44CBF1C8; Tue, 14 Jan 2014 00:28:00 +0000 (UTC) Received: from mail.leadmon.net (mail.leadmon.net [IPv6:2001:550:102:301::13]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EF3AC18B1; Tue, 14 Jan 2014 00:27:59 +0000 (UTC) Received: from HDLDESKTOP (hdl-desktop.leadmon.net [10.0.0.3]) (authenticated bits=0) by mail.leadmon.net (8.14.7/8.14.7/Blacklist) with ESMTP id s0E0RwMa041660 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Mon, 13 Jan 2014 19:27:58 -0500 (EST) (envelope-from howard@leadmon.net) DKIM-Filter: OpenDKIM Filter v2.8.3 mail.leadmon.net s0E0RwMa041660 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leadmon.net; s=default; t=1389659278; bh=hnyWf9BpqhQuxNwZARD2d2Nq68RO63n3/kwC/42Sdik=; h=From:To:Cc:References:In-Reply-To:Subject:Date; b=AA3tzr7UTsaHXo+EjUGg3rcOBICpbY6f7eLLDl86RdfCfSGtQp0wwyKiOVbrG8Kc4 Uo6R0buVc7glt7tE3naV8mrO5jtr3oA+b8/WkxFMfVq/DECYgWVs3uSyIsHEwCKvkt Oe82f5OTwwmnstvPzAPUMUZz+01d9wM0uJVCxqTg= From: "Howard Leadmon" To: "'Glen Barber'" References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> In-Reply-To: <20140114002336.GQ1742@glenbarber.us> Subject: RE: FreeBSD 10 under QEMU-KVM Issues.. Date: Mon, 13 Jan 2014 19:27:55 -0500 Message-ID: <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQDrAw7RVkMxatUGNbox98U4MBE/JgBNACBInEkQXvA= Content-Language: en-us X-Virus-Scanned: clamav-milter 0.98 at vorlon.leadmon.net X-Virus-Status: Clean Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:28:00 -0000 It is currently under CentOS 6.4, and sending a -version to qemu-kvm gives me the following: QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003-2008 Fabrice Bellard --- Howard Leadmon > -----Original Message----- > > What version of qemu-kvm is this? > > Glen From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:29:49 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1269140F; Tue, 14 Jan 2014 00:29:49 +0000 (UTC) Received: from mail0.glenbarber.us (mail0.glenbarber.us [IPv6:2607:fc50:1:2300:1001:1001:1001:face]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D957918D7; Tue, 14 Jan 2014 00:29:48 +0000 (UTC) Received: from glenbarber.us (c-71-224-221-174.hsd1.nj.comcast.net [71.224.221.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id B246FEFC4; Tue, 14 Jan 2014 00:29:47 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us B246FEFC4 Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Mon, 13 Jan 2014 19:29:46 -0500 From: Glen Barber To: Howard Leadmon Subject: Re: FreeBSD 10 under QEMU-KVM Issues.. Message-ID: <20140114002946.GR1742@glenbarber.us> References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ffBYM5qgR8HH9Mta" Content-Disposition: inline In-Reply-To: <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> X-Operating-System: FreeBSD 11.0-CURRENT amd64 User-Agent: Mutt/1.5.22 (2013-10-16) Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:29:49 -0000 --ffBYM5qgR8HH9Mta Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jan 13, 2014 at 07:27:55PM -0500, Howard Leadmon wrote: > It is currently under CentOS 6.4, and sending a -version to qemu-kvm giv= es > me the following: >=20 > QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003-2= 008 > Fabrice Bellard >=20 >=20 I think updating the version of qemu-kvm will take care of your problem. Glen >=20 > > -----Original Message----- > >=20 > > What version of qemu-kvm is this? > >=20 > > Glen >=20 --ffBYM5qgR8HH9Mta Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBCAAGBQJS1IT5AAoJELls3eqvi17QVA0P/0n5nkRYubCsx61avxpDYMp7 vJ57Bmzf0hU5DVipI9wPxPYatBvzUFxqa0NtfcO+MzqlbopFWIzP7Sdde9NM5QIx gn1Ld+dNA8eTM8RO3IItaqdqJk0N2NhfCo3ELDTYPXBtVrA6ubF+fxcpQKFqJSA/ XwX1gPQiB1KYSuv4oLKmQd2TRZCOEC7fcPDCCmcZdiX52AXrXGg/cWgGk9X0sAUH tIiKqahgiVSE0H5W9v3O5AzSo4v29i4I84rq7ePnQim+ZhVPLkkFxs9dfj5ZWQXt Mk/5mbIXhggM4Pw8wdEG3oZs0AYvmf0TGcZhjNdK9B8kTgJ5f0kWAwM/vGKVJFz0 ctxHLeI5k34Lfwr7oGvmU7Gtpe1Pd6oM2D8QuGDfhtTEzohG5UAaUAhNVs4AUlOI kW74PNQxCeN+O+BYd2LRbyBnhcxCoX7dSzvB/zkdh46kBkqpzEDIht5J4S/gVu20 aZhU4Fy3TOZnTUreIK4pOcqTFBhLDrIaFXhl49+uf7/saurTeMW3T3rAdN1YHAfc l7Qq87oaDgSTZus+tohZqVhAeEBO1W0jbvowYcwvuySexcSpdEQVehFHipJe71s6 E2PNNOMreZm+8uxWDnfIT+SlJVdFcEjePpfCtapWtnTfKtx7gkGSuI5/tQKxs0zX H2uNC9cJFLh62oFaA2Lp =u7W0 -----END PGP SIGNATURE----- --ffBYM5qgR8HH9Mta-- From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:35:44 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3C2CD561; Tue, 14 Jan 2014 00:35:44 +0000 (UTC) Received: from mail.leadmon.net (mail.leadmon.net [IPv6:2001:550:102:301::13]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CA2091988; Tue, 14 Jan 2014 00:35:43 +0000 (UTC) Received: from HDLDESKTOP (hdl-desktop.leadmon.net [10.0.0.3]) (authenticated bits=0) by mail.leadmon.net (8.14.7/8.14.7/Blacklist) with ESMTP id s0E0ZgHf042010 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Mon, 13 Jan 2014 19:35:42 -0500 (EST) (envelope-from howard@leadmon.net) DKIM-Filter: OpenDKIM Filter v2.8.3 mail.leadmon.net s0E0ZgHf042010 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leadmon.net; s=default; t=1389659742; bh=a9+BTQ2hwVHLW/LSse7m9BJ5bSL/IMENa/4c/zaZelg=; h=From:To:Cc:References:In-Reply-To:Subject:Date; b=b9iWqikElezy0XidtacKTeZCTRuXTKXsNbmDzx0x2eEy8kLiysCQsSSGt9457HGtD RdKEEXEFqXk1LgKEaUaFuA2KfdXmk56lwK95sEtDQjqkeaUU5tJcKPBuUuombfeB3U ixcof7BuxnHSGs38hK4ViUl4ksIR4CqESe5T4XrY= From: "Howard Leadmon" To: "'Glen Barber'" References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> <20140114002946.GR1742@glenbarber.us> In-Reply-To: <20140114002946.GR1742@glenbarber.us> Subject: RE: FreeBSD 10 under QEMU-KVM Issues.. Date: Mon, 13 Jan 2014 19:35:39 -0500 Message-ID: <00a901cf10c0$8e768150$ab6383f0$@leadmon.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQDrAw7RVkMxatUGNbox98U4MBE/JgBNACBIAvXGxy0B2vlEgZwijFBg Content-Language: en-us X-Virus-Scanned: clamav-milter 0.98 at vorlon.leadmon.net X-Virus-Status: Clean Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:35:44 -0000 > -----Original Message----- > From: Glen Barber [mailto:gjb@FreeBSD.org] > Sent: Monday, January 13, 2014 7:30 PM > To: Howard Leadmon > Cc: freebsd-virtualization@freebsd.org > Subject: Re: FreeBSD 10 under QEMU-KVM Issues.. > > On Mon, Jan 13, 2014 at 07:27:55PM -0500, Howard Leadmon wrote: > > It is currently under CentOS 6.4, and sending a -version to qemu-kvm gives > > me the following: > > > > QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003- > 2008 > > Fabrice Bellard > > > > > > I think updating the version of qemu-kvm will take care of your problem. > > Glen I hate to play stupid here, and guess I can go digging, but any specific version in mind? As I am just using the CentOS supplied KVM, so not sure how much of a forklift transplant I can make and not cause issues with the host server. Just strange that all prior BSD's work fine, but the new 10 doesn't, guess they are doing something different at boot.. --- Howard Leadmon From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 00:39:39 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7179B738; Tue, 14 Jan 2014 00:39:39 +0000 (UTC) Received: from mail0.glenbarber.us (mail0.glenbarber.us [208.86.227.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 42FAA19B6; Tue, 14 Jan 2014 00:39:38 +0000 (UTC) Received: from glenbarber.us (c-71-224-221-174.hsd1.nj.comcast.net [71.224.221.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id 94E37F0A9; Tue, 14 Jan 2014 00:39:37 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us 94E37F0A9 Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Mon, 13 Jan 2014 19:39:35 -0500 From: Glen Barber To: Howard Leadmon Subject: Re: FreeBSD 10 under QEMU-KVM Issues.. Message-ID: <20140114003935.GS1742@glenbarber.us> References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> <20140114002946.GR1742@glenbarber.us> <00a901cf10c0$8e768150$ab6383f0$@leadmon.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="nSQp8DZZn7gZbDHt" Content-Disposition: inline In-Reply-To: <00a901cf10c0$8e768150$ab6383f0$@leadmon.net> X-Operating-System: FreeBSD 11.0-CURRENT amd64 User-Agent: Mutt/1.5.22 (2013-10-16) Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 00:39:39 -0000 --nSQp8DZZn7gZbDHt Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jan 13, 2014 at 07:35:39PM -0500, Howard Leadmon wrote: >=20 > > -----Original Message----- > > From: Glen Barber [mailto:gjb@FreeBSD.org] > > Sent: Monday, January 13, 2014 7:30 PM > > To: Howard Leadmon > > Cc: freebsd-virtualization@freebsd.org > > Subject: Re: FreeBSD 10 under QEMU-KVM Issues.. > >=20 > > On Mon, Jan 13, 2014 at 07:27:55PM -0500, Howard Leadmon wrote: > > > It is currently under CentOS 6.4, and sending a -version to qemu-kvm > gives > > > me the following: > > > > > > QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 20= 03- > > 2008 > > > Fabrice Bellard > > > > > > > >=20 > > I think updating the version of qemu-kvm will take care of your problem. > >=20 > > Glen >=20 >=20 > I hate to play stupid here, and guess I can go digging, but any specific > version in mind? As I am just using the CentOS supplied KVM, so not sure > how much of a forklift transplant I can make and not cause issues with the > host server. Just strange that all prior BSD's work fine, but the new= 10 > doesn't, guess they are doing something different at boot.. >=20 The only other report I've seen of this issue, updating to 1.1.2 resolved the issue. Glen --nSQp8DZZn7gZbDHt Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBCAAGBQJS1IdHAAoJELls3eqvi17QSZcP/A774rQ8c2VHkwZ8asY/fsLG ri5XkiBeiIqgQXctyy4o6Ezn5nG5ww2Xw8QV50oMERLW4abOPqKzKvEeulAjkJGe SKA6ykn8gpNAXZ3S+NtMrnbJJ8zdMYXkjl91rx+12SPKXQ3M+7dqCrQh6umsUiFt yOm/1nn0yQrRokDkNWXORlDF2jr78D78CUqW4U6hfbUpVkUhfhCQZzDr0tCPEgoT SEhEqpxuDGhMe1NBwnt6wPE1lGWYn11UbPii3oO3Szpv7MiykH+Mvqqpv28D9JmJ M56Lyd4bIU+mUE+Go/VeCIV94kj2hVvfaaqJx6ysPvGHxxHvuj/+hHeKZGGcRRGF lUjbZmEgzp+A0kOgO8uYyN9vxAV5WqeQUg6oXxr/KmQGxztVqxlbKT9TCF50uDjc tNjfohizhLQ+ToayG160HSOmPupY8VW2qSMEJ3mzeMMea+zUQ1HtAWB/biazmpbG CFRo5dc9lvYeZh1i2vl/qb5UyAXmIeSNVPDQbFHX0TU6MUn0aDHwKpSmgNUnnHIF bQ8k9aQ9wwNNrAQEbD+rG1uQw4PTE6k/MpTbMPNMNTtWfc+JlpsAnvcd5rZyg9Lg VQ/6a9NNMGulBKbXE3ksF9jW6ytQWZpgzF6T4cMhrS3yVmDB19TRtfNjseIgD7az V1ejQXUcp/dTQSD8a2aW =n+5p -----END PGP SIGNATURE----- --nSQp8DZZn7gZbDHt-- From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 01:40:47 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2F56A5F; Tue, 14 Jan 2014 01:40:47 +0000 (UTC) Received: from mail-ea0-x232.google.com (mail-ea0-x232.google.com [IPv6:2a00:1450:4013:c01::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 363DE1F58; Tue, 14 Jan 2014 01:40:47 +0000 (UTC) Received: by mail-ea0-f178.google.com with SMTP id d10so3731294eaj.9 for ; Mon, 13 Jan 2014 17:40:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=phpcpFPw/uhmpyq3byVTMEpbRy1k142oyg2HodIHFvw=; b=NRcayJ8r6uItxmOh1y/sUANSxzpOfW6pR8VVo1EpQ9QZx0Og+tDlA3cW4YYr85phXr xKGb++PjpcFSMCrCa89jUZWSv5I6z3LcoViFY0whg8b0NAds3cjXFi4X+k9NjWbEuOCI GwHXErZ+7t1UZamXzOrbMFEzWyJFU1wf7Y6aK9M3MnEgbzrVwJJNBzMEFeLLsmOOQobR nwtMCS8K1XQH+rCq3aAPMAbYGrByfqlwTCHhvdERu2mmHHdUCRQyn5K7LuuIKcYXQeP3 Dc8IRhaNMv35SJDPUVnuXPEzJ2Oh7XaT6XgREytqAde+XJYp2N/5ShV3XOtU3nlGscJX pOOw== MIME-Version: 1.0 X-Received: by 10.14.208.199 with SMTP id q47mr31184107eeo.77.1389663645725; Mon, 13 Jan 2014 17:40:45 -0800 (PST) Received: by 10.14.138.130 with HTTP; Mon, 13 Jan 2014 17:40:45 -0800 (PST) In-Reply-To: <33701594.2026.1389589987223.JavaMail.root@daemoninthecloset.org> References: <1389555487.1395.7.camel@powernoodle.corp.yahoo.com> <33701594.2026.1389589987223.JavaMail.root@daemoninthecloset.org> Date: Mon, 13 Jan 2014 20:40:45 -0500 Message-ID: Subject: Re: Virtio Driver From: Robert Simmons To: Bryan Venteicher Content-Type: text/plain; charset=UTF-8 Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 01:40:47 -0000 On Mon, Jan 13, 2014 at 12:13 AM, Bryan Venteicher wrote: > ----- Original Message ----- > > What happens if you "camcontrol rescan all" ? > > > > A VirtIO block device (and a parent VirtIO PCI device) is what is likely > getting created here, so there is no SCSI bus to rescan. > > I had a prior private conversation with Robert last week. This particular > use case will not work until PCI hotplug support is there - this is not > a limitation of VirtIO (fundamentally or as implemented in FreeBSD). > > Workarounds include use VirtIO SCSI since it supports hot plug. In FreeBSD > 10, VirtIO block supports the resize events from the hypervisor, but the > GEOM support for this was not MFC'ed to 9. I have created an image of 10-RC5 that I will try the same conditions I described earlier on. Unfortunately, I'm using a cloud service, so I don't have control to change the settings of OpenStack. Thanks for the insight. I'll let you all know the outcome. From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 05:09:23 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3B2D3736; Tue, 14 Jan 2014 05:09:23 +0000 (UTC) Received: from torment.daemoninthecloset.org (torment.daemoninthecloset.org [94.242.209.234]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EC97F1E74; Tue, 14 Jan 2014 05:09:22 +0000 (UTC) Received: from sage.daemoninthecloset.org (unknown [70.114.209.60]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "sage.daemoninthecloset.org", Issuer "daemoninthecloset.org" (verified OK)) by torment.daemoninthecloset.org (Postfix) with ESMTPS id 99C1542C0832; Tue, 14 Jan 2014 06:09:19 +0100 (CET) X-Virus-Scanned: amavisd-new at daemoninthecloset.org X-Virus-Scanned: amavisd-new at daemoninthecloset.org Date: Mon, 13 Jan 2014 23:09:10 -0600 (CST) From: Bryan Venteicher To: Robert Simmons Message-ID: <691723009.2370.1389676150390.JavaMail.root@daemoninthecloset.org> In-Reply-To: References: <1389555487.1395.7.camel@powernoodle.corp.yahoo.com> <33701594.2026.1389589987223.JavaMail.root@daemoninthecloset.org> Subject: Re: Virtio Driver MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [192.168.10.23] X-Mailer: Zimbra 8.0.2_GA_5569 (ZimbraWebClient - GC31 (Mac)/8.0.2_GA_5569) Thread-Topic: Virtio Driver Thread-Index: eTXdHWu9qT/bhsjcvc+5gopI7yFLqQ== Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 05:09:23 -0000 ----- Original Message ----- > I have created an image of 10-RC5 that I will try the same conditions > I described earlier on. Unfortunately, I'm using a cloud service, so I > don't have control to change the settings of OpenStack. > And just to be clear: In 10.0, you can only resize a disk that is already present at boot. It doesn't get around the lack of PCI hot plug support. > Thanks for the insight. I'll let you all know the outcome. > From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 12:23:22 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 20F3169A for ; Tue, 14 Jan 2014 12:23:22 +0000 (UTC) Received: from mail-pb0-f51.google.com (mail-pb0-f51.google.com [209.85.160.51]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E7E571FB1 for ; Tue, 14 Jan 2014 12:23:21 +0000 (UTC) Received: by mail-pb0-f51.google.com with SMTP id rp16so2378800pbb.10 for ; Tue, 14 Jan 2014 04:23:15 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=neYU6mj4iQtf8qOpj0qKG4lbdqdnMpzX0DrD1qchDpI=; b=PRFmmaCZwkFJaWcsGmZhwKlcEZJ1GSPCG2sTyscHI8tuXusNFbT67TpM+odNxcjXL3 8aHrb2yX9qW8rQzDgrj1brv/RyuD5QXYizrd6TmMQQmvQ3BE/Gq/+t8RiKJpuZJDtYwa /cwU5DGO6/lJRD28tZRB2wHcUAKr7OcLHxwNpGYAK6CZqe10QmjvGYAJBZJzRSb3cQ0F vmRkwGQNpWkHDWFF7ohOoFmE/YjsOtuwe5h9MX+Ffm+hlJJ06okK2BmOc2stgCciFC+n 92Do44es1oOFZnlK9oD82S1FE6lheSd6IPwH1tQt0Sf87Th0IZh4AHw0i7oUFqh66qxF 31vQ== X-Gm-Message-State: ALoCoQkyipoueHtHe4fRzXNpoNlTzEEeub3ekF1Rbu/b6VcZ6dAeHP0AhYiZBng1i+ExyFFl/tor MIME-Version: 1.0 X-Received: by 10.68.191.130 with SMTP id gy2mr1256888pbc.129.1389702195040; Tue, 14 Jan 2014 04:23:15 -0800 (PST) Received: by 10.68.176.5 with HTTP; Tue, 14 Jan 2014 04:23:14 -0800 (PST) X-Originating-IP: [2001:470:28:12b::3] In-Reply-To: <52D43E92.7020007@freebsd.org> References: <52D43E92.7020007@freebsd.org> Date: Tue, 14 Jan 2014 13:23:14 +0100 Message-ID: Subject: Re: Bhyve infos about a vm From: Andrea Brancatelli To: Peter Grehan Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 12:23:22 -0000 How should I see it with ps? [root@environment-rm-01 ~]# ps -aux | grep bhyve root 8814 2.4 0.0 4221912 60804 3 D+ 1:15PM 3:11.43 bhyve: lin3 (bhyve) root 6187 0.0 0.0 4221784 34900 0 D+ 11:09AM 0:52.81 bhyve: FreeBSD10.5RC5.img (bhyve) root 8863 0.0 0.0 18724 2156 4 S+ 1:22PM 0:00.00 grep bhyve root 8008 0.0 0.0 4221912 54324 2 D+ 12:50PM 0:48.50 bhyve: lin1 (bhyve) [root@environment-rm-01 ~]# cat /proc/6187/cmdline bhyve: FreeBSD10.5RC5.img I'm out of ideas... :) On Mon, Jan 13, 2014 at 8:29 PM, Peter Grehan wrote: > Hi Andrea, > > Whats the command to list all the attached devices to a vm? >> > > The only way currently is to list the bhyve command line using ps. > > Any preferences for how you'd like to see this ? > > later, > > Peter. > --=20 *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 ITALIA* From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 13:52:51 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 592E4E80 for ; Tue, 14 Jan 2014 13:52:51 +0000 (UTC) Received: from Potassio.roma.schema31.it (unknown [IPv6:2001:470:28:12b::2]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0B0EE16FA for ; Tue, 14 Jan 2014 13:52:50 +0000 (UTC) Received: from [10.33.100.144] ([10.33.100.144]) by Potassio.roma.schema31.it (8.14.3/8.14.3) with ESMTP id s0EDqmoa082501 for ; Tue, 14 Jan 2014 14:52:48 +0100 (CET) (envelope-from pottaviani@consulenti.schema31.it) From: patrizio ottaviani Subject: Linux guest Message-Id: <2F226A2F-5FE9-4223-A35A-F7C491449B09@consulenti.schema31.it> Date: Tue, 14 Jan 2014 14:52:48 +0100 To: freebsd-virtualization@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) X-Mailer: Apple Mail (2.1827) Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 13:52:51 -0000 Hi, i had problem during installation of linux guest. I used "bhyve=94 script for create and start the linux vm,it run = without detected controller sata using "virtio-blk". with "ahci-hd" the system found disk drive and install the system = correctly,but show error in console : [ 5728.301499] ata1.00: irq_stat 0x40000001 [ 5728.302513] ata1.00: failed command: FLUSH CACHE [ 5728.303732] ata1.00: cmd e7/00:00:00:00:00/00:00:00:00:00/a0 tag 0 [ 5728.303734] res 41/04:00:00:00:00/00:00:00:00:00/a0 Emask = 0x1 (device error) [ 5728.307323] ata1.00: status: { DRDY ERR } [ 5728.308368] ata1.00: error: { ABRT } The network interface is found but does not connect using dhcp or with = manual setting. I trying with debian 7.3.0 , ubuntu 10.10 and centos 6.5 without = success. i.e "/usr/sbin/bhyve -c 2 -m 4096 -A -I -H -s 0,hostbridge -s = 2,virtio-blk,/repository/temp/vm/lin1/lin1.img -s 3,virtio-net,tap1 -s = 4,ahci-cd,/repository/temp/vm/lin1/lin1.iso -S 31,uart,stdio lin1=94 and=20 i.e "/usr/sbin/bhyve -c 2 -m 4096 -A -I -H -s 0,hostbridge -s = 2,ahci-hd,/repository/temp/vm/lin1/lin1.img -s 3,virtio-net,tap1 -s = 4,ahci-cd,/repository/temp/vm/lin1/lin1.iso -S 31,uart,stdio lin1" From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 15:05:50 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 39563CD1 for ; Tue, 14 Jan 2014 15:05:50 +0000 (UTC) Received: from plane.gmane.org (plane.gmane.org [80.91.229.3]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E6F751EE7 for ; Tue, 14 Jan 2014 15:05:49 +0000 (UTC) Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1W35Yh-0002Sm-B2 for freebsd-virtualization@freebsd.org; Tue, 14 Jan 2014 16:05:39 +0100 Received: from august.inf.tu-dresden.de ([141.76.48.124]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 14 Jan 2014 16:05:39 +0100 Received: from jsteckli by august.inf.tu-dresden.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 14 Jan 2014 16:05:39 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-virtualization@freebsd.org From: Julian Stecklina Subject: KVM Clock Date: Tue, 14 Jan 2014 16:05:27 +0100 Lines: 27 Message-ID: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="LBep2t7UKVmMct6XV74svcwnFrGRpuJHp" X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: august.inf.tu-dresden.de User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 X-Enigmail-Version: 1.6 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 15:05:50 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --LBep2t7UKVmMct6XV74svcwnFrGRpuJHp Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, is anyone working on KVM clock support for FreeBSD? If not, I might take a shot at it. Julian --LBep2t7UKVmMct6XV74svcwnFrGRpuJHp Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlLVUjcACgkQ2EtjUdW3H9kJ6wCfd8sCh8C6plli8sxc95kywnaD ndYAnjsLWQvNHYN/LPaBu8GuEMBvkuCC =dgwA -----END PGP SIGNATURE----- --LBep2t7UKVmMct6XV74svcwnFrGRpuJHp-- From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 16:13:00 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB8AB7D8 for ; Tue, 14 Jan 2014 16:13:00 +0000 (UTC) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id 7CA511577 for ; Tue, 14 Jan 2014 16:13:00 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 5012E121DD; Wed, 15 Jan 2014 02:12:58 +1000 (EST) Received: from Peters-MacBook-Pro.local (c-69-181-164-196.hsd1.ca.comcast.net [69.181.164.196]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BRE07603 (AUTH peterg@ptree32.com.au); Wed, 15 Jan 2014 02:12:57 +1000 Message-ID: <52D56202.7030608@freebsd.org> Date: Tue, 14 Jan 2014 08:12:50 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Thunderbird/24.0.1 MIME-Version: 1.0 To: patrizio ottaviani Subject: Re: Linux guest References: <2F226A2F-5FE9-4223-A35A-F7C491449B09@consulenti.schema31.it> In-Reply-To: <2F226A2F-5FE9-4223-A35A-F7C491449B09@consulenti.schema31.it> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 16:13:00 -0000 Hi, > i had problem during installation of linux guest. > I used "bhyve” script for create and start the linux vm,it run without detected controller sata using "virtio-blk". > > with "ahci-hd" the system found disk drive and install the system correctly,but show error in console : > > [ 5728.301499] ata1.00: irq_stat 0x40000001 [ 5728.302513] ata1.00: > failed command: FLUSH CACHE That's an issue with the FreeBSD AHCI driver - a fix is ready and will be submitted shortly. The workaround is to use virtio-blk instead, with the caveat that with >= 4G of guest RAM you will need the recent fix in r260469, or drop guest RAM down to <= 3G. > The network interface is found but does not connect using dhcp or with manual setting. What does your bridge setup look like ? later, Peter. From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 16:13:48 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DEF9F825 for ; Tue, 14 Jan 2014 16:13:48 +0000 (UTC) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id A06FB1580 for ; Tue, 14 Jan 2014 16:13:48 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 0DA2B11F7F; Wed, 15 Jan 2014 02:13:48 +1000 (EST) Received: from Peters-MacBook-Pro.local (c-69-181-164-196.hsd1.ca.comcast.net [69.181.164.196]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BRE07625 (AUTH peterg@ptree32.com.au); Wed, 15 Jan 2014 02:13:47 +1000 Message-ID: <52D5623C.7060401@freebsd.org> Date: Tue, 14 Jan 2014 08:13:48 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Thunderbird/24.0.1 MIME-Version: 1.0 To: Julian Stecklina Subject: Re: KVM Clock References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 16:13:48 -0000 Hi Julian, > is anyone working on KVM clock support for FreeBSD? If not, I might take > a shot at it. None I know of: go for it :) later, Peter. From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 16:54:19 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CEA70E58; Tue, 14 Jan 2014 16:54:19 +0000 (UTC) Received: from mail-wg0-x236.google.com (mail-wg0-x236.google.com [IPv6:2a00:1450:400c:c00::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 41EBA196C; Tue, 14 Jan 2014 16:54:19 +0000 (UTC) Received: by mail-wg0-f54.google.com with SMTP id x13so645362wgg.33 for ; Tue, 14 Jan 2014 08:54:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=HBzIYwlt7Azy173JU0CjZYTgGEx6k1+/LwVOCwzhUrc=; b=DC0c0InvzVaEc1L4EB0OYdWJbeJ51AW/JzsH9dNHWANHysg60rqa+YXNQWONAScJT2 hKpB7RTjP4SjESueN0Q+nad/5IOup8WVMd6YHDQH5C8Ot0i85VM/fbvrIH21HM1CL+PA OIW57nThs8LUV8BI9d61BuzB1LT5qyWHzw3EKwiAzDV4kkt56BlFeuYYj8cJPrqMhTIg B8efa4dhzq1EuMUlrFxA3yWnA0PAZiaGgjJSi8y0OpefUhFnrnYhf8DlYdkNZBzOLCMi IlhwQrQ3ry/2um7mtNU3skleqNwA9K4dREdDijFdyHGC3/uWZ6uX4If2wex3R/bz4X+s 6A3g== MIME-Version: 1.0 X-Received: by 10.180.81.38 with SMTP id w6mr3880097wix.27.1389718457269; Tue, 14 Jan 2014 08:54:17 -0800 (PST) Received: by 10.227.1.71 with HTTP; Tue, 14 Jan 2014 08:54:17 -0800 (PST) In-Reply-To: References: <52D43E92.7020007@freebsd.org> Date: Tue, 14 Jan 2014 16:54:17 +0000 Message-ID: Subject: Re: Bhyve infos about a vm From: Markiyan Kushnir To: Andrea Brancatelli Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 16:54:19 -0000 may be "fstat -p `pgrep bhyve`" would give you some info? -- Markiyan 2014/1/14 Andrea Brancatelli : > How should I see it with ps? > > [root@environment-rm-01 ~]# ps -aux | grep bhyve > root 8814 2.4 0.0 4221912 60804 3 D+ 1:15PM 3:11.43 > bhyve: lin3 (bhyve) > root 6187 0.0 0.0 4221784 34900 0 D+ 11:09AM 0:52.81 > bhyve: FreeBSD10.5RC5.img (bhyve) > root 8863 0.0 0.0 18724 2156 4 S+ 1:22PM 0:00.00 > grep bhyve > root 8008 0.0 0.0 4221912 54324 2 D+ 12:50PM 0:48.50 > bhyve: lin1 (bhyve) > [root@environment-rm-01 ~]# cat /proc/6187/cmdline > bhyve: FreeBSD10.5RC5.img > > I'm out of ideas... :) > > > On Mon, Jan 13, 2014 at 8:29 PM, Peter Grehan wrote: > >> Hi Andrea, >> >> Whats the command to list all the attached devices to a vm? >>> >> >> The only way currently is to list the bhyve command line using ps. >> >> Any preferences for how you'd like to see this ? >> >> later, >> >> Peter. >> > > > > -- > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - > FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=E0 del Gruppo SC31 > ITALIA* > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to "freebsd-virtualization-unsubscribe@free= bsd.org" From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 17:55:13 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F1045CE4 for ; Tue, 14 Jan 2014 17:55:12 +0000 (UTC) Received: from mail-pa0-f44.google.com (mail-pa0-f44.google.com [209.85.220.44]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C10C81EBD for ; Tue, 14 Jan 2014 17:55:12 +0000 (UTC) Received: by mail-pa0-f44.google.com with SMTP id kq14so2836821pab.31 for ; Tue, 14 Jan 2014 09:55:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=U39Tl/0ke2Kl1u03qM+T6XGVAvhT6y7IHJfGQCzrpfg=; b=m2n1mnMc9QCL/g+XJVCcKG/1kMclcv2ZuAi5ROoXBVQPeDOa3ZICeT9ZXo59pDmSci eM/+o9IzjlJFrYooosK9Eh5TS02kc0VAhEEsnxf+4jAAL1tWMJ8UNDOXlcWaflTlDaWK cMFieZXsHjm4i2Ny3CGEgpcWgtwizXPsSzOySOagX9JNsFb8U2gFqvVfpVl6KMkGW2bZ 6d0XV7OS99SQ3Wd/d4CnQ/LjQrN4Znky7FbTDbDNh9nnjtidqaVBARxHgjQpr1qzmjfN UoK5f1Nfr2JPnfKlpIHft+woo8H1oAUvN20UpJwZtdWS5ct7f/v5g0RU8unHwQGBcoV/ N7Ww== X-Gm-Message-State: ALoCoQna62HZApL9KS+10xwI1d0kaqOE4bvdt+8YnWshvsx6cJIHNmbX/h5Q2PXo5WHoKq6eIDWE MIME-Version: 1.0 X-Received: by 10.68.12.138 with SMTP id y10mr3064182pbb.101.1389720402865; Tue, 14 Jan 2014 09:26:42 -0800 (PST) Received: by 10.68.176.5 with HTTP; Tue, 14 Jan 2014 09:26:42 -0800 (PST) X-Originating-IP: [2001:470:28:12b::3] In-Reply-To: References: <52D43E92.7020007@freebsd.org> Date: Tue, 14 Jan 2014 18:26:42 +0100 Message-ID: Subject: Re: Bhyve infos about a vm From: Andrea Brancatelli To: Markiyan Kushnir Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 17:55:13 -0000 I don't think so. I'm interested in seeing what ISO or IMG are attached.... i dont' see any such info here... [root@environment-rm-01 /repository]# fstat -p `pgrep bhyve` USER CMD PID FD MOUNT INUM MODE SZ|DV R/W root bhyve 4212 text / 1044852 -r-xr-xr-x 318469 r root bhyve 4212 ctty /dev 132 crw--w---- pts/3 rw root bhyve 4212 wd /repository 14 drwxr-xr-x 6 r root bhyve 4212 root / 2 drwxr-xr-x 1024 r root bhyve 4212 0 /dev 132 crw--w---- pts/3 rw root bhyve 4212 1 /dev 132 crw--w---- pts/3 rw root bhyve 4212 2 /dev 132 crw--w---- pts/3 rw root bhyve 4212 3 /dev 138 crw------- vmm/lin1 rw root bhyve 4212 4 /repository 34 -rw-r--r-- 10737418240 r= w root bhyve 4212 5 /dev 140 crw------- tap1 rw root bhyve 4212 6 /repository 45 -rw-r--r-- 652214272 rw root bhyve 4212 7 root bhyve 4212 8* pipe fffff80021dbf000 <-> fffff80021dbf160 0 rw root bhyve 4212 9* pipe fffff80021dbf160 <-> fffff80021dbf000 0 rw On Tue, Jan 14, 2014 at 5:54 PM, Markiyan Kushnir < markiyan.kushnir@gmail.com> wrote: > may be "fstat -p `pgrep bhyve`" would give you some info? > > -- > Markiyan > > 2014/1/14 Andrea Brancatelli : > > How should I see it with ps? > > > > [root@environment-rm-01 ~]# ps -aux | grep bhyve > > root 8814 2.4 0.0 4221912 60804 3 D+ 1:15PM 3:11.43 > > bhyve: lin3 (bhyve) > > root 6187 0.0 0.0 4221784 34900 0 D+ 11:09AM 0:52.81 > > bhyve: FreeBSD10.5RC5.img (bhyve) > > root 8863 0.0 0.0 18724 2156 4 S+ 1:22PM 0:00.00 > > grep bhyve > > root 8008 0.0 0.0 4221912 54324 2 D+ 12:50PM 0:48.50 > > bhyve: lin1 (bhyve) > > [root@environment-rm-01 ~]# cat /proc/6187/cmdline > > bhyve: FreeBSD10.5RC5.img > > > > I'm out of ideas... :) > > > > > > On Mon, Jan 13, 2014 at 8:29 PM, Peter Grehan > wrote: > > > >> Hi Andrea, > >> > >> Whats the command to list all the attached devices to a vm? > >>> > >> > >> The only way currently is to list the bhyve command line using ps. > >> > >> Any preferences for how you'd like to see this ? > >> > >> later, > >> > >> Peter. > >> > > > > > > > > -- > > > > > > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - > > FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo S= C31 > > ITALIA* > > _______________________________________________ > > freebsd-virtualization@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > > To unsubscribe, send any mail to " > freebsd-virtualization-unsubscribe@freebsd.org" > --=20 *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 ITALIA* From owner-freebsd-virtualization@FreeBSD.ORG Tue Jan 14 19:26:04 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 690E3DD9; Tue, 14 Jan 2014 19:26:04 +0000 (UTC) Received: from mx1.fisglobal.com (mx1.fisglobal.com [199.200.24.190]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2BBF516DA; Tue, 14 Jan 2014 19:26:03 +0000 (UTC) Received: from smarthost.fisglobal.com ([10.132.206.193]) by ltcfislmsgpa07.fnfis.com (8.14.5/8.14.5) with ESMTP id s0EJQ2ju004746 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT); Tue, 14 Jan 2014 13:26:02 -0600 Received: from THEMADHATTER (10.242.181.54) by smarthost.fisglobal.com (10.132.206.193) with Microsoft SMTP Server id 14.3.174.1; Tue, 14 Jan 2014 13:26:00 -0600 From: Sender: Devin Teske To: "'Andrea Brancatelli'" , "'Markiyan Kushnir'" References: <52D43E92.7020007@freebsd.org> In-Reply-To: Subject: RE: Bhyve infos about a vm Date: Tue, 14 Jan 2014 11:25:49 -0800 Message-ID: <073e01cf115e$6fa7a710$4ef6f530$@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 15.0 Thread-Index: AQIXpqobuEocMEL1JlqwqJy2RqJlggFUAlnNAf9CreoCJ28W7QHYJ4EWmbjYgTA= Content-Language: en-us X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.11.87, 1.0.14, 0.0.0000 definitions=2014-01-14_08:2014-01-14,2014-01-14,1970-01-01 signatures=0 Cc: 'Devin Teske' , freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jan 2014 19:26:04 -0000 > -----Original Message----- > From: Andrea Brancatelli [mailto:abrancatelli@schema31.it] > Sent: Tuesday, January 14, 2014 9:27 AM > To: Markiyan Kushnir > Cc: freebsd-virtualization@freebsd.org > Subject: Re: Bhyve infos about a vm >=20 > I don't think so. I'm interested in seeing what ISO or IMG are attached..= .. > i dont' see any such info here... >=20 mdconfig -lv ? --=20 Devin > [root@environment-rm-01 /repository]# fstat -p `pgrep bhyve` > USER CMD PID FD MOUNT INUM MODE SZ|DV R/W > root bhyve 4212 text / 1044852 -r-xr-xr-x 318469 r > root bhyve 4212 ctty /dev 132 crw--w---- pts/3 rw > root bhyve 4212 wd /repository 14 drwxr-xr-x 6 r > root bhyve 4212 root / 2 drwxr-xr-x 1024 r > root bhyve 4212 0 /dev 132 crw--w---- pts/3 rw > root bhyve 4212 1 /dev 132 crw--w---- pts/3 rw > root bhyve 4212 2 /dev 132 crw--w---- pts/3 rw > root bhyve 4212 3 /dev 138 crw------- vmm/lin1 rw > root bhyve 4212 4 /repository 34 -rw-r--r-- 10737418240= rw > root bhyve 4212 5 /dev 140 crw------- tap1 rw > root bhyve 4212 6 /repository 45 -rw-r--r-- 652214272 rw > root bhyve 4212 7 > root bhyve 4212 8* pipe fffff80021dbf000 <-> > fffff80021dbf160 0 rw > root bhyve 4212 9* pipe fffff80021dbf160 <-> > fffff80021dbf000 0 rw >=20 >=20 >=20 >=20 > On Tue, Jan 14, 2014 at 5:54 PM, Markiyan Kushnir < > markiyan.kushnir@gmail.com> wrote: >=20 > > may be "fstat -p `pgrep bhyve`" would give you some info? > > > > -- > > Markiyan > > > > 2014/1/14 Andrea Brancatelli : > > > How should I see it with ps? > > > > > > [root@environment-rm-01 ~]# ps -aux | grep bhyve > > > root 8814 2.4 0.0 4221912 60804 3 D+ 1:15PM 3:11.= 43 > > > bhyve: lin3 (bhyve) > > > root 6187 0.0 0.0 4221784 34900 0 D+ 11:09AM 0:52.= 81 > > > bhyve: FreeBSD10.5RC5.img (bhyve) > > > root 8863 0.0 0.0 18724 2156 4 S+ 1:22PM 0:00.= 00 > > > grep bhyve > > > root 8008 0.0 0.0 4221912 54324 2 D+ 12:50PM 0:48.= 50 > > > bhyve: lin1 (bhyve) > > > [root@environment-rm-01 ~]# cat /proc/6187/cmdline > > > bhyve: FreeBSD10.5RC5.img > > > > > > I'm out of ideas... :) > > > > > > > > > On Mon, Jan 13, 2014 at 8:29 PM, Peter Grehan > > wrote: > > > > > >> Hi Andrea, > > >> > > >> Whats the command to list all the attached devices to a vm? > > >>> > > >> > > >> The only way currently is to list the bhyve command line using ps. > > >> > > >> Any preferences for how you'd like to see this ? > > >> > > >> later, > > >> > > >> Peter. > > >> > > > > > > > > > > > > -- > > > > > > > > > > > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA > > > - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > > > > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo > > > SC31 > > > ITALIA* > > > _______________________________________________ > > > freebsd-virtualization@freebsd.org mailing list > > > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > > > To unsubscribe, send any mail to " > > freebsd-virtualization-unsubscribe@freebsd.org" > > >=20 >=20 >=20 > -- >=20 >=20 >=20 >=20 > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - > FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* >=20 > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 > ITALIA* > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to "freebsd-virtualization- > unsubscribe@freebsd.org" _____________ The information contained in this message is proprietary and/or confidentia= l. If you are not the intended recipient, please: (i) delete the message an= d all copies; (ii) do not disclose, distribute or use the message in any ma= nner; and (iii) notify the sender immediately. In addition, please be aware= that any message addressed to our domain is subject to archiving and revie= w by persons other than the intended recipient. Thank you. From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 09:08:07 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9A1F08EF for ; Wed, 15 Jan 2014 09:08:07 +0000 (UTC) Received: from mail-pb0-f49.google.com (mail-pb0-f49.google.com [209.85.160.49]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6427B1AB3 for ; Wed, 15 Jan 2014 09:08:07 +0000 (UTC) Received: by mail-pb0-f49.google.com with SMTP id up15so349918pbc.8 for ; Wed, 15 Jan 2014 01:08:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=GdOWrHPZzpipwMfSnYbiO0bzFnOBrqKo0UGqgjGWhjc=; b=T1T6H6yHgm9fNAiGP0glG3uBmdHqsO+oFLjRLJWFLIm1NEc6jOdQYrun525niE3obU 6KToM7JKUanQjhCyftU19glsXNpmHipjzS3hO+Pjzbc5DLX7iEm5F076nPW/jGGTRWnV e8awGa1AHbFjoqNjHfS35bVhflpXOzIPvT67HLQJJpu8Hk1jZrKjLwLb37fXpU2hM1bu ry+tIFXNRiuWyOuCnT200vDxoHUwnGOsu5d8NcH5YBTQxQEbit+Ahdse3c5GySaaqgDp N6VWalqIFMJGd23s5XEkk4DEPC5bw9ZMH/s/9xOwKLhWNqqeYa/QvYMgcjgmWR/aJg7H iFwg== X-Gm-Message-State: ALoCoQnnslI2Jj0sAHyGHJgCIA+/FAnnI/XJQsrShExDfVBr1WNnfEGxbU0jtCD6hcDTf3q/d4W9 MIME-Version: 1.0 X-Received: by 10.66.14.41 with SMTP id m9mr1092099pac.123.1389775337445; Wed, 15 Jan 2014 00:42:17 -0800 (PST) Received: by 10.68.176.5 with HTTP; Wed, 15 Jan 2014 00:42:17 -0800 (PST) X-Originating-IP: [2001:470:28:12b::3] In-Reply-To: <073e01cf115e$6fa7a710$4ef6f530$@FreeBSD.org> References: <52D43E92.7020007@freebsd.org> <073e01cf115e$6fa7a710$4ef6f530$@FreeBSD.org> Date: Wed, 15 Jan 2014 09:42:17 +0100 Message-ID: Subject: Re: Bhyve infos about a vm From: Andrea Brancatelli To: dteske@freebsd.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 09:08:07 -0000 Is this thread moving to a try and guess? :-) Btw, this one doesn't work either. [root@environment-rm-01 ~]# ps -ax | grep bhyve 7942 0 R+ 2:49.28 bhyve: lin1 (bhyve) 7980 2 S+ 0:00.00 grep bhyve [root@environment-rm-01 ~]# mdconfig -lv [root@environment-rm-01 ~]# On Tue, Jan 14, 2014 at 8:25 PM, wrote: > > > > -----Original Message----- > > From: Andrea Brancatelli [mailto:abrancatelli@schema31.it] > > Sent: Tuesday, January 14, 2014 9:27 AM > > To: Markiyan Kushnir > > Cc: freebsd-virtualization@freebsd.org > > Subject: Re: Bhyve infos about a vm > > > > I don't think so. I'm interested in seeing what ISO or IMG are > attached.... > > i dont' see any such info here... > > > > mdconfig -lv ? > -- > Devin > > > > [root@environment-rm-01 /repository]# fstat -p `pgrep bhyve` > > USER CMD PID FD MOUNT INUM MODE SZ|DV R/W > > root bhyve 4212 text / 1044852 -r-xr-xr-x 318469 r > > root bhyve 4212 ctty /dev 132 crw--w---- pts/3 rw > > root bhyve 4212 wd /repository 14 drwxr-xr-x 6 r > > root bhyve 4212 root / 2 drwxr-xr-x 1024 r > > root bhyve 4212 0 /dev 132 crw--w---- pts/3 rw > > root bhyve 4212 1 /dev 132 crw--w---- pts/3 rw > > root bhyve 4212 2 /dev 132 crw--w---- pts/3 rw > > root bhyve 4212 3 /dev 138 crw------- vmm/lin1 rw > > root bhyve 4212 4 /repository 34 -rw-r--r-- > 10737418240 rw > > root bhyve 4212 5 /dev 140 crw------- tap1 rw > > root bhyve 4212 6 /repository 45 -rw-r--r-- 652214272 > rw > > root bhyve 4212 7 > > root bhyve 4212 8* pipe fffff80021dbf000 <-> > > fffff80021dbf160 0 rw > > root bhyve 4212 9* pipe fffff80021dbf160 <-> > > fffff80021dbf000 0 rw > > > > > > > > > > On Tue, Jan 14, 2014 at 5:54 PM, Markiyan Kushnir < > > markiyan.kushnir@gmail.com> wrote: > > > > > may be "fstat -p `pgrep bhyve`" would give you some info? > > > > > > -- > > > Markiyan > > > > > > 2014/1/14 Andrea Brancatelli : > > > > How should I see it with ps? > > > > > > > > [root@environment-rm-01 ~]# ps -aux | grep bhyve > > > > root 8814 2.4 0.0 4221912 60804 3 D+ 1:15PM > 3:11.43 > > > > bhyve: lin3 (bhyve) > > > > root 6187 0.0 0.0 4221784 34900 0 D+ 11:09AM > 0:52.81 > > > > bhyve: FreeBSD10.5RC5.img (bhyve) > > > > root 8863 0.0 0.0 18724 2156 4 S+ 1:22PM > 0:00.00 > > > > grep bhyve > > > > root 8008 0.0 0.0 4221912 54324 2 D+ 12:50PM > 0:48.50 > > > > bhyve: lin1 (bhyve) > > > > [root@environment-rm-01 ~]# cat /proc/6187/cmdline > > > > bhyve: FreeBSD10.5RC5.img > > > > > > > > I'm out of ideas... :) > > > > > > > > > > > > On Mon, Jan 13, 2014 at 8:29 PM, Peter Grehan > > > wrote: > > > > > > > >> Hi Andrea, > > > >> > > > >> Whats the command to list all the attached devices to a vm? > > > >>> > > > >> > > > >> The only way currently is to list the bhyve command line using ps= . > > > >> > > > >> Any preferences for how you'd like to see this ? > > > >> > > > >> later, > > > >> > > > >> Peter. > > > >> > > > > > > > > > > > > > > > > -- > > > > > > > > > > > > > > > > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROM= A > > > > - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > > > > > > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Grup= po > > > > SC31 > > > > ITALIA* > > > > _______________________________________________ > > > > freebsd-virtualization@freebsd.org mailing list > > > > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > > > > To unsubscribe, send any mail to " > > > freebsd-virtualization-unsubscribe@freebsd.org" > > > > > > > > > > > -- > > > > > > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - > > FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo S= C31 > > ITALIA* > > _______________________________________________ > > freebsd-virtualization@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > > To unsubscribe, send any mail to "freebsd-virtualization- > > unsubscribe@freebsd.org" > > _____________ > The information contained in this message is proprietary and/or > confidential. If you are not the intended recipient, please: (i) delete t= he > message and all copies; (ii) do not disclose, distribute or use the messa= ge > in any manner; and (iii) notify the sender immediately. In addition, plea= se > be aware that any message addressed to our domain is subject to archiving > and review by persons other than the intended recipient. Thank you. > --=20 *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 ITALIA* From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 12:05:39 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 28371522 for ; Wed, 15 Jan 2014 12:05:39 +0000 (UTC) Received: from plane.gmane.org (plane.gmane.org [80.91.229.3]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D2CEC1CB2 for ; Wed, 15 Jan 2014 12:05:38 +0000 (UTC) Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1W3PDv-00083p-LQ for freebsd-virtualization@freebsd.org; Wed, 15 Jan 2014 13:05:31 +0100 Received: from august.inf.tu-dresden.de ([141.76.48.124]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 15 Jan 2014 13:05:31 +0100 Received: from jsteckli by august.inf.tu-dresden.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 15 Jan 2014 13:05:31 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-virtualization@freebsd.org From: Julian Stecklina Subject: Re: KVM Clock Date: Wed, 15 Jan 2014 13:05:19 +0100 Lines: 47 Message-ID: References: <52D5623C.7060401@freebsd.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="CF8SEg4UHeJMcFVqIk6Lq4D6MecPdGQJN" X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: august.inf.tu-dresden.de User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 In-Reply-To: <52D5623C.7060401@freebsd.org> X-Enigmail-Version: 1.6 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 12:05:39 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --CF8SEg4UHeJMcFVqIk6Lq4D6MecPdGQJN Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 01/14/2014 05:13 PM, Peter Grehan wrote: > Hi Julian, >=20 >> is anyone working on KVM clock support for FreeBSD? If not, I might ta= ke >> a shot at it. >=20 > None I know of: go for it :) Works for me so far: https://github.com/blitz/freebsd/commit/cdc5f872b3e48cc0dda031fc7d6bdedc6= 5c3148f If anyone wants to test this, use any recent qemu with KVM: wget http://os.inf.tu-dresden.de/~jsteckli/tmp/mfsbsd-kvmclock.iso qemu-kvm -m 1024 -cdrom mfsbsd-kvmclock.iso. and watch for KVM-style paravirtualized clock detected. Timecounter "KVMCLOCK" frequency 1000000000 Hz quality 1000 in the kernel log. Julian --CF8SEg4UHeJMcFVqIk6Lq4D6MecPdGQJN Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlLWeYIACgkQ2EtjUdW3H9n3jACglY4DPiAnfoZB+97ORaf3GXFr R8sAn10A6QIR9BTnjX7IuhPXfFBmYrHK =N2Gt -----END PGP SIGNATURE----- --CF8SEg4UHeJMcFVqIk6Lq4D6MecPdGQJN-- From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 12:30:01 2014 Return-Path: Delivered-To: freebsd-virtualization@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6F804E32 for ; Wed, 15 Jan 2014 12:30:01 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5AB2D1EB6 for ; Wed, 15 Jan 2014 12:30:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id s0FCU1Qw052304 for ; Wed, 15 Jan 2014 12:30:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id s0FCU1Yj052303; Wed, 15 Jan 2014 12:30:01 GMT (envelope-from gnats) Date: Wed, 15 Jan 2014 12:30:01 GMT Message-Id: <201401151230.s0FCU1Yj052303@freefall.freebsd.org> To: freebsd-virtualization@FreeBSD.org Cc: From: Palle Girgensohn Subject: Re: kern/160496: [vimage] [pf] [patch] kernel panic with pf + VIMAGE X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Palle Girgensohn List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 12:30:01 -0000 The following reply was made to PR kern/160496; it has been noted by GNATS. From: Palle Girgensohn To: bug-followup@FreeBSD.org, nvass@gmx.com Cc: Subject: Re: kern/160496: [vimage] [pf] [patch] kernel panic with pf + VIMAGE Date: Wed, 15 Jan 2014 13:24:58 +0100 --Apple-Mail=_0AF661AA-10BE-4E8F-A460-648B9867AC5C Content-Type: multipart/alternative; boundary="Apple-Mail=_F5700297-1D9F-4E52-A8A0-9A9AE6C7BB15" --Apple-Mail=_F5700297-1D9F-4E52-A8A0-9A9AE6C7BB15 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii hi, code is much altered since this patch was made, but the problem still = exist. Here's what I get every night at exactly 04:01. pfctl does something = then. it seems it is enough that pf module is loaded. kernel config: include GENERIC =20 cpu HAMMER ident CUCUMBER =20 # Firewalling #device pf #device pflog =20 # Virtual networking for jail #nooptions SCTP # 8.0-RELEASE does not support SCTP with = VIMAGE options VIMAGE #device epair #device if_bridge =20 # The nullFS to mount local directory options NULLFS options IPSEC #IP security options IPSEC_NAT_T options IPSEC_DEBUG #debug for IP security device crypto --Apple-Mail=_F5700297-1D9F-4E52-A8A0-9A9AE6C7BB15 Content-Type: multipart/related; type="text/html"; boundary="Apple-Mail=_928F42A7-33ED-4BCB-BCC9-1A1368AEB651" --Apple-Mail=_928F42A7-33ED-4BCB-BCC9-1A1368AEB651 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii hi,

code is much altered since = this patch was made, but the problem still = exist.

Here's what I get every night at exactly = 04:01. pfctl does something then. it seems it is enough that pf module = is loaded.

<= br>

kernel = config:

include GENERIC
 
cpu   =           HAMMER
ident       =     CUCUMBER
 
# Firewalling
#device   =        pf
#device         =  pflog
 
# Virtual networking for jail
#nooptions =       SCTP        # 8.0-RELEASE does = not support SCTP with VIMAGE
options         = VIMAGE
#device          epair
#device =          if_bridge
 
# The nullFS to = mount local directory
options         = NULLFS

options IPSEC #IP = security
options = IPSEC_NAT_T
options IPSEC_DEBUG  #debug = for IP security
device = crypto


= --Apple-Mail=_928F42A7-33ED-4BCB-BCC9-1A1368AEB651 Content-Transfer-Encoding: base64 Content-Disposition: inline; filename*=iso-8859-1''Sk%E4rmavbild%202014%2D01%2D15%20kl.%2013.05.51.png Content-Type: image/png; x-mac-hide-extension=yes; x-unix-mode=0644; name="=?iso-8859-1?Q?Sk=E4rmavbild_2014-01-15_kl=2E_13=2E05=2E51=2Epng?=" Content-Id: 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 Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRm OkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8v bnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4x MDU4PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9u Pjc5NTwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8 L3JkZjpSREY+CjwveDp4bXBtZXRhPgoRWI4yAABAAElEQVR4Aeydu89kV1bFaWOQhrclQAiBQI4Q kKBJkUicEtohoTsktEPI7D/BTsl6UjI7QYjMk6ERSY9AIIEAtXmDeA2/71vdiz373HvrVtWt+uqx TnD7nH322XvtdZ51bn1dz773ve/9wIr0R3/0R9/4xjd+9Vd/9X/+539QX9lqheGLUHn27Bk4fvAH f/A73/nOv//7v//Wb/3WGlh//ud//kM/9EM//dM/LTZujJM1DJxCR33B8+///u//67/+65d/+ZfX eLnt8bmGgYN1Dhv8B7t7qoZff/31n/3Zn/3VX/3VP/3TP01i+Imf+Ilf+IVf+JVf+ZV33nlnUuEY IePzj//4j7/73e/+3M/93Pvvv/8bv/Ebx1hL2/Mz8LTj5/zxntRjlutN6L2TpXsTrmLkCRl4OF6v OR//xV/8xZ/+6Z/+zM/8DDvxj//4jz8h4hO5/ud//meOIH/3d3/367/+67/0S7+0xss//MM//O3f /u2P/uiPckD54R/+4TVNorOGgf/8z//kLPiv//qvP/uzP/tTP/VTa5rc/PhcQ8LBOgcM/oN9PVXD //3f/2Vc8cGVzCSGt956i1sDJjKZSYUI75mBjJ8Nez/L9VZk3sPSvRVXsfNUDDxb8xkDcP/93//9 l3/5l9zf/83f/M2//du/PRXc0/n9kR/5ES4auTv/xV/8xbfffnuNIzaef/zHf+TDxr/8y79wfFnT JDprGOC092M/9mN8wPjJn/zJlWe+mx+fa3g7WOeAwX+wrzQMA2HgzhnIcr3VAMjSvRWTsXM6Bta+ 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 TkSuQmCC --Apple-Mail=_928F42A7-33ED-4BCB-BCC9-1A1368AEB651-- --Apple-Mail=_F5700297-1D9F-4E52-A8A0-9A9AE6C7BB15-- --Apple-Mail=_0AF661AA-10BE-4E8F-A460-648B9867AC5C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - http://gpgtools.org iQEcBAEBAgAGBQJS1n4aAAoJEIhV+7FrxBJDrVwH/R3se9l65AK+z+FLo5mEZ0mF TE90YQJKVn7qlciu021ZldeAO02rf14x7jqNoFp9MuZPk3k4iIbxSWiuiATftMBD mgscpynYQmZConyZzKF+VlV8CwNanOeMjpWaRfu4KhyyPW0rUpQ4gs6DYaHvRLLA wCYG+CMJPTtBbGpZZC0cK+E58ssW6f+rv8yZsSHKZLfr8kiIFZsWBsGSqYCK7L74 3y+Kv23sD2XkcLP6VCq3ocGLgK9UQKI0+vAszD/rK5D0JUMn1uBXnIHo6i0+UQFg aZahDiKimn8ZcidJ/h7yzEFfNHnyzUEvpQ3AuyIKi+yu4YvVVKs8QsKxDP2qrr8= =A3ji -----END PGP SIGNATURE----- --Apple-Mail=_0AF661AA-10BE-4E8F-A460-648B9867AC5C-- From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 13:08:12 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5CBFED3D for ; Wed, 15 Jan 2014 13:08:12 +0000 (UTC) Received: from SMTP.CITRIX.COM (smtp.citrix.com [66.165.176.89]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 975DE11DC for ; Wed, 15 Jan 2014 13:08:10 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,663,1384300800"; d="scan'208";a="93066476" Received: from accessns.citrite.net (HELO FTLPEX01CL01.citrite.net) ([10.9.154.239]) by FTLPIPO01.CITRIX.COM with ESMTP; 15 Jan 2014 13:08:02 +0000 Received: from [IPv6:::1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.78) with Microsoft SMTP Server id 14.2.342.4; Wed, 15 Jan 2014 08:08:02 -0500 Message-ID: <52D68831.2000503@citrix.com> Date: Wed, 15 Jan 2014 14:08:01 +0100 From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Julian Stecklina , Subject: Re: KVM Clock References: <52D5623C.7060401@freebsd.org> In-Reply-To: X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-DLP: MIA2 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 13:08:12 -0000 On 15/01/14 13:05, Julian Stecklina wrote: > On 01/14/2014 05:13 PM, Peter Grehan wrote: >> Hi Julian, >> >>> is anyone working on KVM clock support for FreeBSD? If not, I >>> might take a shot at it. >> >> None I know of: go for it :) > > Works for me so far: > https://github.com/blitz/freebsd/commit/cdc5f872b3e48cc0dda031fc7d6bdedc65c3148f Looking > at the code it seems some common routines could be shared between the KVM PV clock and the Xen PV clock (sys/dev/xen/timer/timer.c). The data passed from the hypervisor to the guest has exactly the same format (see struct vcpu_time_info in Xen public headers). At a first sight the KVM clock can benefit from using scale_delta (which is going to be faster than the C version implemented in kvmclock_get_timecount), and xen_fetch_vcpu_tinfo is exactly the same as kvmclock_fetch. Roger. From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 13:45:37 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B53AF5D4 for ; Wed, 15 Jan 2014 13:45:37 +0000 (UTC) Received: from os.inf.tu-dresden.de (os.inf.tu-dresden.de [IPv6:2002:8d4c:3001:48::99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 790CF14FE for ; Wed, 15 Jan 2014 13:45:37 +0000 (UTC) Received: from [178.5.117.7] (helo=[192.168.178.35]) by os.inf.tu-dresden.de with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.82) id 1W3Qmk-0006xJ-Et; Wed, 15 Jan 2014 14:45:34 +0100 Message-ID: <1389793530.2668.13.camel@janus.xn--pl-wia.net> Subject: Re: KVM Clock From: Julian Stecklina To: Roger Pau =?ISO-8859-1?Q?Monn=E9?= Date: Wed, 15 Jan 2014 14:45:30 +0100 In-Reply-To: <52D68831.2000503@citrix.com> References: <52D5623C.7060401@freebsd.org> <52D68831.2000503@citrix.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.3 (3.10.3-1.fc20) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 13:45:37 -0000 On Mi, 2014-01-15 at 14:08 +0100, Roger Pau Monné wrote: > On 15/01/14 13:05, Julian Stecklina wrote: > > On 01/14/2014 05:13 PM, Peter Grehan wrote: > >> Hi Julian, > >> > >>> is anyone working on KVM clock support for FreeBSD? If not, I > >>> might take a shot at it. > >> > >> None I know of: go for it :) > > > > Works for me so far: > > https://github.com/blitz/freebsd/commit/cdc5f872b3e48cc0dda031fc7d6bdedc65c3148f > > Looking > > > at the code it seems some common routines could be shared > between the KVM PV clock and the Xen PV clock > (sys/dev/xen/timer/timer.c). The data passed from the hypervisor to > the guest has exactly the same format (see struct vcpu_time_info in > Xen public headers). Yes, I know. Didn't get around to making it pretty yesterday evening. ;) I'll post an updated patch, when I have some time. Any suggestions where to put the two common functions? > At a first sight the KVM clock can benefit from using scale_delta > (which is going to be faster than the C version implemented in > kvmclock_get_timecount), At least somewhat on amd64. 32-bit looks pretty identical. > and xen_fetch_vcpu_tinfo is exactly the same > as kvmclock_fetch. I think xen_fetch_vcpu_tinfo has a subtle bug: 217 do { 218 dst->version = src->version; 219 rmb(); 220 dst->tsc_timestamp = src->tsc_timestamp; 221 dst->system_time = src->system_time; 222 dst->tsc_to_system_mul = src->tsc_to_system_mul; 223 dst->tsc_shift = src->tsc_shift; 224 rmb(); 225 } while ((src->version & 1) | (dst->version ^ src->version)); In line 225 src->version is potentially read twice. If you consider the following schedule: host starts updating data, sets src->version to 1 guest reads src->version (1) and stores it into dst->version. guest copies inconsistent data guest reads src->version (1) and computes xor with dst->version. host finishes updating data and sets src->version to 2 guest reads src->version (2) and checks whether lower bit is not set. while loop exits with inconsistent data! I think the C standard (at least C11) permits this as it does not specify in which order the two reads in line 225 need to happen. Julian From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 16:04:40 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 40D9EDAA for ; Wed, 15 Jan 2014 16:04:40 +0000 (UTC) Received: from SMTP02.CITRIX.COM (smtp02.citrix.com [66.165.176.63]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8C2C61311 for ; Wed, 15 Jan 2014 16:04:38 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,663,1384300800"; d="scan'208";a="91018095" Received: from accessns.citrite.net (HELO FTLPEX01CL02.citrite.net) ([10.9.154.239]) by FTLPIPO02.CITRIX.COM with ESMTP; 15 Jan 2014 16:04:31 +0000 Received: from [IPv6:::1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.79) with Microsoft SMTP Server id 14.2.342.4; Wed, 15 Jan 2014 11:04:30 -0500 Message-ID: <52D6B18D.4080204@citrix.com> Date: Wed, 15 Jan 2014 17:04:29 +0100 From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Julian Stecklina Subject: Re: KVM Clock References: <52D5623C.7060401@freebsd.org> <52D68831.2000503@citrix.com> <1389793530.2668.13.camel@janus.xn--pl-wia.net> In-Reply-To: <1389793530.2668.13.camel@janus.xn--pl-wia.net> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-DLP: MIA1 Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 16:04:40 -0000 On 15/01/14 14:45, Julian Stecklina wrote: > On Mi, 2014-01-15 at 14:08 +0100, Roger Pau Monné wrote: >> On 15/01/14 13:05, Julian Stecklina wrote: >>> On 01/14/2014 05:13 PM, Peter Grehan wrote: >>>> Hi Julian, >>>> >>>>> is anyone working on KVM clock support for FreeBSD? If not, I >>>>> might take a shot at it. >>>> >>>> None I know of: go for it :) >>> >>> Works for me so far: >>> https://github.com/blitz/freebsd/commit/cdc5f872b3e48cc0dda031fc7d6bdedc65c3148f >> >> Looking >>> >> at the code it seems some common routines could be shared >> between the KVM PV clock and the Xen PV clock >> (sys/dev/xen/timer/timer.c). The data passed from the hypervisor to >> the guest has exactly the same format (see struct vcpu_time_info in >> Xen public headers). > > Yes, I know. Didn't get around to making it pretty yesterday evening. ;) > I'll post an updated patch, when I have some time. Any suggestions where > to put the two common functions? > >> At a first sight the KVM clock can benefit from using scale_delta >> (which is going to be faster than the C version implemented in >> kvmclock_get_timecount), > > At least somewhat on amd64. 32-bit looks pretty identical. > >> and xen_fetch_vcpu_tinfo is exactly the same >> as kvmclock_fetch. > > I think xen_fetch_vcpu_tinfo has a subtle bug: > 217 do { > 218 dst->version = src->version; > 219 rmb(); > 220 dst->tsc_timestamp = src->tsc_timestamp; > 221 dst->system_time = src->system_time; > 222 dst->tsc_to_system_mul = src->tsc_to_system_mul; > 223 dst->tsc_shift = src->tsc_shift; > 224 rmb(); > 225 } while ((src->version & 1) | (dst->version ^ > src->version)); > > In line 225 src->version is potentially read twice. If you consider the > following schedule: > > host starts updating data, sets src->version to 1 > guest reads src->version (1) and stores it into dst->version. > guest copies inconsistent data > guest reads src->version (1) and computes xor with dst->version. > host finishes updating data and sets src->version to 2 > guest reads src->version (2) and checks whether lower bit is not set. > while loop exits with inconsistent data! > > I think the C standard (at least C11) permits this as it does not > specify in which order the two reads in line 225 need to happen. According to the operator precedence and associativity in C (http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence), if I'm reading it right, the condition in the while line will be evaluated as follows (because of the left-to-right associativity of the | operator): 1. (src->version & 1) 2. (dst->version ^ src->version) 3. result of 1 | result of 2 So AFAICT the flow that you describe could never happen, because (src->version & 1) is always done before (dst->version ^ src->version). Roger. From owner-freebsd-virtualization@FreeBSD.ORG Wed Jan 15 16:59:25 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 077C21DD for ; Wed, 15 Jan 2014 16:59:25 +0000 (UTC) Received: from os.inf.tu-dresden.de (os.inf.tu-dresden.de [IPv6:2002:8d4c:3001:48::99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BE57019DE for ; Wed, 15 Jan 2014 16:59:24 +0000 (UTC) Received: from [178.5.117.7] (helo=[192.168.178.35]) by os.inf.tu-dresden.de with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.82) id 1W3ToB-0004rh-RX; Wed, 15 Jan 2014 17:59:16 +0100 Message-ID: <1389805150.16498.18.camel@janus.xn--pl-wia.net> Subject: Re: KVM Clock From: Julian Stecklina To: Roger Pau =?ISO-8859-1?Q?Monn=E9?= Date: Wed, 15 Jan 2014 17:59:10 +0100 In-Reply-To: <52D6B18D.4080204@citrix.com> References: <52D5623C.7060401@freebsd.org> <52D68831.2000503@citrix.com> <1389793530.2668.13.camel@janus.xn--pl-wia.net> <52D6B18D.4080204@citrix.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.3 (3.10.3-1.fc20) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jan 2014 16:59:25 -0000 On Mi, 2014-01-15 at 17:04 +0100, Roger Pau Monné wrote: > On 15/01/14 14:45, Julian Stecklina wrote: > > On Mi, 2014-01-15 at 14:08 +0100, Roger Pau Monné wrote: > >> On 15/01/14 13:05, Julian Stecklina wrote: > >>> On 01/14/2014 05:13 PM, Peter Grehan wrote: > >>>> Hi Julian, > >>>> > >>>>> is anyone working on KVM clock support for FreeBSD? If not, I > >>>>> might take a shot at it. > >>>> > >>>> None I know of: go for it :) > >>> > >>> Works for me so far: > >>> https://github.com/blitz/freebsd/commit/cdc5f872b3e48cc0dda031fc7d6bdedc65c3148f > >> > >> Looking > >>> > >> at the code it seems some common routines could be shared > >> between the KVM PV clock and the Xen PV clock > >> (sys/dev/xen/timer/timer.c). The data passed from the hypervisor to > >> the guest has exactly the same format (see struct vcpu_time_info in > >> Xen public headers). > > > > Yes, I know. Didn't get around to making it pretty yesterday evening. ;) > > I'll post an updated patch, when I have some time. Any suggestions where > > to put the two common functions? > > > >> At a first sight the KVM clock can benefit from using scale_delta > >> (which is going to be faster than the C version implemented in > >> kvmclock_get_timecount), > > > > At least somewhat on amd64. 32-bit looks pretty identical. > > > >> and xen_fetch_vcpu_tinfo is exactly the same > >> as kvmclock_fetch. > > > > I think xen_fetch_vcpu_tinfo has a subtle bug: > > 217 do { > > 218 dst->version = src->version; > > 219 rmb(); > > 220 dst->tsc_timestamp = src->tsc_timestamp; > > 221 dst->system_time = src->system_time; > > 222 dst->tsc_to_system_mul = src->tsc_to_system_mul; > > 223 dst->tsc_shift = src->tsc_shift; > > 224 rmb(); > > 225 } while ((src->version & 1) | (dst->version ^ > > src->version)); > > > > In line 225 src->version is potentially read twice. If you consider the > > following schedule: > > > > host starts updating data, sets src->version to 1 > > guest reads src->version (1) and stores it into dst->version. > > guest copies inconsistent data > > guest reads src->version (1) and computes xor with dst->version. > > host finishes updating data and sets src->version to 2 > > guest reads src->version (2) and checks whether lower bit is not set. > > while loop exits with inconsistent data! > > > > I think the C standard (at least C11) permits this as it does not > > specify in which order the two reads in line 225 need to happen. > > According to the operator precedence and associativity in C > (http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence), > if I'm reading it right, the condition in the while line will be > evaluated as follows (because of the left-to-right associativity of the > | operator): > > 1. (src->version & 1) > 2. (dst->version ^ src->version) > 3. result of 1 | result of 2 > > So AFAICT the flow that you describe could never happen, because > (src->version & 1) is always done before (dst->version ^ src->version). Operator precedence doesn't matter. Consider it written like this: or(and(src->version, 1), xor(dst->version, src->version)) C gives you no guarantees whether the and or the xor will be executed first. There is no sequence point in between. And even with a sequence point, the C11 memory model gives you no guarantees about how the reads are ordered. This discussion is somewhat theoretical, because a) the hypervisor will probably update the data structure in the current vCPU context (making memory consistency issues go away). b) the compiler will likely not be an asshole. ;) Pseudocode for a better fetch could be: dst->version = src->version; rmb(); ... read data ... rmb(); version_post = src->version; rmb(); <- keeps the compiler from reading src->version multiple times and then doing the test with version_post and dst->version. Unfortunately, rmb() expands into lfence, even if there is no need for that here. Regards, Julian From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 08:33:17 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 51845D1A; Thu, 16 Jan 2014 08:33:17 +0000 (UTC) Received: from mx1.cksoft.de (mx1.cksoft.de [IPv6:2001:67c:24f8:1::25:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 06E261CB4; Thu, 16 Jan 2014 08:33:16 +0000 (UTC) Received: from m.cksoft.de (unknown [IPv6:2003:41:c010:8001::143:1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.cksoft.de (Postfix) with ESMTP id 3FC202EBBE1; Thu, 16 Jan 2014 09:33:14 +0100 (CET) Received: from amavis.ahti.cksoft.de (unknown [IPv6:fdfe:5560:83f7:8001::143:2]) by m.cksoft.de (Postfix) with ESMTP id AD6EFECFDE; Thu, 16 Jan 2014 09:33:13 +0100 (CET) X-Virus-Scanned: amavisd-new at cksoft.de Received: from m.cksoft.de ([IPv6:fdfe:5560:83f7:8001::143:1]) by amavis.ahti.cksoft.de (amavis.ahti.cksoft.de [fdfe:5560:83f7:8001::143:2]) (amavisd-new, port 10024) with ESMTP id UX-bimg-g74o; Thu, 16 Jan 2014 09:33:10 +0100 (CET) Received: from pohjola.cksoft.de (unknown [IPv6:fdfe:5560:83f7:8001:c48c:ed95:b9b1:8fa8]) by m.cksoft.de (Postfix) with ESMTP id 8EABDECFD8; Thu, 16 Jan 2014 09:33:10 +0100 (CET) Received: by pohjola.cksoft.de (Postfix, from userid 1000) id 3249FD78E4; Thu, 16 Jan 2014 09:33:10 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by pohjola.cksoft.de (Postfix) with ESMTP id 2E01FD78DE; Thu, 16 Jan 2014 09:33:10 +0100 (CET) Date: Thu, 16 Jan 2014 09:33:10 +0100 (CET) From: Christian Kratzer X-X-Sender: ck@pohjola.cksoft.de To: Howard Leadmon Subject: RE: FreeBSD 10 under QEMU-KVM Issues.. In-Reply-To: <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> Message-ID: References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) X-Spammer-Kill-Ratio: 75% MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: 'Glen Barber' , freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Christian Kratzer List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 08:33:17 -0000 Hi, On Mon, 13 Jan 2014, Howard Leadmon wrote: > It is currently under CentOS 6.4, and sending a -version to qemu-kvm gives > me the following: > > QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003-2008 > Fabrice Bellard In case it matters I have several 10.0-RC4 and 10.0-RC5 VMs running just fine under KVM on CentOS 6.5 [ck@kvm1 ~]$ /usr/libexec/qemu-kvm -version QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2), Copyright (c) 2003-2008 Fabrice Bellard [ck@kvm1 ~]$ rpm -q -a | grep qemu-kvm qemu-kvm-0.12.1.2-2.415.el6_5.3.x86_64 [ck@kvm1 ~]$ uname -a Linux kvm1.cksoft.de 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [ck@kvm1 ~]$ cat /etc/redhat-release CentOS release 6.5 (Final) Greetings Christian -- Christian Kratzer CK Software GmbH Email: ck@cksoft.de Wildberger Weg 24/2 Phone: +49 7032 893 997 - 0 D-71126 Gaeufelden Fax: +49 7032 893 997 - 9 HRB 245288, Amtsgericht Stuttgart Web: http://www.cksoft.de/ Geschaeftsfuehrer: Christian Kratzer From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 10:14:22 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A3471E06 for ; Thu, 16 Jan 2014 10:14:22 +0000 (UTC) Received: from mail.leadmon.net (mail.leadmon.net [IPv6:2001:550:102:301::13]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3BE6015D0 for ; Thu, 16 Jan 2014 10:14:22 +0000 (UTC) Received: from HDLDESKTOP (hdl-desktop.leadmon.net [10.0.0.3]) (authenticated bits=0) by mail.leadmon.net (8.14.7/8.14.7/Blacklist) with ESMTP id s0GAEHKK025676 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 16 Jan 2014 05:14:17 -0500 (EST) (envelope-from howard@leadmon.net) DKIM-Filter: OpenDKIM Filter v2.8.3 mail.leadmon.net s0GAEHKK025676 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leadmon.net; s=default; t=1389867257; bh=XrP5nFaFTIYwiozef+IOKOaI5O73H23kM6CSncly2Q8=; h=From:To:Cc:References:In-Reply-To:Subject:Date; b=m0RK36LBpRh51T5iZzhy1edxWnE19d0QL/mmO2OWedp8HAPw4mkHjkliTe5wbmy7n S44U6DaY/WlIAbUrYVC0sU0i3Uuf+YLqDxwTUV0qAK0MNbpc9+lAXU05eFc7bdRZIg xL7Dfl2+qddoXPGg/TfqytZbVWiOQP3L/UPTXtmo= From: "Howard Leadmon" To: "'Christian Kratzer'" References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> In-Reply-To: Subject: RE: FreeBSD 10 under QEMU-KVM Issues.. Date: Thu, 16 Jan 2014 05:14:14 -0500 Message-ID: <020601cf12a3$b733d3b0$259b7b10$@leadmon.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQDrAw7RVkMxatUGNbox98U4MBE/JgBNACBIAvXGxy0CTiM0j5wiuGgQ Content-Language: en-us X-Virus-Scanned: clamav-milter 0.98 at vorlon.leadmon.net X-Virus-Status: Clean Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 10:14:22 -0000 > -----Original Message----- > From: Christian Kratzer [mailto:ck-lists@cksoft.de] > > In case it matters I have several 10.0-RC4 and 10.0-RC5 VMs running just fine > under KVM on CentOS 6.5 Can you let me know what virt-install options you used to accomplish this? Outside of that, I am guessing the only diff might be that we are on different hardware. All prior FBSD's are fine, in fact I have a 9.2-STABLE running just great on the server, but 10 is saying no way. I am trying to load with the following: virt-install --connect qemu:///system -n FBSD-10_vm1 -r 4096 --vcpus=2 --disk path=/dev/vg_virtual/FBSD-10_vm1 -c /images/FreeBSD-10.0-RC5-amd64-disc1.iso --graphics vnc,port=5920,listen=0.0.0.0 --noautoconsole --os-variant freebsd8 --accelerate --network=bridge:br0 --network=bridge:br1 --- Howard Leadmon From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 10:31:46 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D18882FB for ; Thu, 16 Jan 2014 10:31:46 +0000 (UTC) Received: from mx1.cksoft.de (mx1.cksoft.de [IPv6:2001:67c:24f8:1::25:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 86A6C17C9 for ; Thu, 16 Jan 2014 10:31:46 +0000 (UTC) Received: from m.cksoft.de (unknown [IPv6:2003:41:c010:8001::143:1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.cksoft.de (Postfix) with ESMTP id 3B6DB2EBBEA; Thu, 16 Jan 2014 11:31:45 +0100 (CET) Received: from amavis.ahti.cksoft.de (unknown [IPv6:fdfe:5560:83f7:8001::143:2]) by m.cksoft.de (Postfix) with ESMTP id ABA0CECFD8; Thu, 16 Jan 2014 11:31:44 +0100 (CET) X-Virus-Scanned: amavisd-new at cksoft.de Received: from m.cksoft.de ([IPv6:fdfe:5560:83f7:8001::143:1]) by amavis.ahti.cksoft.de (amavis.ahti.cksoft.de [fdfe:5560:83f7:8001::143:2]) (amavisd-new, port 10024) with ESMTP id eONscxl5HeZD; Thu, 16 Jan 2014 11:31:42 +0100 (CET) Received: from pohjola.cksoft.de (unknown [IPv6:fdfe:5560:83f7:8001:c48c:ed95:b9b1:8fa8]) by m.cksoft.de (Postfix) with ESMTP id 1F983ECFCA; Thu, 16 Jan 2014 11:31:42 +0100 (CET) Received: by pohjola.cksoft.de (Postfix, from userid 1000) id D060BD78E4; Thu, 16 Jan 2014 11:31:41 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by pohjola.cksoft.de (Postfix) with ESMTP id CC2C1D78DE; Thu, 16 Jan 2014 11:31:41 +0100 (CET) Date: Thu, 16 Jan 2014 11:31:41 +0100 (CET) From: Christian Kratzer X-X-Sender: ck@pohjola.cksoft.de To: Howard Leadmon Subject: RE: FreeBSD 10 under QEMU-KVM Issues.. In-Reply-To: <020601cf12a3$b733d3b0$259b7b10$@leadmon.net> Message-ID: References: <008b01cf10bc$7f45ca50$7dd15ef0$@leadmon.net> <20140114002336.GQ1742@glenbarber.us> <009c01cf10bf$79f2b1a0$6dd814e0$@leadmon.net> <020601cf12a3$b733d3b0$259b7b10$@leadmon.net> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) X-Spammer-Kill-Ratio: 75% MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Christian Kratzer List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 10:31:46 -0000 Hi, On Thu, 16 Jan 2014, Howard Leadmon wrote: > >> -----Original Message----- >> From: Christian Kratzer [mailto:ck-lists@cksoft.de] >> >> In case it matters I have several 10.0-RC4 and 10.0-RC5 VMs running just > fine >> under KVM on CentOS 6.5 > > > Can you let me know what virt-install options you used to accomplish this? > Outside of that, I am guessing the only diff might be that we are on > different hardware. All prior FBSD's are fine, in fact I have a 9.2-STABLE > running just great on the server, but 10 is saying no way. > > > I am trying to load with the following: > > virt-install --connect qemu:///system -n FBSD-10_vm1 -r 4096 --vcpus=2 > --disk path=/dev/vg_virtual/FBSD-10_vm1 -c > /images/FreeBSD-10.0-RC5-amd64-disc1.iso --graphics > vnc,port=5920,listen=0.0.0.0 --noautoconsole --os-variant freebsd8 > --accelerate --network=bridge:br0 --network=bridge:br1 Not sure as I used the graphical virt-manager UI to setup the VM. I am travelling today but will try your command tomorrow when I am back in the office. In the meantime you can check my kvm-qemu config file at following url: http://www.cksoft.de/paste/cf8b56213ad158c7275d998d526f641014d2c05f/kvmbsd1.xml Still new to kvm so in case you need something specific please feel free to point me where to look. Greetings Christian -- Christian Kratzer CK Software GmbH Email: ck@cksoft.de Wildberger Weg 24/2 Phone: +49 7032 893 997 - 0 D-71126 Gaeufelden Fax: +49 7032 893 997 - 9 HRB 245288, Amtsgericht Stuttgart Web: http://www.cksoft.de/ Geschaeftsfuehrer: Christian Kratzer From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 13:54:40 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E025C610 for ; Thu, 16 Jan 2014 13:54:39 +0000 (UTC) Received: from mail-pd0-f175.google.com (mail-pd0-f175.google.com [209.85.192.175]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B74F31EE9 for ; Thu, 16 Jan 2014 13:54:39 +0000 (UTC) Received: by mail-pd0-f175.google.com with SMTP id r10so2599199pdi.6 for ; Thu, 16 Jan 2014 05:54:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type; bh=EhWdBlF0HN5gg22L+k8zHcZl4nSE9XkOlqgrGVRxlaM=; b=STUxXmvs/9Jyi+sh3XYI6zg9qSL/+oknNYLZ43vJmUqx90TzefHEq+dyNXK8n8Uxqn N7DO3IrnpLs5AohYuzonEtoe2BErZe8OD/PRhkUNJKLC7SC0p0/M60eAk2HWLXdSQoaJ JFpAnAtW/1TgErtFkxB7yxnrgp/MDnZZRXvO3EjYW3Vl0y/NfuJiUb++FTFm9CrUDbjd LhFMHyr4hZ2+7OKcPbWwA+KAo1LPnQaeJpv8mNOC8VBlrgJPqXIocPHOkZ6v04cp4ZhS he1iJ3cJNrh+PCagmfqg8u5iWl9PXCKWRlzVk1EiKnv8s7zubcMCSHl9IwCIuQGD3lqM CXQw== X-Gm-Message-State: ALoCoQnskPwEq3ulJYnxK9rTdC1Ghhz1AM5NHsXab9FHrm837QGXIxjKosxUUiqXw9Ok/Oa3Yaua MIME-Version: 1.0 X-Received: by 10.66.142.42 with SMTP id rt10mr10033626pab.1.1389880047807; Thu, 16 Jan 2014 05:47:27 -0800 (PST) Received: by 10.68.176.5 with HTTP; Thu, 16 Jan 2014 05:47:27 -0800 (PST) X-Originating-IP: [2001:470:28:12b::3] Date: Thu, 16 Jan 2014 14:47:27 +0100 Message-ID: Subject: BHyVe as non root From: Andrea Brancatelli To: "freebsd-virtualization@freebsd.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 13:54:40 -0000 Hello, do you see any particolar problem (devices who need to have the owner changed, limitations of any kind...?) in running BHyVe as non-root? --=20 *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 ITALIA* From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 16:41:59 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B71C6A31 for ; Thu, 16 Jan 2014 16:41:59 +0000 (UTC) Received: from mail-wi0-x22e.google.com (mail-wi0-x22e.google.com [IPv6:2a00:1450:400c:c05::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4F8C11ECB for ; Thu, 16 Jan 2014 16:41:59 +0000 (UTC) Received: by mail-wi0-f174.google.com with SMTP id g10so5910655wiw.7 for ; Thu, 16 Jan 2014 08:41:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=from:content-type:content-transfer-encoding:subject:message-id:date :to:mime-version; bh=uoEzRfkB8GbVVDRTYfd8aILolNTxLdPWJQ/F84xuV8A=; b=xamOpwUt5D2uIbpgDeZN72J8+vWSNth5BeqFoe331yTBKTbyaR5DGxEGrFxzlwNrWN wx+dAT2RwdgpsPmOPbfn2CkcAdw6za/vNTGaHOfXdW6Uh6jAVbhx9AFuxG42BJ0mnOM3 nfN6T1dyyCgX+AHnGaUbmyQy5+qnFF7saZ0xoc5U7ysyvexcmjS5FhZ0boGquGLwO2gH +vL0sV5iEtsaNJ0JG/kOsit9ETMoT/3CgAtnFQ9OM8fzUWR55cOsa4G1JwvstCmJGaXN LCQil3NN4MlmOqBwoR8AHTD/RxiRsJkxF5XZrBp4n6ThlwZ9OtKeF4P60cji6jemcBpl jtqw== X-Received: by 10.194.185.205 with SMTP id fe13mr9443623wjc.23.1389890517474; Thu, 16 Jan 2014 08:41:57 -0800 (PST) Received: from [10.0.1.109] (21.199-241-81.adsl-dyn.isp.belgacom.be. [81.241.199.21]) by mx.google.com with ESMTPSA id ci4sm6749113wjc.21.2014.01.16.08.41.56 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 16 Jan 2014 08:41:57 -0800 (PST) From: Sydney Meyer Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: Xen PVHVM with FreeBSD10 Guest Message-Id: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> Date: Thu, 16 Jan 2014 17:41:55 +0100 To: freebsd-virtualization@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) X-Mailer: Apple Mail (2.1827) X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 16:41:59 -0000 Hello everyone, does someone know how to check if the paravirtualized I/O drivers from = Xen are loaded/working in FreeBSD 10? To my understanding it isn't = necessary anymore to compile a custom kernel with PVHVM enabled, right? = In /var/log/messages/ I can see the XN* and XBD* devices and the network = performance is very good (saturated Gb) compared to qemu-emulated, but = the disk performance is not as well, infact, it is even slower than = emulated with qemu (0.10.2). I did some test with dd and bonnie++, = turned caching on the host off and tried to directly sync to disk, = PVonHVM is averagely 15-20 % slower than QEMU at throughput. Both VM's = are running on the same host on a Xen 4.1 Hypervisor with QEMU 0.10.2 on = a Debian Linux 3.2 Kernel as Dom0.= From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 16:59:58 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 452C1436 for ; Thu, 16 Jan 2014 16:59:58 +0000 (UTC) Received: from SMTP02.CITRIX.COM (smtp02.citrix.com [66.165.176.63]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 91C4A1029 for ; Thu, 16 Jan 2014 16:59:56 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,668,1384300800"; d="scan'208";a="91449465" Received: from accessns.citrite.net (HELO FTLPEX01CL03.citrite.net) ([10.9.154.239]) by FTLPIPO02.CITRIX.COM with ESMTP; 16 Jan 2014 16:59:54 +0000 Received: from [IPv6:::1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.80) with Microsoft SMTP Server id 14.2.342.4; Thu, 16 Jan 2014 11:59:54 -0500 Message-ID: <52D81009.6050603@citrix.com> Date: Thu, 16 Jan 2014 17:59:53 +0100 From: =?ISO-8859-1?Q?Roger_Pau_Monn=E9?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Sydney Meyer , Subject: Re: Xen PVHVM with FreeBSD10 Guest References: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> In-Reply-To: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit X-DLP: MIA1 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 16:59:58 -0000 On 16/01/14 17:41, Sydney Meyer wrote: > Hello everyone, > > does someone know how to check if the paravirtualized I/O drivers from Xen are loaded/working in FreeBSD 10? To my understanding it isn't necessary anymore to compile a custom kernel with PVHVM enabled, right? In /var/log/messages/ I can see the XN* and XBD* devices and the network performance is very good (saturated Gb) compared to qemu-emulated, but the disk performance is not as well, infact, it is even slower than emulated with qemu (0.10.2). I did some test with dd and bonnie++, turned caching on the host off and tried to directly sync to disk, PVonHVM is averagely 15-20 % slower than QEMU at throughput. Both VM's are running on the same host on a Xen 4.1 Hypervisor with QEMU 0.10.2 on a Debian Linux 3.2 Kernel as Dom0. PV drivers will be used automatically if Xen is detected. You should see something like this on dmesg: xn0: at device/vif/0 on xenbusb_front0 xn0: Ethernet address: 00:16:3e:47:d4:52 xenbusb_back0: on xenstore0 xn0: backend features: feature-sg feature-gso-tcp4 xbd0: 20480MB at device/vbd/51712 on xenbusb_front0 xbd0: features: flush, write_barrier xbd0: synchronize cache commands enabled. Are you using a raw file as a disk? Roger. From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 18:38:06 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BFFA1A1D for ; Thu, 16 Jan 2014 18:38:06 +0000 (UTC) Received: from mail-wi0-x22f.google.com (mail-wi0-x22f.google.com [IPv6:2a00:1450:400c:c05::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 526321A66 for ; Thu, 16 Jan 2014 18:38:06 +0000 (UTC) Received: by mail-wi0-f175.google.com with SMTP id hr1so4173824wib.14 for ; Thu, 16 Jan 2014 10:38:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; bh=BEdcnUrGG18A7TD1ieGbOC8shHFT7kz4U+wJKF5mK8o=; b=tynF3gPpgU0M0JzwX98lfk3Z/5N13qfhKZjy8OAcIRpNIy1G6jYJababs6+tJvhsIF 7aUM/qn1GMICSRQrYAWbwSnzUk7fUSVlPNMhVhcX8gBOHcpoMXNZVFiWuQiegKsKKHtB SbYxX1SNb3OZ2duFJowIf2QWYXYPE9QeejUVs0xrLSDViCMBZPxXqBKYOeDD6Z+RHdgR SCyCe6kNYhrcgnx2rtpgvammzCB2HGwirdNmjb9840MPOeiv9pX5ylucT9pNnBCb1hSl J/ZhibKSazD9CcByAwQHdFjTZXvHlQb9xjs9LNzHqEVmAvG8kElf2FolwZR4t3BKgm3g wzgw== X-Received: by 10.194.63.228 with SMTP id j4mr10157463wjs.34.1389897484058; Thu, 16 Jan 2014 10:38:04 -0800 (PST) Received: from [10.0.1.109] (21.199-241-81.adsl-dyn.isp.belgacom.be. [81.241.199.21]) by mx.google.com with ESMTPSA id w1sm4396669wix.1.2014.01.16.10.38.03 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 16 Jan 2014 10:38:03 -0800 (PST) Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: Xen PVHVM with FreeBSD10 Guest From: Sydney Meyer In-Reply-To: <51F93577-E5A2-4237-9EDD-A89DDA5FC428@gmail.com> Date: Thu, 16 Jan 2014 19:38:02 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> <52D81009.6050603@citrix.com> <51F93577-E5A2-4237-9EDD-A89DDA5FC428@gmail.com> To: freebsd-virtualization@freebsd.org X-Mailer: Apple Mail (2.1827) X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 18:38:06 -0000 Well then, thanks for the hint.. dmesg shows the following: Jan 16 18:22:30 bsd10 kernel: xn0: at = device/vif/0 on xenbusb_front0 Jan 16 18:22:30 bsd10 kernel: xn0: Ethernet address: 00:16:3e:df:1b:5a Jan 16 18:22:30 bsd10 kernel: xenbusb_back0: on = xenstore0 Jan 16 18:22:30 bsd10 kernel: xn0: backend features: feature-sg = feature-gso-tcp4 Jan 16 18:22:30 bsd10 kernel: xbd0: 8192MB at = device/vbd/768 on xenbusb_front0 Jan 16 18:22:30 bsd10 kernel: xbd0: attaching as ada0 Jan 16 18:22:30 bsd10 kernel: xbd0: features: flush, write_barrier Jan 16 18:22:30 bsd10 kernel: xbd0: synchronize cache commands enabled. Now i did some tests with raw images and the disk performs very well = (10-15% less than native throughput). Is this a known problem or maybe specific to this constellation? The Test System is running on a Haswell Intel Core i3 CPU (4310T) with = an Intel H81 Chipset. Cheers, Sydney. On 16.01.2014, at 18:06, Sydney Meyer = wrote: > No, the VMs are running on local LVM Volumes as Disk Backend. >=20 >> On 16 Jan 2014, at 17:59, Roger Pau Monn=E9 = wrote: >>=20 >>> On 16/01/14 17:41, Sydney Meyer wrote: >>> Hello everyone, >>>=20 >>> does someone know how to check if the paravirtualized I/O drivers = from Xen are loaded/working in FreeBSD 10? To my understanding it isn't = necessary anymore to compile a custom kernel with PVHVM enabled, right? = In /var/log/messages/ I can see the XN* and XBD* devices and the network = performance is very good (saturated Gb) compared to qemu-emulated, but = the disk performance is not as well, infact, it is even slower than = emulated with qemu (0.10.2). I did some test with dd and bonnie++, = turned caching on the host off and tried to directly sync to disk, = PVonHVM is averagely 15-20 % slower than QEMU at throughput. Both VM's = are running on the same host on a Xen 4.1 Hypervisor with QEMU 0.10.2 on = a Debian Linux 3.2 Kernel as Dom0. >>=20 >> PV drivers will be used automatically if Xen is detected. You should = see >> something like this on dmesg: >>=20 >> xn0: at device/vif/0 on xenbusb_front0 >> xn0: Ethernet address: 00:16:3e:47:d4:52 >> xenbusb_back0: on xenstore0 >> xn0: backend features: feature-sg feature-gso-tcp4 >> xbd0: 20480MB at device/vbd/51712 on = xenbusb_front0 >> xbd0: features: flush, write_barrier >> xbd0: synchronize cache commands enabled. >>=20 >> Are you using a raw file as a disk? >>=20 >> Roger. >>=20 From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 19:43:31 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B4C285BE for ; Thu, 16 Jan 2014 19:43:31 +0000 (UTC) Received: from mail-lb0-x236.google.com (mail-lb0-x236.google.com [IPv6:2a00:1450:4010:c04::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D1EC311FD for ; Thu, 16 Jan 2014 19:43:30 +0000 (UTC) Received: by mail-lb0-f182.google.com with SMTP id w7so1813134lbi.13 for ; Thu, 16 Jan 2014 11:43:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jsonified.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=QiGZbuwc9Y49GXFbdDJJfJr/77Wd1WRVmeBQmpgJwPs=; b=veCfWNKjqpopUXr5hNKDNLd1sZ91u6/Lop6W+/Czni717jrJIt1nO6V7en1bEsE/iJ 26trXgo+/StDBlMn5JMSGzeR4+eCesuVxZAYhAXGORku9XpczGW6Ujw1MOOy6SYqX9hc tFmcbFR0yDfP7Fiq2K4js0gl0WPFJFJqA8xIw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type:content-transfer-encoding; bh=QiGZbuwc9Y49GXFbdDJJfJr/77Wd1WRVmeBQmpgJwPs=; b=kR3eozsznpEF83hK1BMHF0gZGbUrPpLoTwOSnh0bxyRviY689XVMu0XqUVEWaZZnJu 7CzKABRh0d91Vymm6O06aAt1wEWqrqHxASWTTMA7gyAbBHzzOpPUjtb/2bibvKQ+6HHU 8CmOZO22MRdb/+E7e3rMDQ3Oa17P0ZuKOMdhxXQ5xUUNBDJa2Ab8NrFnjINjh2S82WG2 3URzwm+PQJuWk5R8caFUOrD+4vfgyLKYfh0DPM0+a9wBsPfqukFv3pLuLJucjXx/fRHf W9lfSWtyKj+a2DYUIY3TKqmvBt9OlkDDxW3fX3AeFfJn2G3ARIRNGz/RRFWq8pqpbjD6 M04w== X-Gm-Message-State: ALoCoQkjOJshFkbHPlwaFP7nx/QvCaAESewtIoEOzcoFUaTPXcyHJH6U1zNWVB2tpmHvSd+d4Gmc MIME-Version: 1.0 X-Received: by 10.152.36.8 with SMTP id m8mr5651333laj.24.1389901408545; Thu, 16 Jan 2014 11:43:28 -0800 (PST) Received: by 10.112.44.65 with HTTP; Thu, 16 Jan 2014 11:43:28 -0800 (PST) X-Originating-IP: [84.112.19.176] In-Reply-To: References: Date: Thu, 16 Jan 2014 20:43:28 +0100 Message-ID: Subject: Re: BHyVe as non root From: Dave Cottlehuber To: "freebsd-virtualization@freebsd.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 19:43:31 -0000 +1, very interested to hear about how this could be done. jailed bhyves eve= n ?? On 16 January 2014 14:47, Andrea Brancatelli wro= te: > Hello, > > do you see any particolar problem (devices who need to have the owner > changed, limitations of any kind...?) in running BHyVe as non-root? > > -- > > > > > *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - > FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* > > *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC3= 1 > ITALIA* > _______________________________________________ > freebsd-virtualization@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization > To unsubscribe, send any mail to "freebsd-virtualization-unsubscribe@free= bsd.org" From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 19:46:29 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 73A5C7EE for ; Thu, 16 Jan 2014 19:46:29 +0000 (UTC) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id 2F62E122A for ; Thu, 16 Jan 2014 19:46:29 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 5703E121D3; Fri, 17 Jan 2014 05:46:27 +1000 (EST) Received: from Peter-Grehans-MacBook-Pro-2.local ([64.245.0.210]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BRF27274 (AUTH peterg@ptree32.com.au); Fri, 17 Jan 2014 05:46:26 +1000 Message-ID: <52D83710.5020700@freebsd.org> Date: Thu, 16 Jan 2014 11:46:24 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Andrea Brancatelli Subject: Re: Bhyve infos about a vm References: <52D43E92.7020007@freebsd.org> <073e01cf115e$6fa7a710$4ef6f530$@FreeBSD.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 19:46:29 -0000 > Is this thread moving to a try and guess? :-) > > Btw, this one doesn't work either. > > [root@environment-rm-01 ~]# ps -ax | grep bhyve > 7942 0 R+ 2:49.28 bhyve: lin1 (bhyve) > 7980 2 S+ 0:00.00 grep bhyve > [root@environment-rm-01 ~]# mdconfig -lv > [root@environment-rm-01 ~]# I think the change done to call setproctitle() with the VM name wipes out the arguments :( We can put something into bhyvectl that can display the original command line. later, Peter. From owner-freebsd-virtualization@FreeBSD.ORG Thu Jan 16 21:21:15 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9C64885F for ; Thu, 16 Jan 2014 21:21:15 +0000 (UTC) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id 5D0731A78 for ; Thu, 16 Jan 2014 21:21:15 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 311A0121D9; Fri, 17 Jan 2014 07:21:13 +1000 (EST) Received: from Peter-Grehans-MacBook-Pro-2.local ([64.245.0.210]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BRF29826 (AUTH peterg@ptree32.com.au); Fri, 17 Jan 2014 07:21:12 +1000 Message-ID: <52D84D46.9070600@freebsd.org> Date: Thu, 16 Jan 2014 13:21:10 -0800 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Andrea Brancatelli Subject: Re: BHyVe as non root References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jan 2014 21:21:15 -0000 Hi Andrea, > do you see any particolar problem (devices who need to have the owner > changed, limitations of any kind...?) in running BHyVe as non-root? There's 2 issues - firstly, bhyve is new and hasn't had a lot of exposure. It's probably safest to restrict it to root for a while to avoid exposing non-root users to unforeseen security issues. Secondly, the current implementation doesn't tie all resource usage to a process. The split of bhyveload/bhyve allows VM memory to be tied to a memory object associated with the VM. This complicates the tracking system memory usage, which is usually done on a process basis. The fix for this, in progress, is to use a single process for a VM, and avoid a separate loading process. The goal is to allow non-root usage, but there's still a ways to go for that. later, Peter. From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 08:47:29 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 02914990 for ; Fri, 17 Jan 2014 08:47:29 +0000 (UTC) Received: from mail-qe0-f52.google.com (mail-qe0-f52.google.com [209.85.128.52]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B22491D4A for ; Fri, 17 Jan 2014 08:47:28 +0000 (UTC) Received: by mail-qe0-f52.google.com with SMTP id a11so1414518qen.39 for ; Fri, 17 Jan 2014 00:47:21 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=5wZM9+gP81VPOZDObEjw1cnSjOdSa99dMUOwr/c8MtA=; b=iDwhrV3kQLazBAgymCvaFRVuzsUIJ/tnhOykdQ3Uo1FbD993xQyVgYJCFM2bSGka1l KMU8NYndB+pDsb+YOcb5Z8mDGXepEbSCrl18ixG1E6VNTtZT0uBIU5Z7fXpve6GL428H DLL15kdMSF894ewkGO8RX6OxlSyEuGd6nfUnqddob7571PX2YhJd1c3Zz2NadWyToAER KYHEfHipRFPSjjgRcrRcAWqJMDd73kCS3dG9rqZ1cG4KRVs66ZybkM/2ZQ5FfK41//Jz EqOq80U+mRl6kpAINLOEIkvhGIti3gDudzzC7qZ86lVXMAa3/aowT12bRtDvf91yJJpF /Vhg== X-Gm-Message-State: ALoCoQleA61XMu5N/mK/eG65DGee+tDDPaBzE2UQPYWge9vZZmCXIcJ/jRtt45lQNpCFhEMMjuG0 MIME-Version: 1.0 X-Received: by 10.224.165.133 with SMTP id i5mr911249qay.75.1389948441580; Fri, 17 Jan 2014 00:47:21 -0800 (PST) Received: by 10.229.139.202 with HTTP; Fri, 17 Jan 2014 00:47:21 -0800 (PST) X-Originating-IP: [2001:470:28:12b::3] In-Reply-To: <52D84D46.9070600@freebsd.org> References: <52D84D46.9070600@freebsd.org> Date: Fri, 17 Jan 2014 09:47:21 +0100 Message-ID: Subject: Re: BHyVe as non root From: Andrea Brancatelli To: Peter Grehan Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 08:47:29 -0000 Thank you, you've been very clear. Let me know if I can help anyhow with future testings on this item - that's the only thing I can do to help :-) On Thu, Jan 16, 2014 at 10:21 PM, Peter Grehan wrote: > Hi Andrea, > > do you see any particolar problem (devices who need to have the owner >> changed, limitations of any kind...?) in running BHyVe as non-root? >> > > There's 2 issues - firstly, bhyve is new and hasn't had a lot of > exposure. It's probably safest to restrict it to root for a while to avoi= d > exposing non-root users to unforeseen security issues. > > Secondly, the current implementation doesn't tie all resource usage to a > process. The split of bhyveload/bhyve allows VM memory to be tied to a > memory object associated with the VM. This complicates the tracking syste= m > memory usage, which is usually done on a process basis. The fix for this, > in progress, is to use a single process for a VM, and avoid a separate > loading process. > > The goal is to allow non-root usage, but there's still a ways to go for > that. > > later, > > Peter. > --=20 *Andrea BrancatelliSchema 31 S.r.l. - Socio UnicoResponsabile ITROMA - FIRENZE - PALERMO ITALYTel: +39. 06.98.358.472* *Cell: +39 331.2488468Fax: +39. 055.71.880.466Societ=C3=A0 del Gruppo SC31 ITALIA* From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 09:08:28 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1BFB7C0B for ; Fri, 17 Jan 2014 09:08:28 +0000 (UTC) Received: from SMTP.CITRIX.COM (smtp.citrix.com [66.165.176.89]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 69E0D1E82 for ; Fri, 17 Jan 2014 09:08:26 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,670,1384300800"; d="scan'208";a="93789574" Received: from accessns.citrite.net (HELO FTLPEX01CL03.citrite.net) ([10.9.154.239]) by FTLPIPO01.CITRIX.COM with ESMTP; 17 Jan 2014 09:08:18 +0000 Received: from [IPv6:::1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.80) with Microsoft SMTP Server id 14.2.342.4; Fri, 17 Jan 2014 04:08:18 -0500 Message-ID: <52D8F301.2080701@citrix.com> Date: Fri, 17 Jan 2014 10:08:17 +0100 From: =?ISO-8859-1?Q?Roger_Pau_Monn=E9?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Sydney Meyer , Subject: Re: Xen PVHVM with FreeBSD10 Guest References: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> <52D81009.6050603@citrix.com> <51F93577-E5A2-4237-9EDD-A89DDA5FC428@gmail.com> In-Reply-To: X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit X-DLP: MIA2 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 09:08:28 -0000 On 16/01/14 19:38, Sydney Meyer wrote: > Well then, thanks for the hint.. dmesg shows the following: > > Jan 16 18:22:30 bsd10 kernel: xn0: at device/vif/0 on xenbusb_front0 > Jan 16 18:22:30 bsd10 kernel: xn0: Ethernet address: 00:16:3e:df:1b:5a > Jan 16 18:22:30 bsd10 kernel: xenbusb_back0: on xenstore0 > Jan 16 18:22:30 bsd10 kernel: xn0: backend features: feature-sg feature-gso-tcp4 > Jan 16 18:22:30 bsd10 kernel: xbd0: 8192MB at device/vbd/768 on xenbusb_front0 > Jan 16 18:22:30 bsd10 kernel: xbd0: attaching as ada0 > Jan 16 18:22:30 bsd10 kernel: xbd0: features: flush, write_barrier > Jan 16 18:22:30 bsd10 kernel: xbd0: synchronize cache commands enabled. > > Now i did some tests with raw images and the disk performs very well (10-15% less than native throughput). So the problem only manifest itself when using block devices as disk backends? I've done some tests with fio using direct=1 (and a LVM volume as the backend), and it shows that disk writes are slower when using PV drivers instead of the emulated ones. On the other hand disk reads are faster when using the PV drivers. Have you tried if the 9.x series also show the same behaviour? (you will have to compile the custom XENHVM kernel) Roger. From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 09:17:14 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DF532F78 for ; Fri, 17 Jan 2014 09:17:14 +0000 (UTC) Received: from mail-wg0-x22a.google.com (mail-wg0-x22a.google.com [IPv6:2a00:1450:400c:c00::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 733031F25 for ; Fri, 17 Jan 2014 09:17:14 +0000 (UTC) Received: by mail-wg0-f42.google.com with SMTP id l18so1541435wgh.1 for ; Fri, 17 Jan 2014 01:17:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; bh=ixj8QpGvgStiaCMvtWG278Scp4E2vTFLt2nSPuBncg0=; b=ePcHHGU9vVkMkomwpmBphed/Gj/laYYEE+o8aPZAN+P7mgeNZziW/bn3tTJseAmxlh IhvcTcADu1WDxd8AvmCuUd+hmJs6GVSsXQVlmKzb6m87IWysc31Xv2F++gFraDYtlAZq 6IWWHRb5B9vAxJ1slDQspi+1Nfu7gKpgeqCuzxsvTRCbYZVSRdO1NbP5QrWOwlvl21cd lyGroYNVcISYttt08qmheo1/2sP2o2PrsT9yxJdzGoj2eEiyuXG24Qxb+gtmyW7dQ+5h j6UHk9GupG6WOlGqB2N+MiS9ZSxk44NDtA1WMXIRW8fc8HiqKgnT+XcV4AAqZOcfl2LE g0nQ== X-Received: by 10.181.11.201 with SMTP id ek9mr1217816wid.54.1389950232830; Fri, 17 Jan 2014 01:17:12 -0800 (PST) Received: from [10.0.1.109] (21.199-241-81.adsl-dyn.isp.belgacom.be. [81.241.199.21]) by mx.google.com with ESMTPSA id j1sm2137397wic.9.2014.01.17.01.17.12 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 17 Jan 2014 01:17:12 -0800 (PST) Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: Xen PVHVM with FreeBSD10 Guest From: Sydney Meyer In-Reply-To: <52D8F301.2080701@citrix.com> Date: Fri, 17 Jan 2014 10:17:11 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> <52D81009.6050603@citrix.com> <51F93577-E5A2-4237-9EDD-A89DDA5FC428@gmail.com> <52D8F301.2080701@citrix.com> To: freebsd-virtualization@freebsd.org X-Mailer: Apple Mail (2.1827) X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 09:17:14 -0000 I=92m doing some benchmarks with bonnie and dd on the Variations = 9.2/10.0;PVHVM/VirtIO;fileio/blockio. I will post the results here to = this thread. On 17.01.2014, at 10:08, Roger Pau Monn=E9 wrote: > On 16/01/14 19:38, Sydney Meyer wrote: >> Well then, thanks for the hint.. dmesg shows the following: >>=20 >> Jan 16 18:22:30 bsd10 kernel: xn0: at = device/vif/0 on xenbusb_front0 >> Jan 16 18:22:30 bsd10 kernel: xn0: Ethernet address: = 00:16:3e:df:1b:5a >> Jan 16 18:22:30 bsd10 kernel: xenbusb_back0: on = xenstore0 >> Jan 16 18:22:30 bsd10 kernel: xn0: backend features: feature-sg = feature-gso-tcp4 >> Jan 16 18:22:30 bsd10 kernel: xbd0: 8192MB at = device/vbd/768 on xenbusb_front0 >> Jan 16 18:22:30 bsd10 kernel: xbd0: attaching as ada0 >> Jan 16 18:22:30 bsd10 kernel: xbd0: features: flush, write_barrier >> Jan 16 18:22:30 bsd10 kernel: xbd0: synchronize cache commands = enabled. >>=20 >> Now i did some tests with raw images and the disk performs very well = (10-15% less than native throughput). >=20 > So the problem only manifest itself when using block devices as disk > backends? >=20 > I've done some tests with fio using direct=3D1 (and a LVM volume as = the > backend), and it shows that disk writes are slower when using PV = drivers > instead of the emulated ones. On the other hand disk reads are faster > when using the PV drivers. Have you tried if the 9.x series also show > the same behaviour? (you will have to compile the custom XENHVM = kernel) >=20 > Roger. >=20 From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 11:20:18 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7E972790; Fri, 17 Jan 2014 11:20:18 +0000 (UTC) Received: from mail-pa0-x233.google.com (mail-pa0-x233.google.com [IPv6:2607:f8b0:400e:c03::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 528911830; Fri, 17 Jan 2014 11:20:18 +0000 (UTC) Received: by mail-pa0-f51.google.com with SMTP id ld10so1687583pab.38 for ; Fri, 17 Jan 2014 03:20:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=tDO4V0TTaqxErHOXSFnyIghd2/W6XcJS7dt9QDDZixQ=; b=TtKsmjH5ZEUQX7W1haDuB1FkyS20LDSV+etIWj7+poCAaTn7s+bY3DwodFIcJojpkV /E4ysoYdjuGRZGMfOXAtIifB8UsDuRRNp+ViBnzActqSV0xyUaf1n8YFnL49OmIuLUY0 fQJwgxauKykgM9qJ6VNA4gt81o+JTqS+RrxTiyWtfNTQIqwCkki3QnBW1rWD4CAwybub xuLOeKU8GhuLZmzpCzJdNYFl2VVCHYCpzxeK3bUGC58MxTBrxrUEGF43II+b5hmJ+PvT WOe0FOvdfYtOl9JnTQJOwLqZfoj16E+eFxvdJc4wxyCQsLbLzZ5xzTYAhg/Ubw68uHF7 M1eg== MIME-Version: 1.0 X-Received: by 10.66.179.143 with SMTP id dg15mr1561159pac.52.1389957617732; Fri, 17 Jan 2014 03:20:17 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 03:20:17 -0800 (PST) Date: Fri, 17 Jan 2014 06:20:17 -0500 Message-ID: Subject: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: "freebsd-virtualization@freebsd.org" , FreeBSD Mailing List Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 11:20:18 -0000 PetiteCloud is a HyperVisor frontend for BSD. It has the following features: * Support for bhyve and QEMU. * Any x86 OS as a guest (tested only on QEMU) * Install, import, start, stop and reboot instances safely (guest OS needs to be controlled independently) * Clone, backup/export, delete stopped instances 100% safely * Keep track of all your instances on one screen * All transactions that change instance state are password protected at all critical stages * A growing number of general purpose and specialized instances/applications are available for PetiteCloud What's new in 0.2.1: * QEMU support * Several bugs related to resource limits and the WebUI were fixed For more info see http://www.petitecloud.org P.S. Support for QEMU does not diminish our support for Bhyve. Our experience with QEMU in fact shows that Bhyve is on the right track. Note also that Bhyve is and will remain our prefered HyperVisor for testing PetiteCloud (PetiteCloud is developed on a PetiteCloud instance that uses Bhyve). We will be posting in the next few days a comparison between the two. We will also point out what features we feel Bhyve needs to compete with QEMU in all areas. -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 15:15:56 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 42A1C586 for ; Fri, 17 Jan 2014 15:15:56 +0000 (UTC) Received: from mail.ijs.si (mail.ijs.si [IPv6:2001:1470:ff80::25]) by mx1.freebsd.org (Postfix) with ESMTP id E727D1D13 for ; Fri, 17 Jan 2014 15:15:55 +0000 (UTC) Received: from amavis-proxy-ori.ijs.si (localhost [IPv6:::1]) by mail.ijs.si (Postfix) with ESMTP id 3f5Qp24nXXzGMr6 for ; Fri, 17 Jan 2014 16:15:54 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ijs.si; h= message-id:content-transfer-encoding:content-type:content-type :mime-version:in-reply-to:references:user-agent:date:date :subject:subject:organization:from:from:received:received :received; s=jakla2; t=1389971752; x=1392563753; bh=ZiIUfXTARMEV Vjar/TtuXzCXbMjOTEOsEc9muyP6VN8=; b=mQsD4qISSE/jt0bPwGNyf/BbEKCi J1bUjDe6Zt9A3ODR49XGcUv5VXXaALlB4JhKpP6GLD2B24akZgIOAfkqgByLvbby QHObpi+FG8OE5x+dPYMZ4uCeJhVRUccY1J7+KxlSjmCaMR3YAuu6Rxuqqvs0fPU+ z7pG4ni7pDnI/P0= X-Virus-Scanned: amavisd-new at ijs.si Received: from mail.ijs.si ([IPv6:::1]) by amavis-proxy-ori.ijs.si (mail.ijs.si [IPv6:::1]) (amavisd-new, port 10012) with ESMTP id WPHG0BCDf1Fq for ; Fri, 17 Jan 2014 16:15:52 +0100 (CET) Received: from mildred.ijs.si (mailbox.ijs.si [IPv6:2001:1470:ff80::143:1]) by mail.ijs.si (Postfix) with ESMTP for ; Fri, 17 Jan 2014 16:15:52 +0100 (CET) Received: from neli.ijs.si (neli.ijs.si [IPv6:2001:1470:ff80:88:21c:c0ff:feb1:8c91]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mildred.ijs.si (Postfix) with ESMTPSA id 54B233A2 for ; Fri, 17 Jan 2014 16:15:52 +0100 (CET) From: Mark Martinec Organization: J. Stefan Institute To: freebsd-virtualization@freebsd.org Subject: Re: emulators/petitecloud 0.2.1 available Date: Fri, 17 Jan 2014 16:15:51 +0100 User-Agent: KMail/1.13.7 (FreeBSD/9.2-STABLE; KDE/4.10.5; amd64; ; ) References: In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 15:15:56 -0000 > emulators/petitecloud 0.2.1 available > PetiteCloud is a HyperVisor frontend for BSD. That's very nice, thank you for your work! > For more info see http://www.petitecloud.org The domain petitecloud.org is still borked, reachability depends on luck. There is no glue record in parent domain (org.), ns1.fnwe.net and ns2.fnwe.net have no A or AAAA record (they are CNAMEs), etc. See: http://www.intodns.com/petitecloud.org http://www.dnsqueries.com/en/domain_check.php Mark From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 15:21:05 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F05DB773 for ; Fri, 17 Jan 2014 15:21:04 +0000 (UTC) Received: from mail-pa0-x22c.google.com (mail-pa0-x22c.google.com [IPv6:2607:f8b0:400e:c03::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C53391D67 for ; Fri, 17 Jan 2014 15:21:04 +0000 (UTC) Received: by mail-pa0-f44.google.com with SMTP id kq14so4263527pab.3 for ; Fri, 17 Jan 2014 07:21:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=jPDfaaJlRVXkecxMuJbsm2CSVIecw59xFT3nJGVGPlY=; b=kPkIm27qcW1wkrg9Oh0c5CCMqndGJgW4JizzD9D12HaqH06h4jNVaYKdEAc/AYh3Pv lU3QZhL8dJL7Azk6w+bR9we1QuQt9dBCdldnIqJ69jHe4OKpfTwZSAi9Dcl0GSlJRZ2L FNVh0vbIh+hOry75bflY0pKRQB0twrOCWPZ8MVTa9aNafH64UsO08ODD9ShxtNP9pnWB UR4tQpeqmx0CZQVLWWhnLoZBy11AqR8nhJhUFfHUsRQAvIw9iLH//0LU6ZxFgYnAosKl +MnNNLhRAw3ccHfVgNgLhJEOIyaSPvuFHRDiozW3431YPpaNSN9v36ZQj/yj5mulIyQt U7zQ== MIME-Version: 1.0 X-Received: by 10.66.192.74 with SMTP id he10mr2741466pac.126.1389972064398; Fri, 17 Jan 2014 07:21:04 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 07:21:04 -0800 (PST) In-Reply-To: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> Date: Fri, 17 Jan 2014 10:21:04 -0500 Message-ID: Subject: Re: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: Mark Martinec Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 15:21:05 -0000 On Fri, Jan 17, 2014 at 10:15 AM, Mark Martinec < Mark.Martinec+freebsd@ijs.si> wrote: > > emulators/petitecloud 0.2.1 available > > PetiteCloud is a HyperVisor frontend for BSD. > > That's very nice, thank you for your work! > Thanks for the words of encouragement they are much appreciated! > > > For more info see http://www.petitecloud.org > > The domain petitecloud.org is still borked, reachability depends on luck. > Thanks this confirms an issue someone else reported... will have it fixed in the next few hours. -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 15:31:26 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5DA149F8 for ; Fri, 17 Jan 2014 15:31:26 +0000 (UTC) Received: from mail-pd0-x233.google.com (mail-pd0-x233.google.com [IPv6:2607:f8b0:400e:c02::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 31D1D1E7B for ; Fri, 17 Jan 2014 15:31:26 +0000 (UTC) Received: by mail-pd0-f179.google.com with SMTP id q10so2067284pdj.24 for ; Fri, 17 Jan 2014 07:31:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=iIr12I5YgRdgD252pVWsBlLHIbP0Z8joOo/FHatLXe8=; b=QQZg0go3viESD8aM7CMrWtkN7bfJUNYgN1BSErv3lMYQzBIAF90U7yVrln4BItVjBq EYyimnMFrvzDFad4/HJGncmPB5oHfhb8xjGZMQno5qoZKqPeW2Yd7+QJuI1yY08IX8Ys 5Yu8izMXgiwUPOCOqEfKcGX2YV3s2r/9zoeWn6++b0xDnyHlX7EYLlo+uVEfe4YrQUVE SYYqhWllCrCxtXvj0FzDKMN8yvzh44UrI3BxMwEi//LTiEKC+SaVMwOfVzS8OO3Qc2lp UlTehDcxZJWlFg6qcZyg0sGCNpul4GSRSLnyiQOiLW/3zKaItQwkGn+fLpBPXiKqk4oJ xtpw== MIME-Version: 1.0 X-Received: by 10.68.230.137 with SMTP id sy9mr2803380pbc.126.1389972685811; Fri, 17 Jan 2014 07:31:25 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 07:31:25 -0800 (PST) In-Reply-To: References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> Date: Fri, 17 Jan 2014 10:31:25 -0500 Message-ID: Subject: Re: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: Mark Martinec Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 15:31:26 -0000 > Thanks this confirms an issue someone else reported... will have it fixed > in the next few hours. > I think I got it... turns out the records are right but since I used lower serial numbers then on older ones it took the older ones only... I have updated the serial to be yyyymmddxx form and this should work now. -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 15:38:33 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 495AEBE0 for ; Fri, 17 Jan 2014 15:38:33 +0000 (UTC) Received: from SMTP02.CITRIX.COM (smtp02.citrix.com [66.165.176.63]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 961DD1ED1 for ; Fri, 17 Jan 2014 15:38:32 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,674,1384300800"; d="scan'208";a="91802573" Received: from accessns.citrite.net (HELO FTLPEX01CL02.citrite.net) ([10.9.154.239]) by FTLPIPO02.CITRIX.COM with ESMTP; 17 Jan 2014 15:38:30 +0000 Received: from [IPv6:::1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.79) with Microsoft SMTP Server id 14.2.342.4; Fri, 17 Jan 2014 10:38:29 -0500 Message-ID: <52D94E74.8000401@citrix.com> Date: Fri, 17 Jan 2014 16:38:28 +0100 From: =?windows-1252?Q?Roger_Pau_Monn=E9?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Sydney Meyer , Subject: Re: Xen PVHVM with FreeBSD10 Guest References: <9DF57091-9957-452D-8A15-C2267F66ABEC@googlemail.com> <52D81009.6050603@citrix.com> <51F93577-E5A2-4237-9EDD-A89DDA5FC428@gmail.com> <52D8F301.2080701@citrix.com> In-Reply-To: X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 8bit X-DLP: MIA2 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 15:38:33 -0000 On 17/01/14 10:17, Sydney Meyer wrote: > I’m doing some benchmarks with bonnie and dd on the Variations 9.2/10.0;PVHVM/VirtIO;fileio/blockio. I will post the results here to this thread. By VirtIO I guess you mean emulated IO? That sounds great, I'm eager to see the results :) Roger. From owner-freebsd-virtualization@FreeBSD.ORG Fri Jan 17 17:53:52 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 80BD1A65 for ; Fri, 17 Jan 2014 17:53:52 +0000 (UTC) Received: from mail-pb0-x234.google.com (mail-pb0-x234.google.com [IPv6:2607:f8b0:400e:c01::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 522BD1A5A for ; Fri, 17 Jan 2014 17:53:52 +0000 (UTC) Received: by mail-pb0-f52.google.com with SMTP id jt11so2333209pbb.11 for ; Fri, 17 Jan 2014 09:53:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=E9Dzl7H+KlFXd/SZZBoe3BiLxG2zHjr4oHden9K4hhc=; b=rucHQap+Tyyd/zPwAcXRHZ7mQutIxn/XXU5KQLLhfoRfFVqDzDiZ8VHM7RgruW4oX4 BT0Z0DMPUjKLoEXBhBpNS+zqB25TLnxOVO3lziY1Xdt9LiCmeoHQNWdOn4CAsDbLYYxW /AegSbP4w3C1R/E61TQW8yeudoSQLaW9DQmONoSi7yAdvSjfT+cJodw3/OKZPcbsyOkL Ccspu4/iY6QlQ5490YsCryYjBgNOywbEp6qpClVnmhrIL01DGtgHDEu+wGwB1zIPT32K Tl9YMVvii2jDiIFoB8w5RJ/sgGb/XR4yNy2rR8Fd1B1hTUuuIf5MgBb2dj1GFZ3GX6FO l/IA== MIME-Version: 1.0 X-Received: by 10.68.43.101 with SMTP id v5mr3462732pbl.149.1389981231465; Fri, 17 Jan 2014 09:53:51 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 09:53:51 -0800 (PST) In-Reply-To: <275866C0-E379-48BE-BAAD-BF87A307A64E@tamu.edu> References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> <275866C0-E379-48BE-BAAD-BF87A307A64E@tamu.edu> Date: Fri, 17 Jan 2014 12:53:51 -0500 Message-ID: Subject: Re: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: Dave Duchscher , "freebsd-virtualization@freebsd.org" Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Jan 2014 17:53:52 -0000 The below is mostly fixed but the register refuses to update the nameservers since they are the same IP as fnwe.net On Fri, Jan 17, 2014 at 11:50 AM, Dave Duchscher wrote: > On Jan 17, 2014, at 9:31 AM, Aryeh Friedman > wrote: > > >> Thanks this confirms an issue someone else reported... will have it > fixed > >> in the next few hours. > >> > > > > I think I got it... turns out the records are right but since I used > lower > > serial numbers then on older ones it took the older ones only... I have > > updated the serial to be yyyymmddxx form and this should work now. > > -- > > Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org > > FYI, your registrar name server list is out of sync with your domain. > > Whois lists: > > NS1.FNWE.NET > NS2.FNWE.NET > > You domain now lists: > > cloud.PetiteCloud.org > > Also, mixing CNAMES with NS records is not a good idea. > > ns2.fnwe.net. 1787 IN CNAME cloud.fnwe.net. > cloud.fnwe.net. 1787 IN A 162.217.113.50 > > ns1.fnwe.net. 1454 IN CNAME cloud.FNWE.NET. > cloud.FNWE.NET. 1774 IN A 162.217.113.50 > > -- > DaveD > > -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Sat Jan 18 00:11:42 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2F96A117 for ; Sat, 18 Jan 2014 00:11:42 +0000 (UTC) Received: from mail.ijs.si (mail.ijs.si [IPv6:2001:1470:ff80::25]) by mx1.freebsd.org (Postfix) with ESMTP id D039A18C4 for ; Sat, 18 Jan 2014 00:11:41 +0000 (UTC) Received: from amavis-proxy-ori.ijs.si (localhost [IPv6:::1]) by mail.ijs.si (Postfix) with ESMTP id 3f5fhD42gHzGN2F for ; Sat, 18 Jan 2014 01:11:40 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ijs.si; h= user-agent:message-id:references:in-reply-to:organization :subject:subject:from:from:date:date:content-transfer-encoding :content-type:content-type:mime-version:received:received :received:received; s=jakla2; t=1390003897; x=1392595898; bh=Blm OC596EFua+q/990RBiNZx1biVa6sb7tdQnIOdpLg=; b=VXRpnv0qssfsl+nX0Sp q2ebckQIleFfaG8a8cBDvwAQifj0OTRZOPsb7/W3l6Rr4d+2O/u5kwMBE0R6spyF SYjY1RJaJOoR2xjwRxE5Sm4s0d5qfAvg6yh/JsOxQeNcFxqs1POLsQxIY481JBmq aSReu3I9pMK8eskx/qoTjTMw= X-Virus-Scanned: amavisd-new at ijs.si Received: from mail.ijs.si ([IPv6:::1]) by amavis-proxy-ori.ijs.si (mail.ijs.si [IPv6:::1]) (amavisd-new, port 10012) with ESMTP id S-5PwRVRQMa3 for ; Sat, 18 Jan 2014 01:11:37 +0100 (CET) Received: from mildred.ijs.si (mailbox.ijs.si [IPv6:2001:1470:ff80::143:1]) by mail.ijs.si (Postfix) with ESMTP for ; Sat, 18 Jan 2014 01:11:37 +0100 (CET) Received: from neli.ijs.si (neli.ijs.si [193.2.4.95]) by mildred.ijs.si (Postfix) with ESMTP id 90C572D3 for ; Sat, 18 Jan 2014 01:11:37 +0100 (CET) Received: from sleepy.ijs.si ([2001:1470:ff80:e001::1:1]) by neli.ijs.si with HTTP (HTTP/1.1 POST); Sat, 18 Jan 2014 01:11:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Date: Sat, 18 Jan 2014 01:11:37 +0100 From: Mark Martinec To: freebsd-virtualization@freebsd.org Subject: Re: emulators/petitecloud 0.2.1 available Organization: J. Stefan Institute In-Reply-To: References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> <275866C0-E379-48BE-BAAD-BF87A307A64E@tamu.edu> Message-ID: X-Sender: Mark.Martinec+freebsd@ijs.si User-Agent: Roundcube Webmail/0.9.5 X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Jan 2014 00:11:42 -0000 > http://www.PetiteCloud.org > --> http://www.petitecloud.org/downloads/port.tar.gz # make ===> src-petitecloud-aegis-0.2.1 depends on file: /usr/local/sbin/pkg - found => src-petitecloud-aegis-0.2.1.tar.gz doesn't seem to exist in /usr/ports/distfiles/. => Attempting to fetch ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src-petitecloud-aegis-0.2.1.tar.gz fetch: ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src-petitecloud-aegis-0.2.1.tar.gz: File unavailable (e.g., file not found, no access) There is no directory 'aegis' there, but there is an 'aryeh'. Also there is no src-petitecloud-aegis-0.2.1.tar.gz in it. URL should probably be: ftp://ftp.petitecloud.org/petitecloud/0.2.1/aryeh/src-petitecloud-aryeh-0.2.1.tar.gz Mark From owner-freebsd-virtualization@FreeBSD.ORG Sat Jan 18 00:25:58 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B74F83ED for ; Sat, 18 Jan 2014 00:25:58 +0000 (UTC) Received: from mail-pd0-x22f.google.com (mail-pd0-x22f.google.com [IPv6:2607:f8b0:400e:c02::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 86E6C197A for ; Sat, 18 Jan 2014 00:25:58 +0000 (UTC) Received: by mail-pd0-f175.google.com with SMTP id r10so4603603pdi.6 for ; Fri, 17 Jan 2014 16:25:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=nXY7gMVvp4RU+D4CWMxD0r72R5YGUzr+y+1rfPMdHPY=; b=rKryGTwkw310e/DPk8OCuJaJwWy26kEUqEmxiIa+f2QTB2p8S9EZ0IedKSFOpB/Mne MdUhMgzyynPBPYp6uQbsc3YXHHawTdR78ldEuyTYsF7/FlVpvrl0EInbeGp8tQYwFVTD m02u8fDfQPphM3S1zYyIqwZXu55HSbFtK5Om2gdEkMRCDcMy3ekvGM4HoGUd65d54SjU EVYO//7VbJKJN5xsJr8etWrejWHQRYIfxi29qL+vetKGCMH5alqt07FoCunRLbH8d9Qf PjbgLFbw4g5qUkeSGENfElm0okKwpOqdV+4z8ykASNdyi7i7wdu1H+E8LvWtFHrLgQWV Lxdw== MIME-Version: 1.0 X-Received: by 10.68.226.9 with SMTP id ro9mr5406061pbc.72.1390004758011; Fri, 17 Jan 2014 16:25:58 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 16:25:57 -0800 (PST) In-Reply-To: References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> <275866C0-E379-48BE-BAAD-BF87A307A64E@tamu.edu> Date: Fri, 17 Jan 2014 19:25:57 -0500 Message-ID: Subject: Re: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: Mark Martinec Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Jan 2014 00:25:58 -0000 On Fri, Jan 17, 2014 at 7:11 PM, Mark Martinec wrote: > http://www.PetiteCloud.org >> --> http://www.petitecloud.org/downloads/port.tar.gz >> > > # make > ===> src-petitecloud-aegis-0.2.1 depends on file: /usr/local/sbin/pkg - > found > => src-petitecloud-aegis-0.2.1.tar.gz doesn't seem to exist in > /usr/ports/distfiles/. > => Attempting to fetch > ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src- > petitecloud-aegis-0.2.1.tar.gz > fetch: ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src- > petitecloud-aegis-0.2.1.tar.gz: > File unavailable (e.g., file not found, no access) > > There is no directory 'aegis' there, but there is an 'aryeh'. > Also there is no src-petitecloud-aegis-0.2.1.tar.gz in it. > URL should probably be: > ftp://ftp.petitecloud.org/petitecloud/0.2.1/aryeh/src- > petitecloud-aryeh-0.2.1.tar.gz > > Will look into this... for now just use aegis... you will need to modify the Makefile... since the Makefile itself is autogenerated we will post new port files later tonight with the fix in them.... btw if you're interested in helping with development you will also need devel/aegis in addition to the port's dependencies -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org From owner-freebsd-virtualization@FreeBSD.ORG Sat Jan 18 02:36:28 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 51A01849 for ; Sat, 18 Jan 2014 02:36:28 +0000 (UTC) Received: from mail-pa0-x234.google.com (mail-pa0-x234.google.com [IPv6:2607:f8b0:400e:c03::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2157011EC for ; Sat, 18 Jan 2014 02:36:28 +0000 (UTC) Received: by mail-pa0-f52.google.com with SMTP id bj1so3370293pad.39 for ; Fri, 17 Jan 2014 18:36:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=f3mnjmzdd/j42RtVQAaYJHaNEs8gnjhindlyHDuUgC4=; b=NzdukgB2X4uUN+RylspZuVzxiRzYmiG+j3IEWiKY42gQSJvrYD1nZq3Vh+i+u7QXwF Op7YWZ9GHM38iNsGj2YPu3r+TJMMUulTdSqPk03jHvtvP7WRAGhol+iP/QkD77y47qoQ ZMDPCR+44wzIw34D7b1yKGsIkD8mrGXhUuiczQuVsPBFfx6DlXc0TlY76n/eUvA1Pdol f4RG0naD+3qNr3F8PWKwKKD6xb2ZByCjfatlQll8+kITrsumSQRuEN7N/AaYEwsCAWHL DTzPGCCIp5KgMh3hNFQAniu6VDa6im9XLcj1EZFbc79bz9XZ4ocemH5EGwzD5Ce5uLFl COVg== MIME-Version: 1.0 X-Received: by 10.68.197.99 with SMTP id it3mr5691238pbc.37.1390012587767; Fri, 17 Jan 2014 18:36:27 -0800 (PST) Received: by 10.68.185.130 with HTTP; Fri, 17 Jan 2014 18:36:27 -0800 (PST) In-Reply-To: References: <201401171615.51057.Mark.Martinec+freebsd@ijs.si> <275866C0-E379-48BE-BAAD-BF87A307A64E@tamu.edu> Date: Fri, 17 Jan 2014 21:36:27 -0500 Message-ID: Subject: Re: emulators/petitecloud 0.2.1 available From: Aryeh Friedman To: Mark Martinec Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Jan 2014 02:36:28 -0000 On Fri, Jan 17, 2014 at 7:25 PM, Aryeh Friedman wrote: > > > > On Fri, Jan 17, 2014 at 7:11 PM, Mark Martinec < > Mark.Martinec+freebsd@ijs.si> wrote: > >> http://www.PetiteCloud.org >>> --> http://www.petitecloud.org/downloads/port.tar.gz >>> >> >> # make >> ===> src-petitecloud-aegis-0.2.1 depends on file: /usr/local/sbin/pkg - >> found >> => src-petitecloud-aegis-0.2.1.tar.gz doesn't seem to exist in >> /usr/ports/distfiles/. >> => Attempting to fetch >> ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src- >> petitecloud-aegis-0.2.1.tar.gz >> fetch: ftp://ftp.petitecloud.org/petitecloud/0.2.1/aegis/src- >> petitecloud-aegis-0.2.1.tar.gz: >> File unavailable (e.g., file not found, no access) >> >> There is no directory 'aegis' there, but there is an 'aryeh'. >> Also there is no src-petitecloud-aegis-0.2.1.tar.gz in it. >> URL should probably be: >> ftp://ftp.petitecloud.org/petitecloud/0.2.1/aryeh/src- >> petitecloud-aryeh-0.2.1.tar.gz >> >> > Will look into this... for now just use aegis... you will need to modify > the Makefile... since the Makefile itself is autogenerated we will post new > port files later tonight with the fix in them.... btw if you're interested > in helping with development you will also need devel/aegis in addition to > the port's dependencies > > Fixed and posted new port files to petitecloud.org... side question should I update the PR for the port or create a new one? -- Aryeh M. Friedman, Lead Developer, http://www.PetiteCloud.org