From 9e472e101f37233f4e32d181d2fee29014c1cf2f Mon Sep 17 00:00:00 2001 From: aliguori Date: Wed, 8 Oct 2008 19:50:24 +0000 Subject: Fix IO performance regression in sparc Replace signalfd with signal handler/pipe. There is no way to interrupt the CPU execution loop when a file descriptor becomes readable. This results in a large performance regression in sparc emulation during bootup. This patch switches us to signal handler/pipe which was originally suggested by Ian Jackson. The signal handler lets us interrupt the CPU emulation loop while the write to a pipe lets us avoid the select/signal race condition. Signed-off-by: Anthony Liguori git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5451 c046a42c-6fe2-441c-8c8c-71466251a162 --- configure | 35 ----------------------------------- 1 file changed, 35 deletions(-) (limited to 'configure') diff --git a/configure b/configure index 9192fcf94b..ba80f1c557 100755 --- a/configure +++ b/configure @@ -113,8 +113,6 @@ aio="yes" nptl="yes" mixemu="no" bluez="yes" -signalfd="no" -eventfd="no" # OS specific targetos=`uname -s` @@ -930,33 +928,6 @@ EOF fi fi -########################################## -# signalfd probe -cat > $TMPC << EOF -#define _GNU_SOURCE -#include -#include -#include -int main(void) { return syscall(SYS_signalfd, -1, NULL, _NSIG / 8); } -EOF - -if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null ; then - signalfd=yes -fi - -########################################## -# eventfd probe -cat > $TMPC << EOF -#define _GNU_SOURCE -#include -#include -int main(void) { return syscall(SYS_eventfd, 0); } -EOF - -if $cc $ARCH_CFLAGS -o $TMPE $TMPC 2> /dev/null ; then - eventfd=yes -fi - # Check if tools are available to build documentation. if [ -x "`which texi2html 2>/dev/null`" ] && \ [ -x "`which pod2man 2>/dev/null`" ]; then @@ -1297,12 +1268,6 @@ if test "$aio" = "yes" ; then echo "#define CONFIG_AIO 1" >> $config_h echo "CONFIG_AIO=yes" >> $config_mak fi -if test "$signalfd" = "yes" ; then - echo "#define CONFIG_signalfd 1" >> $config_h -fi -if test "$eventfd" = "yes" ; then - echo "#define CONFIG_eventfd 1" >> $config_h -fi # XXX: suppress that if [ "$bsd" = "yes" ] ; then -- cgit v1.2.3