diff mbox

[for-2.3] Revert seccomp tests that allow it to be used on non-x86 architectures

Message ID 1428670681-23032-1-git-send-email-peter.maydell@linaro.org
State Accepted
Headers show

Commit Message

Peter Maydell April 10, 2015, 12:58 p.m. UTC
Unfortunately it turns out that libseccomp 2.2 still does not work
correctly on non-x86 architectures; return to the previous configure
setup of insisting on libseccomp 2.1 or better and i386/x86_64 and
disabling seccomp support in all other situations.

This reverts the two commits:
 * "seccomp: libseccomp version varying according to arch"
   (commit 896848f0d3e2393905845ef2b244bb2601f9df0c)
 * "seccomp: update libseccomp version and remove arch restriction"
   (commit 8e27fc200457e3f2473d0069263774d4ba17bd85)

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
With QEMU 2.3 release so close this seems the safest approach.

 configure | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

Comments

Peter Maydell June 16, 2015, 1:16 p.m. UTC | #1
On 16 June 2015 at 14:12, Andrew Jones <drjones@redhat.com> wrote:
> Can we now revert this revert, along with bumping the non-x86 arch
> atleast-version to v2.2.1

Probably. I suggest you submit a patch and test it on the
relevant architectures and seccomp versions.

thanks
-- PMM
Peter Maydell June 30, 2015, 5:07 p.m. UTC | #2
On 30 June 2015 at 18:01, Paul Moore <pmoore@redhat.com> wrote:
> I'm starting to wonder if the 32-bit ARM build system didn't have
> __NR_cacheflush defined in the system headers; that might explain some of the
> behavior.  Could you check your system to see if it has __NR_cacheflush
> defined (try /usr/include/asm/unistd.h)?

The constant name is __ARM_NR_cacheflush, not __NR_cacheflush
(all the ARM-specific syscalls are __ARM_NR_*). See
http://lxr.free-electrons.com/source/arch/arm/include/uapi/asm/unistd.h#L418

thanks
-- PMM
diff mbox

Patch

diff --git a/configure b/configure
index 8b673fd..6969f6f 100755
--- a/configure
+++ b/configure
@@ -1848,19 +1848,14 @@  fi
 # libseccomp check
 
 if test "$seccomp" != "no" ; then
-    if $pkg_config --atleast-version=2.2.0 libseccomp ||
-        (test "$cpu" = "i386" || test "$cpu" = "x86_64" &&
-        $pkg_config --atleast-version=2.1.1 libseccomp); then
+    if test "$cpu" = "i386" || test "$cpu" = "x86_64" &&
+        $pkg_config --atleast-version=2.1.1 libseccomp; then
         libs_softmmu="$libs_softmmu `$pkg_config --libs libseccomp`"
         QEMU_CFLAGS="$QEMU_CFLAGS `$pkg_config --cflags libseccomp`"
 	seccomp="yes"
     else
 	if test "$seccomp" = "yes"; then
-        if test "$cpu" = "i386" || test "$cpu" = "x86_64"; then
             feature_not_found "libseccomp" "Install libseccomp devel >= 2.1.1"
-        else
-            feature_not_found "libseccomp" "Install libseccomp devel >= 2.2.0"
-        fi
 	fi
 	seccomp="no"
     fi