xserver: Branch 'master' - 3 commits

Keith Packard keithp at kemper.freedesktop.org
Mon Jan 9 11:38:27 PST 2012


 hw/xfree86/common/compiler.h |   19 -------------------
 os/backtrace.c               |    6 +++++-
 2 files changed, 5 insertions(+), 20 deletions(-)

New commits:
commit 1f5587e14406c083687203030db6a11691ac9d9f
Merge: a97252d... 6269977...
Author: Keith Packard <keithp at keithp.com>
Date:   Mon Jan 9 11:37:59 2012 -0800

    Merge remote-tracking branch 'kibi/master'

commit 6269977c91071e0ea16ca5b4b8e15fd6db0b6fcf
Author: Julien Cristau <jcristau at debian.org>
Date:   Fri Dec 30 20:41:25 2011 +0100

    os: don't ignore failure from dladdr
    
    If dladdr returns 0, don't go and use the returned Dl_info, it may
    contain garbage.
    
    X.Org bug#44315 <https://bugs.freedesktop.org/show_bug.cgi?id=44315>
    
    Reported-and-tested-by: Cyril Brulebois <kibi at debian.org>
    Reviewed-by: Jeremy Huddleston <jeremyhu at apple.com>
    Reviewed-by: Cyril Brulebois <kibi at debian.org>
    Signed-off-by: Julien Cristau <jcristau at debian.org>

diff --git a/os/backtrace.c b/os/backtrace.c
index 58b4b1f..298bf18 100644
--- a/os/backtrace.c
+++ b/os/backtrace.c
@@ -46,7 +46,11 @@ void xorg_backtrace(void)
     ErrorF("\nBacktrace:\n");
     size = backtrace(array, 64);
     for (i = 0; i < size; i++) {
-	dladdr(array[i], &info);
+	int rc = dladdr(array[i], &info);
+	if (rc == 0) {
+	    ErrorF("%d: ?? [%p]\n", i, array[i]);
+	    continue;
+	}
 	mod = (info.dli_fname && *info.dli_fname) ? info.dli_fname : "(vdso)";
 	if (info.dli_saddr)
 	    ErrorF("%d: %s (%s+0x%lx) [%p]\n", i, mod,
commit 644efb43e0639af648dd46d9729c2cabd9511238
Author: Cyril Brulebois <kibi at debian.org>
Date:   Fri Dec 30 02:34:36 2011 +0000

    linux/ia64: Fix regression after domain I/O support code removal.
    
    Side effect of aa0bfb0f133481c57762012e8e30c05ffa151423:
    |   CCLD   Xorg
    | sdksyms.o:(.data.rel+0x27d8): undefined reference to `outl'
    | collect2: ld returned 1 exit status
    
    Since the linux/ia64 domain I/O support code got removed in that
    commit, there's no reason to keep on declaring those functions
    (inb, inl, inw, outb, outl, outw).
    
    Bugzilla: https://bugs.freedesktop.org/43985
    
    Reviewed-by: Jeremy Huddleston <jeremyhu at apple.com>
    Signed-off-by: Cyril Brulebois <kibi at debian.org>

diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h
index 9e00d75..34e60c5 100644
--- a/hw/xfree86/common/compiler.h
+++ b/hw/xfree86/common/compiler.h
@@ -397,25 +397,6 @@ extern _X_EXPORT unsigned int inl(unsigned int port);
 #include <machine/pio.h>
 #endif /* __NetBSD__ */
 
-#   elif defined(linux) && defined(__ia64__) 
- 
-#    include <inttypes.h>
-
-#    include <sys/io.h>
-
-#    undef outb
-#    undef outw
-#    undef outl
-#    undef inb
-#    undef inw
-#    undef inl
-extern _X_EXPORT void outb(unsigned long port, unsigned char val);
-extern _X_EXPORT void outw(unsigned long port, unsigned short val);
-extern _X_EXPORT void outl(unsigned long port, unsigned int val);
-extern _X_EXPORT unsigned int inb(unsigned long port);
-extern _X_EXPORT unsigned int inw(unsigned long port);
-extern _X_EXPORT unsigned int inl(unsigned long port);
- 
 #   elif (defined(linux) || defined(__FreeBSD__)) && defined(__amd64__)
  
 #    include <inttypes.h>


More information about the xorg-commit mailing list