[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#199134: libc6: ioperm() bug on some ARM targets



Package: libc6
Version: 2.3.1-17
Severity: normal
Tags: upstream patch

The ioperm() call on ARM architectures is emulated on specific ARM sub
architectures that support it. If the ARM architecture is not
recognised or does not support the ioperm() call at all (many arm
targets do not have ISA or PCI) the routine is returning EINVAL and
not ENODEV.

This has been fixed in the HEAD CVS branch but appears not to be
applied to the debian current glibc.

This is important for many ARM sub arches because several packages
fail the most obvious being the X Servers.


--- glibc-2.3.1/sysdeps/unix/sysv/linux/arm/ioperm.c.orig	2003-06-28 10:52:53.000000000 +0100
+++ glibc-2.3.1/sysdeps/unix/sysv/linux/arm/ioperm.c	2003-06-28 10:53:04.000000000 +0100
@@ -166,7 +166,7 @@
     }
 
   /* systype is not a known platform name... */
-  __set_errno (EINVAL);
+  __set_errno (ENODEV);
   return -1;
 }
 


-- System Information:
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux pbell 2.4.20-3-k7 #1 Sun Jun 8 01:35:14 EST 2003 i686
Locale: LANG=C, LC_CTYPE=C

Versions of packages libc6 depends on:
ii  libdb1-compat                 2.1.3-7    The Berkeley database routines [gl

-- no debconf information




Reply to: