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

r1396 - glibc-package/trunk/debian/patches/kfreebsd



Author: aurel32
Date: 2006-04-10 21:58:07 +0000 (Mon, 10 Apr 2006)
New Revision: 1396

Modified:
   glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff
Log:
Last time fix:
  Update of the GNU/kFreeBSD patch



Modified: glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff
===================================================================
--- glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff	2006-04-10 21:57:50 UTC (rev 1395)
+++ glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff	2006-04-10 21:58:07 UTC (rev 1396)
@@ -2552,8 +2552,8 @@
 +weak_alias (__bind, bind)
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/bits/dirent.h sysdeps/unix/bsd/bsd4.4/kfreebsd/bits/dirent.h
 --- null/unix/bsd/bsd4.4/kfreebsd/bits/dirent.h	1970-01-01 01:00:00.000000000 +0100
-+++ sysdeps/unix/bsd/bsd4.4/kfreebsd/bits/dirent.h	2006-01-02 19:10:54.000000000 +0100
-@@ -0,0 +1,50 @@
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/bits/dirent.h	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,52 @@
 +/* Directory entry structure `struct dirent'.  FreeBSD version.
 +   Copyright (C) 1996-1998,2001-2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -2579,7 +2579,7 @@
 +
 +struct dirent
 +  {
-+    unsigned int d_fileno;	/* File serial number.  */
++    unsigned int d_ino;		/* File serial number.  */
 +    unsigned short int d_reclen; /* Length of the whole `struct dirent'.  */
 +    unsigned char d_type;	/* File type, possibly unknown.  */
 +    unsigned char d_namlen;	/* Length of the file name.  */
@@ -2591,7 +2591,7 @@
 +#ifdef __USE_LARGEFILE64
 +struct dirent64
 +  {
-+    unsigned int d_fileno;	/* File serial number.  */
++    unsigned int d_ino;		/* File serial number.  */
 +    unsigned short int d_reclen; /* Length of the whole `struct dirent'.  */
 +    unsigned char d_type;	/* File type, possibly unknown.  */
 +    unsigned char d_namlen;	/* Length of the file name.  */
@@ -2601,6 +2601,8 @@
 +  };
 +#endif
 +
++#define d_fileno        d_ino   /* Backwards compatibility.  */
++
 +#define _DIRENT_HAVE_D_RECLEN 1
 +#define _DIRENT_HAVE_D_NAMLEN 1
 +#define _DIRENT_HAVE_D_TYPE 1
@@ -10535,7 +10537,7 @@
 +weak_alias(__swapcontext, swapcontext)
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/i386/sys/io.h sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/io.h
 --- null/unix/bsd/bsd4.4/kfreebsd/i386/sys/io.h	1970-01-01 01:00:00.000000000 +0100
-+++ sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/io.h	2006-01-26 20:16:36.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/io.h	2006-04-10 23:30:44.000000000 +0200
 @@ -0,0 +1,180 @@
 +/* Copyright (C) 1996, 2000, 2002, 2004 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -10568,8 +10570,8 @@
 +
 +   Portability note: not all kFreeBSD platforms support this call.  Most
 +   platforms based on the PC I/O architecture probably will, however. */
-+extern int ioperm (unsigned int __from, unsigned int __num, int __turn_on)
-+     __THROW;
++extern int ioperm (unsigned long int __from, unsigned long int __num,
++                   int __turn_on) __THROW;
 +
 +/* Set the I/O privilege level to LEVEL.  If LEVEL>3, permission to
 +   access any I/O port is granted.  This call requires root
@@ -10719,8 +10721,8 @@
 +#endif /* _SYS_IO_H */
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/i386/sys/perm.h sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/perm.h
 --- null/unix/bsd/bsd4.4/kfreebsd/i386/sys/perm.h	1970-01-01 01:00:00.000000000 +0100
-+++ sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/perm.h	2006-01-02 19:10:53.000000000 +0100
-@@ -0,0 +1,38 @@
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/i386/sys/perm.h	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,43 @@
 +/* Copyright (C) 1996, 1999, 2002 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
 +
@@ -10747,8 +10749,13 @@
 +__BEGIN_DECLS
 +
 +/* Set port input/output permissions.  */
-+extern int ioperm (unsigned int __from, unsigned int __num, int __turn_on)
-+     __THROW;
++extern int ioperm (unsigned long int __from, unsigned long int __num,
++		   int __turn_on) __THROW;
++
++
++/* Change I/O privilege level.  */
++extern int iopl (int __level) __THROW;
++
 +extern int i386_set_ioperm (unsigned int __from, unsigned int __num,
 +			    int __turn_on) __THROW;
 +
@@ -19728,6 +19735,11 @@
 +PSEUDO_END(__getcontext)
 +
 +weak_alias(__getcontext, getcontext)
+diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/iopl.c sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/iopl.c
+--- null/unix/bsd/bsd4.4/kfreebsd/x86_64/iopl.c	1970-01-01 01:00:00.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/iopl.c	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1 @@
++#include "../i386/iopl.c"
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/makecontext.S sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/makecontext.S
 --- null/unix/bsd/bsd4.4/kfreebsd/x86_64/makecontext.S	1970-01-01 01:00:00.000000000 +0100
 +++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/makecontext.S	2006-03-01 20:13:16.000000000 +0100
@@ -19878,6 +19890,17 @@
 +
 +weak_alias(__makecontext, makecontext)
 +
+diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/Makefile sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/Makefile
+--- null/unix/bsd/bsd4.4/kfreebsd/x86_64/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/Makefile	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,7 @@
++32bit-predefine = __i386__
++64bit-predefine = __x86_64__
++
++ifeq ($(subdir),misc)
++sysdep_routines += iopl
++sysdep_headers += sys/perm.h sys/io.h
++endif
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/pipe.S sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/pipe.S
 --- null/unix/bsd/bsd4.4/kfreebsd/x86_64/pipe.S	1970-01-01 01:00:00.000000000 +0100
 +++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/pipe.S	2006-03-18 17:31:11.000000000 +0100
@@ -20227,6 +20250,237 @@
 +PSEUDO_END(__swapcontext)
 +
 +weak_alias(__swapcontext, swapcontext)
+diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/io.h sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/io.h
+--- null/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/io.h	1970-01-01 01:00:00.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/io.h	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,180 @@
++/* Copyright (C) 1996, 2000, 2002, 2004 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, write to the Free
++   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++   02111-1307 USA.  */
++
++#ifndef	_SYS_IO_H
++#define	_SYS_IO_H	1
++
++#include <features.h>
++
++__BEGIN_DECLS
++
++/* If TURN_ON is TRUE, request for permission to do direct i/o on the
++   port numbers in the range [FROM,FROM+NUM-1].  Otherwise, turn I/O
++   permission off for that range.  This call requires root privileges.
++
++   Portability note: not all kFreeBSD platforms support this call.  Most
++   platforms based on the PC I/O architecture probably will, however. */
++extern int ioperm (unsigned long int __from, unsigned long int __num,
++                   int __turn_on) __THROW;
++
++/* Set the I/O privilege level to LEVEL.  If LEVEL>3, permission to
++   access any I/O port is granted.  This call requires root
++   privileges. */
++extern int iopl (int __level) __THROW;
++
++#if defined __GNUC__ && __GNUC__ >= 2
++
++static __inline unsigned char
++inb (unsigned short int port)
++{
++  unsigned char _v;
++
++  __asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline unsigned char
++inb_p (unsigned short int port)
++{
++  unsigned char _v;
++
++  __asm__ __volatile__ ("inb %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline unsigned short int
++inw (unsigned short int port)
++{
++  unsigned short _v;
++
++  __asm__ __volatile__ ("inw %w1,%0":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline unsigned short int
++inw_p (unsigned short int port)
++{
++  unsigned short int _v;
++
++  __asm__ __volatile__ ("inw %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline unsigned int
++inl (unsigned short int port)
++{
++  unsigned int _v;
++
++  __asm__ __volatile__ ("inl %w1,%0":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline unsigned int
++inl_p (unsigned short int port)
++{
++  unsigned int _v;
++  __asm__ __volatile__ ("inl %w1,%0\noutb %%al,$0x80":"=a" (_v):"Nd" (port));
++  return _v;
++}
++
++static __inline void
++outb (unsigned char value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outb %b0,%w1": :"a" (value), "Nd" (port));
++}
++
++static __inline void
++outb_p (unsigned char value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outb %b0,%w1\noutb %%al,$0x80": :"a" (value),
++			"Nd" (port));
++}
++
++static __inline void
++outw (unsigned short int value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outw %w0,%w1": :"a" (value), "Nd" (port));
++
++}
++
++static __inline void
++outw_p (unsigned short int value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outw %w0,%w1\noutb %%al,$0x80": :"a" (value),
++			"Nd" (port));
++}
++
++static __inline void
++outl (unsigned int value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outl %0,%w1": :"a" (value), "Nd" (port));
++}
++
++static __inline void
++outl_p (unsigned int value, unsigned short int port)
++{
++  __asm__ __volatile__ ("outl %0,%w1\noutb %%al,$0x80": :"a" (value),
++			"Nd" (port));
++}
++
++static __inline void
++insb (unsigned short int port, void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; insb":"=D" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++static __inline void
++insw (unsigned short int port, void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; insw":"=D" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++static __inline void
++insl (unsigned short int port, void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; insl":"=D" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++static __inline void
++outsb (unsigned short int port, const void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; outsb":"=S" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++static __inline void
++outsw (unsigned short int port, const void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; outsw":"=S" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++static __inline void
++outsl (unsigned short int port, const void *addr, unsigned long int count)
++{
++  __asm__ __volatile__ ("cld ; rep ; outsl":"=S" (addr),
++			"=c" (count):"d" (port), "0" (addr), "1" (count));
++}
++
++#endif	/* GNU C */
++
++__END_DECLS
++#endif /* _SYS_IO_H */
+diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/perm.h sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/perm.h
+--- null/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/perm.h	1970-01-01 01:00:00.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sys/perm.h	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,43 @@
++/* Copyright (C) 1996, 1999, 2002 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, write to the Free
++   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++   02111-1307 USA.  */
++
++#ifndef _SYS_PERM_H
++#define _SYS_PERM_H	1
++
++#include <features.h>
++
++__BEGIN_DECLS
++
++/* Set port input/output permissions.  */
++extern int ioperm (unsigned long int __from, unsigned long int __num,
++		   int __turn_on) __THROW;
++
++
++/* Change I/O privilege level.  */
++extern int iopl (int __level) __THROW;
++
++extern int i386_set_ioperm (unsigned int __from, unsigned int __num,
++			    int __turn_on) __THROW;
++
++/* Retrieve a contiguous range of port input/output permissions.  */
++extern int i386_get_ioperm (unsigned int __from, unsigned int *__num,
++			    int *__turned_on) __THROW;
++
++__END_DECLS
++
++#endif	/* _SYS_PERM_H */
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/sysarch.h sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sysarch.h
 --- null/unix/bsd/bsd4.4/kfreebsd/x86_64/sysarch.h	1970-01-01 01:00:00.000000000 +0100
 +++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/sysarch.h	2006-01-06 21:26:14.000000000 +0100
@@ -20635,6 +20889,15 @@
 +#define oLINK		816
 +#define oSS_SP		824
 +#define oSS_SIZE	832
+diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/Versions sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/Versions
+--- null/unix/bsd/bsd4.4/kfreebsd/x86_64/Versions	1970-01-01 01:00:00.000000000 +0100
++++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/Versions	2006-04-10 23:30:44.000000000 +0200
+@@ -0,0 +1,5 @@
++libc {
++  GLIBC_2.3.4 {
++	iopl;
++  }
++}
 diff -x .svn -Nurd null/unix/bsd/bsd4.4/kfreebsd/x86_64/vfork.S sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/vfork.S
 --- null/unix/bsd/bsd4.4/kfreebsd/x86_64/vfork.S	1970-01-01 01:00:00.000000000 +0100
 +++ sysdeps/unix/bsd/bsd4.4/kfreebsd/x86_64/vfork.S	2006-01-06 21:26:14.000000000 +0100



Reply to: