Re: xenbusb_nop_confighook_cb timeout and cd issue

2012-12-04 Thread Egoitz Aurrekoetxea Aurre
Good morning,

For sure Sean, I have today a more or less busy day but as far as I get again 
some (even little :) ) more time… I'll tell here how the progress goes….

Best regards,

Egoitz Aurrekoetxea
Departamento de sistemas
ego...@sarenet.es


El 04/12/2012, a las 05:33, Sean Bruno sean...@yahoo-inc.com escribió:

 On Mon, 2012-12-03 at 19:04 +0100, Egoitz Aurrekoetxea Aurre wrote:
 Good morning,
 
 After doing some checks and debugs about this problem, I can conclude that : 
 under Xen 4.1.3 on Debian Wheezy it works properly although in XCP1.6 if you 
 remove the cd drive from the vm works too. I'm going to describe the two 
 test environments have used for debugging this  :
 
 ENV 1.- XCP 1.6 XEN 4.1.3 + FREEBSD 9.1-RC3 :
 
 As you can see with an iso image mounted and without it, the boot process 
 gets stuck there….. (I paste here both screenshot location).
  
 http://postfixquotareject.ramattack.net/PastedGraphic-8.tiff
 http://postfixquotareject.ramattack.net/PastedGraphic-11.tiff
  
 
 I have placed here two examples, with an empty (but existing) cd drive and 
 with a iso mounted in the drive. 
 
 BUT If I do a in the XCP shell : 
 
 xe vm-cd-remove uuid=08aec342-9572-8690-5e58-91d1b1f0aab2 
 cd-name=xs-tools.iso
 
 The drive is being removed from the vm and it boots normally.  This is the 
 workaround I'm using for the moment.
 
 Another debugging check I have done too is to apply this patch (although 
 it's just for testing purposes and for checking if cd drive works) to see 
 how the drive behaves after booting but without stopping in that loop of the 
 FreeBSD kernel source code.
 
 --- /usr/src/sys/kern/subr_autoconf.c-defecto2012-10-10 
 13:51:27.0 +0200
 +++ /usr/src/sys/kern/subr_autoconf.c2012-10-10 18:21:51.0 
 +0200
 @@ -133,16 +133,17 @@
  /* Block boot processing until all hooks are disestablished. */
  mtx_lock(intr_config_hook_lock);
  warned = 0;
 -while (!TAILQ_EMPTY(intr_config_hook_list)) {
 +/* while (!TAILQ_EMPTY(intr_config_hook_list)) { */
  if (msleep(intr_config_hook_list, intr_config_hook_lock,
  0, conifhk, WARNING_INTERVAL_SECS * hz) ==
  EWOULDBLOCK) {
  mtx_unlock(intr_config_hook_lock);
  warned++;
  run_interrupt_driven_config_hooks_warning(warned);
  mtx_lock(intr_config_hook_lock);
  }
 -}
 +/* } */
  mtx_unlock(intr_config_hook_lock);
 }
 
 After applying this patch, kernel boots under XCP 1.6Beta and cd can be 
 mounted in the shell (should say I have not noticed about IRQ problems after 
 this). It seems like FreeBSD domU is not able to continue the boot process  
 because it's not able to finish up some test related to THIS (the cd drive) 
 device setup (IRQ assigning tests I assume concretely)  that should succeed 
 before being able to continue the boot process.
 
 ENV 2.- Debian Wheezy (testing) XEN 4.1.3 + FreeBSD 9.1-RC3 :
 
 Here is the concrete environment and config : 
 
 root@pruebas-xen-egoitz:~# uname -ar
 Linux pruebas-xen-egoitz 3.2.0-4-amd64 #1 SMP Debian 3.2.32-1 x86_64 
 GNU/Linux
 
 root@pruebas-xen-egoitz:~# cat /etc/issue
 Debian GNU/Linux wheezy/sid \n \l
 
 root@pruebas-xen-egoitz:~# dpkg -l | grep -i xen
 ii  libxen-4.1 4.1.3-4   amd64   
  Public libs for Xen
 ii  libxenstore3.0 4.1.3-4   amd64   
  Xenstore communications library for Xen
 ri  linux-image-2.6.32-5-xen-amd64 2.6.32-46 amd64   
  Linux 2.6.32 for 64-bit PCs, Xen dom0 support
 rc  xen-hypervisor-4.0-amd64   4.0.1-5.4 amd64   
  The Xen Hypervisor on AMD64
 ii  xen-hypervisor-4.1-amd64   4.1.3-4   amd64   
  Xen Hypervisor on AMD64
 ii  xen-linux-system-3.2.0-4-amd64 3.2.32-1  amd64   
  Xen system with Linux 3.2 on 64-bit PCs (meta-package)
 ii  xen-linux-system-amd64 3.2+46amd64   
  Xen system with Linux for 64-bit PCs (meta-package)
 ii  xen-system-amd64   4.1.3-4   amd64   
  Xen System on AMD64 (meta-package)
 ii  xen-tools  4.3.1-1   all 
  Tools to manage Xen virtual servers
 ii  xen-utils-4.1  4.1.3-4   amd64   
  XEN administrative tools
 ii  xen-utils-common   4.1.3-4   all 
  Xen administrative tools - common files
 ii  xenstore-utils 4.1.3-4   amd64   
  Xenstore utilities for Xen
 
 root@pruebas-xen-egoitz:~# xm list
 NameID   Mem VCPUs  State   
 Time(s)
 Domain-0 0  6908 8 r-   
 1526.2
 

Call for testers: vfork(2) repair for Xen

2012-12-04 Thread Konstantin Belousov
Hi,
there is plain erronous special case for Xen in the handling of vfork(2)
syscall, which converts it into the fork(2), but only on Xen. I think this
was a bug to commit the change in the course of importing Xen support at all.

Could somebody of you, who use paravirtualized kernels, test the patch
below. After the patched kernel is booted, just running csh(1) and
calling any external command from it, e.g. ls(1), is enough.

I already tried to solicit the testing of the fix in private, but nobody
responded. I am going to commit the change in a week, unless somebody
report a real issue with Xen pmap, uncovered by it.

diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c
index b8a4825..0d2709f 100644
--- a/sys/kern/kern_fork.c
+++ b/sys/kern/kern_fork.c
@@ -150,11 +150,7 @@ sys_vfork(struct thread *td, struct vfork_args *uap)
int error, flags;
struct proc *p2;
 
-#ifdef XEN
-   flags = RFFDG | RFPROC; /* validate that this is still an issue */
-#else
flags = RFFDG | RFPROC | RFPPWAIT | RFMEM;
-#endif 
error = fork1(td, flags, 0, p2, NULL, 0);
if (error == 0) {
td-td_retval[0] = p2-p_pid;


pgpQ0tRlValmW.pgp
Description: PGP signature


Re: Call for testers: vfork(2) repair for Xen

2012-12-04 Thread Sean Bruno
On Tue, 2012-12-04 at 23:02 +0200, Konstantin Belousov wrote:
 Hi,
 there is plain erronous special case for Xen in the handling of vfork(2)
 syscall, which converts it into the fork(2), but only on Xen. I think this
 was a bug to commit the change in the course of importing Xen support at all.
 
 Could somebody of you, who use paravirtualized kernels, test the patch
 below. After the patched kernel is booted, just running csh(1) and
 calling any external command from it, e.g. ls(1), is enough.
 
 I already tried to solicit the testing of the fix in private, but nobody
 responded. I am going to commit the change in a week, unless somebody
 report a real issue with Xen pmap, uncovered by it.
 
 diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c
 index b8a4825..0d2709f 100644
 --- a/sys/kern/kern_fork.c
 +++ b/sys/kern/kern_fork.c
 @@ -150,11 +150,7 @@ sys_vfork(struct thread *td, struct vfork_args *uap)
   int error, flags;
   struct proc *p2;
  
 -#ifdef XEN
 - flags = RFFDG | RFPROC; /* validate that this is still an issue */
 -#else
   flags = RFFDG | RFPROC | RFPPWAIT | RFMEM;
 -#endif   
   error = fork1(td, flags, 0, p2, NULL, 0);
   if (error == 0) {
   td-td_retval[0] = p2-p_pid;


Ack.  Will test tonight after dom0.freebsd.org is restored.

Sean

___
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