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

r1362 - in glibc-package/trunk/debian: . patches patches/i386 sysdeps



Author: aurel32
Date: 2006-04-09 00:42:32 +0000 (Sun, 09 Apr 2006)
New Revision: 1362

Added:
   glibc-package/trunk/debian/patches/i386/local-i486_ldt_support.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
   glibc-package/trunk/debian/sysdeps/i386.mk
Log:
  * Add i386/local-i486_ldt_support.diff (add ldt support and thus TLS support
    on i486 machines). Thanks to Petr Salinger for the hint.  (Closes: 226716)



Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2006-04-09 00:41:52 UTC (rev 1361)
+++ glibc-package/trunk/debian/changelog	2006-04-09 00:42:32 UTC (rev 1362)
@@ -18,6 +18,8 @@
     - s390: from 2.2.10 to 2.4.0
     - sparc: from 2.2.0 to 2.4.0
     (Closes: #174270, #220992)
+  * Add i386/local-i486_ldt_support.diff (add ldt support and thus TLS support
+    on i486 machines). Thanks to Petr Salinger for the hint.  (Closes: 226716)
 
   [ Denis Barbier ]
   * debian/debhelper.in/locales.config: /etc/locale.gen was not generated at

Added: glibc-package/trunk/debian/patches/i386/local-i486_ldt_support.diff
===================================================================
--- glibc-package/trunk/debian/patches/i386/local-i486_ldt_support.diff	2006-04-09 00:41:52 UTC (rev 1361)
+++ glibc-package/trunk/debian/patches/i386/local-i486_ldt_support.diff	2006-04-09 00:42:32 UTC (rev 1362)
@@ -0,0 +1,79 @@
+--- libc/linuxthreads/sysdeps/i386/i486/pt-machine.h	2003-01-05 00:24:33.937401424 +0100
++++ libc/linuxthreads/sysdeps/i386/i486/pt-machine.h	2004-10-19 07:12:59.000000000 +0200
+@@ -0,0 +1,76 @@
++/* Machine-dependent pthreads configuration and inline functions.
++   i486 version.
++   Copyright (C) 1996-2001, 2002, 2003 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++   Contributed by Richard Henderson <rth@tamu.edu>.
++
++   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; see the file COPYING.LIB.  If not,
++   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++   Boston, MA 02111-1307, USA.  */
++
++#ifndef _PT_MACHINE_H
++#define _PT_MACHINE_H	1
++
++#ifndef PT_EI
++# define PT_EI extern inline __attribute__ ((always_inline))
++#endif
++#include "kernel-features.h"
++
++#ifndef __ASSEMBLER__
++extern long int testandset (int *spinlock);
++extern int __compare_and_swap (long int *p, long int oldval, long int newval);
++
++/* Get some notion of the current stack.  Need not be exactly the top
++   of the stack, just something somewhere in the current frame.  */
++#define CURRENT_STACK_FRAME  __builtin_frame_address (0)
++
++
++/* Spinlock implementation; required.  */
++PT_EI long int
++testandset (int *spinlock)
++{
++  long int ret;
++
++  __asm__ __volatile__ (
++	"xchgl %0, %1"
++	: "=r" (ret), "=m" (*spinlock)
++	: "0" (1), "m" (*spinlock)
++	: "memory");
++
++  return ret;
++}
++
++
++/* Compare-and-swap for semaphores.  It's always available on i686.  */
++#define HAS_COMPARE_AND_SWAP
++
++PT_EI int
++__compare_and_swap (long int *p, long int oldval, long int newval)
++{
++  char ret;
++  long int readval;
++
++  __asm__ __volatile__ ("lock; cmpxchgl %3, %1; sete %0"
++			: "=q" (ret), "=m" (*p), "=a" (readval)
++			: "r" (newval), "m" (*p), "a" (oldval)
++			: "memory");
++  return ret;
++}
++#endif
++
++#if __ASSUME_LDT_WORKS > 0
++#include "../useldt.h"
++#endif
++
++#endif /* pt-machine.h */

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2006-04-09 00:41:52 UTC (rev 1361)
+++ glibc-package/trunk/debian/patches/series	2006-04-09 00:42:32 UTC (rev 1362)
@@ -77,6 +77,7 @@
 hurd-i386/submitted-ioctl-decode-argument.diff -p0
 hurd-i386/submitted-sysvshm.diff -p1
 
+i386/local-i486_ldt_support.diff -p0
 i386/local-biarch.diff -p1
 i386/local-cmov.diff -p0
 i386/local-sse-oldkernel.diff -p0

Modified: glibc-package/trunk/debian/sysdeps/i386.mk
===================================================================
--- glibc-package/trunk/debian/sysdeps/i386.mk	2006-04-09 00:41:52 UTC (rev 1361)
+++ glibc-package/trunk/debian/sysdeps/i386.mk	2006-04-09 00:42:32 UTC (rev 1362)
@@ -20,8 +20,6 @@
 i686_MIN_KERNEL_SUPPORTED = 2.6.0
 i686_extra_config_options = $(extra_config_options) --disable-profile
 
-libc_extra_config_options = $(extra_config_options) --without-__thread
-
 # build 64-bit (amd64) alternative library
 GLIBC_PASSES += amd64
 DEB_ARCH_REGULAR_PACKAGES += libc6-amd64 libc6-dev-amd64



Reply to: