Hello community, here is the log from the commit of package libvirt checked in at Sun Oct 26 00:53:10 CEST 2008. -------- calling whatdependson for head-i586 New: ---- clone.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libvirt.spec ++++++ --- /var/tmp/diff_new_pack.t16718/_old 2008-10-26 00:52:00.000000000 +0200 +++ /var/tmp/diff_new_pack.t16718/_new 2008-10-26 00:52:00.000000000 +0200 @@ -21,7 +21,7 @@ %define with_lxc 0 %define with_selinux 0 # Xen is available only on i386 x86_64 -%ifnarch i386 i586 x86_64 +%ifnarch %ix86 x86_64 %define with_xen 0 %endif %if 0%{?suse_version} > 1100 @@ -49,7 +49,7 @@ Group: Development/Libraries/C and C++ AutoReqProv: yes Version: 0.4.6 -Release: 4 +Release: 5 Summary: A C toolkit to interract with the virtualization capabilities of Linux Requires: readline Requires: ncurses @@ -79,6 +79,7 @@ Patch10: lxcvirsh.patch Patch11: cgmajor.patch Patch12: lxcpty.patch +Patch13: clone.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -182,6 +183,7 @@ %patch10 -p1 %patch11 -p1 %patch12 -p1 +%patch13 rm po/no.* %build @@ -195,7 +197,7 @@ %define _with_selinux --with-selinux %endif autoreconf -f -i -export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +export CFLAGS="$RPM_OPT_FLAGS" %configure %{?_without_xen} \ %{?_without_lxc} \ %{?_with_selinux} \ ++++++ clone.patch ++++++ --- src/lxc_container.c +++ src/lxc_container.c @@ -604,6 +604,9 @@ int lxcContainerStart(virDomainDefPtr de lxc_child_argv_t args = { def, nveths, veths, control, ttyPath }; /* allocate a stack for the container */ +#ifdef __ia64__ + stacksize *= 2; +#endif if (VIR_ALLOC_N(stack, stacksize) < 0) { lxcError(NULL, NULL, VIR_ERR_NO_MEMORY, NULL); return -1; @@ -615,7 +618,11 @@ int lxcContainerStart(virDomainDefPtr de if (def->nets != NULL) flags |= CLONE_NEWNET; +#ifdef __ia64__ + pid = __clone2(lxcContainerChild, stack, stacksize, flags, &args); +#else pid = clone(lxcContainerChild, stacktop, flags, &args); +#endif VIR_FREE(stack); DEBUG("clone() returned, %d", pid); @@ -641,18 +648,26 @@ int lxcContainerAvailable(int features) char *childStack; char *stack; int childStatus; + int stacksize = getpagesize() * 4; if (features & LXC_CONTAINER_FEATURE_NET) flags |= CLONE_NEWNET; - if (VIR_ALLOC_N(stack, getpagesize() * 4) < 0) { +#ifdef __ia64__ + stacksize *= 2; +#endif + if (VIR_ALLOC_N(stack, stacksize) < 0) { DEBUG0("Unable to allocate stack"); return -1; } - childStack = stack + (getpagesize() * 4); + childStack = stack + stacksize; +#ifdef __ia64__ + cpid = __clone2(lxcContainerDummyChild, stack, stacksize, flags, NULL); +#else cpid = clone(lxcContainerDummyChild, childStack, flags, NULL); +#endif VIR_FREE(stack); if (cpid < 0) { DEBUG("clone call returned %s, container support is not enabled", ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org