Re: [Xen-devel] FreeBSD PVHVM call for testing

2013-05-28 Thread Konrad Rzeszutek Wilk
On Fri, May 24, 2013 at 03:21:54PM -0700, Craig Rodrigues wrote:
 On Fri, May 24, 2013 at 7:14 AM, Konrad Rzeszutek Wilk 
 konrad.w...@oracle.com wrote:
 
  On Thu, May 23, 2013 at 07:41:50PM +0200, Roger Pau Monné wrote:
   Hello,
  
   I've pushed a new branch, pvhvm_v10 that contains a PV IPI
   implementation for both amd64 and i386. I've also updated the wiki to
   point to the pvhvm_v10 branch:
 
  I feel a bit stupid to ask this, but how I install 'gmake'? Doing 'pkg_add
  -r gmake'
  tells me there is no package (perhaps I am using a too modern version of
  FreeBSD
  (FreeBSD-10.0-CURRENT-amd64-20130512-r250582-release.iso)?
 
  The Wiki mentions how to install git but that fails b/c it can't find
  gmake.
 
 
 For 10.0-CURRENT, not all the packages are available yet from the main
 FreeBSD.org ftp site.
 I am going through a similar setup issue with someone who has signed up for
 Google Summer of Code,
 and I need him to use close to the latest 10.0-CURRENT and have a usable
 system.
 
 I wrote this blog post for the student:
 http://blogs.freebsdish.org/rodrigc/2013/05/24/setting-up-a-vm-for-doing-gsoc-work/

Excellent! Thanks for the link.
___
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to freebsd-xen-unsubscr...@freebsd.org


Re: [Xen-devel] FreeBSD PVHVM call for testing

2013-05-28 Thread Colin Percival
On 05/28/13 12:18, Matt Wilson wrote:
 VCPUOP_set_singleshot_timer returns -EINVAL when:
 
 1) the specified vCPU ID is out of range (0 or MAX_VIRT_CPUS)
 2) the specified vCPU ID doesn't match the running vCPU.
 
 It seems that there is a confusion between the logical vCPU ID and the
 local APIC physical ID.
 [...]
 (XEN) Domain 1 (vcpu#16) VCPUOP_set_singleshot_timer specified vcpuid 1
 [...]
 APIC: CPU 1 has ACPI ID 16

Thanks Matt!  Looks like we need to pass our acpi_id to the Xen hypercall
instead of our cpuid.

Roger, changing the line
int cpu = PCPU_GET(cpuid);
to
int cpu = PCPU_GET(acpi_id);
in xentimer_et_start and xentimer_et_stop fixes this panic and gets me
slightly further; the following lines are now added to the console output
prior to the system appearing to hang:
 ioapic0: routing intpin 1 (ISA IRQ 1) to lapic 1 vector 48
 ioapic0: routing intpin 4 (ISA IRQ 4) to lapic 2 vector 48
 ioapic0: routing intpin 9 (ISA IRQ 9) to lapic 3 vector 48
 ioapic0: routing intpin 12 (ISA IRQ 12) to lapic 4 vector 48
 ioapic0: routing intpin 14 (ISA IRQ 14) to lapic 5 vector 48
 ioapic0: routing intpin 15 (ISA IRQ 15) to lapic 6 vector 48
 ioapic0: routing intpin 28 (PCI IRQ 28) to lapic 7 vector 48
 TSC timecounter discards lower 1 bit(s)
 Timecounter TSC-low frequency 1300024860 Hz quality -100
 WARNING: WITNESS option enabled, expect reduced performance.

On a cc2.8xlarge EC2 instance, the lines which come after this are
 GEOM: new disk xbd1
 GEOM: new disk xbd2
 GEOM: new disk xbd3
 GEOM: new disk xbd4
 Trying to mount root from ufs:/dev/ad0a [rw]...
 start_init: trying /sbin/init
and then the userland boot process; have you made any bug fixes after
your pvhvm_v7 which would explain why tasting disks was hanging?

-- 
Colin Percival
Security Officer Emeritus, FreeBSD | The power to serve
Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid

___
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to freebsd-xen-unsubscr...@freebsd.org


Re: [Xen-devel] FreeBSD PVHVM call for testing

2013-05-24 Thread Roger Pau Monné
On 24/05/13 16:14, Konrad Rzeszutek Wilk wrote:
 On Thu, May 23, 2013 at 07:41:50PM +0200, Roger Pau Monné wrote:
 Hello,

 I've pushed a new branch, pvhvm_v10 that contains a PV IPI
 implementation for both amd64 and i386. I've also updated the wiki to
 point to the pvhvm_v10 branch:
 
 I feel a bit stupid to ask this, but how I install 'gmake'? Doing 'pkg_add -r 
 gmake'
 tells me there is no package (perhaps I am using a too modern version of 
 FreeBSD
 (FreeBSD-10.0-CURRENT-amd64-20130512-r250582-release.iso)?
 
 The Wiki mentions how to install git but that fails b/c it can't find gmake.

Did you install the ports tree during the installation? If so I've
always successfully installed git using:

# whereis git
# cd output of above command
# make install

Maybe the ISO you picked as a broken ports snapshot?
___
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to freebsd-xen-unsubscr...@freebsd.org


Re: [Xen-devel] FreeBSD PVHVM call for testing

2013-05-22 Thread Roger Pau Monné
On 21/05/13 19:40, Konrad Rzeszutek Wilk wrote:
 On Mon, May 13, 2013 at 08:32:56PM +0200, Roger Pau Monné wrote:
 Hello,

 Recently Justin T Gibbs, Will Andrews and myself have been working on
 improving the Xen support in FreeBSD. The main goal of this was to bring
 full PVHVM support to FreeBSD, right now FreeBSD is only using PV
 interfaces for disk and network interfaces when running as a HVM guest.
 The main benefits of this changes are that Xen virtual interrupts (event
 channels) are now delivered to the guest using a vector callback
 injection, that is a per-cpu mechanism that allows each vCPU to have
 different interrupts assigned, so for example network and disk
 interrupts are delivered to different vCPUs in order to improve
 performance. With this changes FreeBSD also uses PV timers when running
 as an HVM guest, which should provide better time keeping and reduce the
 virtualization overhead, since emulated timers are no longer used. PV
 IPIs can also be used inside a HVM guest, but this will be implemented
 later.

 Right now the code is in a state where it can be tested by users, so we
 would like to encourage FreeBSD and Xen users to test it and provide
 feedback.

 The code is available in the following git repository, under the branch
 pvhvm_v5:

 http://xenbits.xen.org/gitweb/?p=people/royger/freebsd.git;a=summary

 Also, I've created a wiki page that explains how to set up a FreeBSD
 PVHVM for testing:

 http://wiki.xen.org/wiki/Testing_FreeBSD_PVHVM
 
 I tried on my Linux box to do this:
 
 
 HEAD is now at 9b25356... xen-netfront: fix detach of network interfaces
 konrad@phenom:~/git/freebsd$ make kernel-toolchain  make buildkernel 
 KERNCONF=XENHVM  make installkernel KERNCONF=XENHVM
 Makefile:123: *** missing separator.  Stop.
 
 
 As I thought it would compile the same way you can compile NetBSD - that is
 even on non-BSD distros. Is that not the case? Should I only do this under
 a FreeBSD guest?

I have never tried to run the FreeBSD build system under something
different than FreeBSD, also keep in mind that installkernel will place
a bunch of FreeBSD files on your Linux box if you manage to run it. The
error itself can probably be fixed by installing and using BSD make
(bmake), but anyway you need a FreeBSD HVM DomU in order to test the
kernel, so why not do the compilation on it?

___
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to freebsd-xen-unsubscr...@freebsd.org


Re: [Xen-devel] FreeBSD PVHVM call for testing

2013-05-22 Thread Konrad Rzeszutek Wilk
On Wed, May 22, 2013 at 01:41:02PM +0200, Roger Pau Monné wrote:
 On 21/05/13 19:40, Konrad Rzeszutek Wilk wrote:
  On Mon, May 13, 2013 at 08:32:56PM +0200, Roger Pau Monné wrote:
  Hello,
 
  Recently Justin T Gibbs, Will Andrews and myself have been working on
  improving the Xen support in FreeBSD. The main goal of this was to bring
  full PVHVM support to FreeBSD, right now FreeBSD is only using PV
  interfaces for disk and network interfaces when running as a HVM guest.
  The main benefits of this changes are that Xen virtual interrupts (event
  channels) are now delivered to the guest using a vector callback
  injection, that is a per-cpu mechanism that allows each vCPU to have
  different interrupts assigned, so for example network and disk
  interrupts are delivered to different vCPUs in order to improve
  performance. With this changes FreeBSD also uses PV timers when running
  as an HVM guest, which should provide better time keeping and reduce the
  virtualization overhead, since emulated timers are no longer used. PV
  IPIs can also be used inside a HVM guest, but this will be implemented
  later.
 
  Right now the code is in a state where it can be tested by users, so we
  would like to encourage FreeBSD and Xen users to test it and provide
  feedback.
 
  The code is available in the following git repository, under the branch
  pvhvm_v5:
 
  http://xenbits.xen.org/gitweb/?p=people/royger/freebsd.git;a=summary
 
  Also, I've created a wiki page that explains how to set up a FreeBSD
  PVHVM for testing:
 
  http://wiki.xen.org/wiki/Testing_FreeBSD_PVHVM
  
  I tried on my Linux box to do this:
  
  
  HEAD is now at 9b25356... xen-netfront: fix detach of network interfaces
  konrad@phenom:~/git/freebsd$ make kernel-toolchain  make buildkernel 
  KERNCONF=XENHVM  make installkernel KERNCONF=XENHVM
  Makefile:123: *** missing separator.  Stop.
  
  
  As I thought it would compile the same way you can compile NetBSD - that is
  even on non-BSD distros. Is that not the case? Should I only do this under
  a FreeBSD guest?
 
 I have never tried to run the FreeBSD build system under something
 different than FreeBSD, also keep in mind that installkernel will place
 a bunch of FreeBSD files on your Linux box if you manage to run it. The
 error itself can probably be fixed by installing and using BSD make
 (bmake), but anyway you need a FreeBSD HVM DomU in order to test the
 kernel, so why not do the compilation on it?

Oh, sure. Just thought that the NetBSD method (which also allows one
to build the kernel and the iso) was the same on FreeBSd. Will of course
install first the HVM domU and do it again.
 
___
freebsd-xen@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-xen
To unsubscribe, send any mail to freebsd-xen-unsubscr...@freebsd.org