r2786 - in glibc-package/trunk/debian: . patches patches/sh4

2008-01-19 Thread aurel32
Author: aurel32
Date: 2008-01-19 12:24:08 + (Sat, 19 Jan 2008)
New Revision: 2786

Added:
   glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
  * patches/sh4/cvs-nptl-private-futexes.diff: new patch from CVS to fix
FTBFS on sh4.



Modified: glibc-package/trunk/debian/changelog
===
--- glibc-package/trunk/debian/changelog2008-01-12 18:00:25 UTC (rev 
2785)
+++ glibc-package/trunk/debian/changelog2008-01-19 12:24:08 UTC (rev 
2786)
@@ -1,3 +1,11 @@
+glibc (2.7-7) unstable; urgency=low
+
+  [ Arthur Loiret ]
+  * patches/sh4/cvs-nptl-private-futexes.diff: new patch from CVS to fix
+FTBFS on sh4.
+
+ -- Aurelien Jarno <[EMAIL PROTECTED]>  Sat, 19 Jan 2008 12:01:23 +0100
+
 glibc (2.7-6) unstable; urgency=low
 
   [ Aurelien Jarno ]

Modified: glibc-package/trunk/debian/patches/series
===
--- glibc-package/trunk/debian/patches/series   2008-01-12 18:00:25 UTC (rev 
2785)
+++ glibc-package/trunk/debian/patches/series   2008-01-19 12:24:08 UTC (rev 
2786)
@@ -110,6 +110,7 @@
 powerpc/local-sysconf.diff 
 
 sh4/local-fpscr_values.diff -p0
+sh4/cvs-nptl-private-futexes.diff -p0
 
 sparc/local-fork.diff -p0
 sparc/local-sparcv9-target.diff -p0

Added: glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
===
--- glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
(rev 0)
+++ glibc-package/trunk/debian/patches/sh4/cvs-nptl-private-futexes.diff
2008-01-19 12:24:08 UTC (rev 2786)
@@ -0,0 +1,152 @@
+2007-12-04  Kaz Kojima  <[EMAIL PROTECTED]>
+
+   * sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_timedlock_wait):
+   Store 2 before returning ETIMEDOUT.
+
+2007-11-03  Mike Frysinger  <[EMAIL PROTECTED]>
+
+   * sysdeps/unix/sysv/linux/sh/lowlevellock.S (LOAD_FUTEX_WAIT): Add
+   missing line continuations.
+   * sysdeps/unix/sysv/linux/sh/lowlevelrobustlock.S (LOAD_FUTEX_WAIT,
+   LOAD_FUTEX_WAKE): Likewise.  Also add missing 3rd parameter
+
+
+--- nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S 2007-08-03 
15:44:15.0 +
 nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S 2007-12-05 
02:31:10.0 +
+@@ -76,7 +76,7 @@
+   add tmp2, tmp   ; \
+   mov.l   @tmp, tmp2  ; \
+   bra 98f ; \
+-   mov#FUTEX_PRIVATE_FLAG, tmp
++   mov#FUTEX_PRIVATE_FLAG, tmp ; \
+ 99:   .word   PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98:   extu.b  tmp, tmp; \
+   xor tmp, reg; \
+@@ -88,7 +88,7 @@
+   add tmp2, tmp   ; \
+   mov.l   @tmp, tmp2  ; \
+   bra 98f ; \
+-   mov#FUTEX_PRIVATE_FLAG, tmp
++   mov#FUTEX_PRIVATE_FLAG, tmp ; \
+ 99:   .word   PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98:   extu.b  tmp, tmp; \
+   xor tmp, reg; \
+@@ -96,13 +96,13 @@
+   mov #FUTEX_WAIT, tmp ; \
+   or  tmp, reg
+ # endif
+-# define LOAD_FUTEX_WAKE(reg,tmp) \
++# define LOAD_FUTEX_WAKE(reg,tmp,tmp2) \
+   stc gbr, tmp; \
+   mov.w   99f, tmp2   ; \
+   add tmp2, tmp   ; \
+   mov.l   @tmp, tmp2  ; \
+   bra 98f ; \
+-   mov#FUTEX_PRIVATE_FLAG, tmp
++   mov#FUTEX_PRIVATE_FLAG, tmp ; \
+ 99:   .word   PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+ 98:   extu.b  tmp, tmp; \
+   xor tmp, reg; \
+@@ -225,6 +225,12 @@
+   add #-8, r15
+   cfi_adjust_cfa_offset(8)
+ 
++  mov #2, r2
++  XCHG (r2, @r8, r3)
++
++  tst r3, r3
++  bt  6f
++  
+ 1:
+   /* Get current time.  */
+   mov r15, r4
+@@ -250,17 +256,11 @@
+   add #-1, r2
+ 4:
+   cmp/pz  r2
+-  bf  5f  /* Time is already up.  */
++  bf  2f  /* Time is already up.  */
+ 
+   mov.l   r2, @r15/* Store relative timeout.  */
+   mov.l   r3, @(4,r15)
+ 
+-  mov #1, r3
+-  mov #2, r4
+-  CMPXCHG (r3, @r8, r4, r2)
+-  tst r2, r2
+-  bt  8f
+-
+   mov r8, r4
+   mov r11, r5
+   LOAD_FUTEX_WAIT (r5, r0, r1)
+@@ -272,39 +272,29 @@
+   SYSCALL_INST_PAD
+   mov r0, r5
+ 
+-8:
+-  mov #0, r3
+-  mov #2, r4
+-  CMPXCHG (r3, @r8, r4, r2)
+-  bf/s7f
+-   mov#0, r0
++  mov #2, r2
++  XCHG (r2, @r8, r3)
++
++  tst r3, r3
++  bt/s6f
++   mov#-ETIMEDOUT, r1
++  cmp/eq  r5, r1
++  bf  1b
++
++2:mov #ETIMEDOUT, r3
+ 
+ 6:
++  mov r3, r0
+   add #8, r15
+   mov.l   @r15+, r8
+   mov.l   @r15+, r9
+   mov.l   

Processing of glibc_2.3.6.ds1-13etch5_i386.changes

2008-01-19 Thread Archive Administrator
glibc_2.3.6.ds1-13etch5_i386.changes uploaded successfully to localhost
along with the files:
  glibc_2.3.6.ds1-13etch5.dsc
  glibc_2.3.6.ds1-13etch5.diff.gz
  glibc-doc_2.3.6.ds1-13etch5_all.deb
  locales_2.3.6.ds1-13etch5_all.deb
  libc6_2.3.6.ds1-13etch5_i386.deb
  libc6-dev_2.3.6.ds1-13etch5_i386.deb
  libc6-prof_2.3.6.ds1-13etch5_i386.deb
  libc6-pic_2.3.6.ds1-13etch5_i386.deb
  locales-all_2.3.6.ds1-13etch5_i386.deb
  libc6-i686_2.3.6.ds1-13etch5_i386.deb
  libc6-xen_2.3.6.ds1-13etch5_i386.deb
  libc6-amd64_2.3.6.ds1-13etch5_i386.deb
  libc6-dev-amd64_2.3.6.ds1-13etch5_i386.deb
  nscd_2.3.6.ds1-13etch5_i386.deb
  libc6-dbg_2.3.6.ds1-13etch5_i386.deb
  libc6-udeb_2.3.6.ds1-13etch5_i386.udeb
  libnss-dns-udeb_2.3.6.ds1-13etch5_i386.udeb
  libnss-files-udeb_2.3.6.ds1-13etch5_i386.udeb

Greetings,

Your Debian queue daemon


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#460226: Memory leak in SUNRPC code

2008-01-19 Thread Aurelien Jarno
On Fri, Jan 18, 2008 at 08:27:00PM +0100, Martin Zobel-Helas wrote:
> Hi, 
> 
> On Sat Jan 12, 2008 at 13:41:12 +0100, Aurelien Jarno wrote:
> > Hi release managers,
> > 
> > On Fri, Jan 11, 2008 at 11:59:53AM +, Andre Cruz wrote:
> > > Package: libc6
> > > Version: 2.3.6.ds1-13etch2
> > > Severity: serious
> > > Tags: patch
> > > 
> > > I've already submitted a patch upstream and it has been integrated.
> > > 
> > > http://sourceware.org/bugzilla/show_bug.cgi?id=5541
> > > 
> > > It should be backported to Etch.
> > > 
> > 
> > Is it ok to upload a glibc package with this patch to *stable*?
> 
> go ahead.
> 

I have just uploaded it.

-- 
  .''`.  Aurelien Jarno | GPG: 1024D/F1BCDB73
 : :' :  Debian developer   | Electrical Engineer
 `. `'   [EMAIL PROTECTED] | [EMAIL PROTECTED]
   `-people.debian.org/~aurel32 | www.aurel32.net



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#459322: libc6-dev: implementation of pthread_cleanup_pop_restore_np

2008-01-19 Thread Peter T. Breuer

One last attempt. I've copied the manpage exactly into the code. The
manpage says two example codes are "functionally equivalent" when
explaining what "pthread_cleanup_push_defer_np  and
pthread_cleanup_pop_restore_np" do. If one uses one of the manpage
example codes, everything works in the testcase code I supplied.  If one
uses the other of the manpage example example codes in the testcase code
I supplied, then the testcase code I supplied fails.

Summary:
---

The manpage (pthread_cleanup_pop_restore_np(3) 
example code that fails is:

   pthread_cleanup_push_defer_np(routine, arg);
   pthread_cleanup_pop_defer_np(execute);

The  manpage example code that works is:

  { int oldtype;
pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);
pthread_cleanup_push(routine, arg);
...
pthread_cleanup_pop(execute);
pthread_setcanceltype(oldtype, NULL);
  }

Reasoning:
--

This is what the manpage says about them:

=

  The following sequence


  pthread_cleanup_push_defer_np(routine, arg);
  pthread_cleanup_pop_defer_np(execute);


   is functionally equivalent to (but  more  compact  and  more  efficient
   than)


  { int oldtype;
pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);
pthread_cleanup_push(routine, arg);
...
pthread_cleanup_pop(execute);
pthread_setcanceltype(oldtype, NULL);
  }
=

Wel, the manpage is wrong.  You choose where the bug is.  But it's a bug.

Proof of claim:
--
The appended testcase code when compiled with

   gcc -Wall -g -o testp-2 testp-2.c

will use the following sequence from the manpage
in its rather trivial thread function code, and fail as a result:

=
pthread_cleanup_push_defer_np (routine, arg);

// now back in deferred cancellation mode
err = pthread_mutex_lock (&mutex);
if (err)
print_error (err, "pthread_mutex_lock", __LINE__);
mcount++;
execute = !err;

// here we go back to async mode and THEN unlock, too late
pthread_cleanup_pop_restore_np (execute);
=

This exactly matches the manual page. You can see the two functions
that the manpage names:

  pthread_cleanup_push_defer_np(routine, arg);
  pthread_cleanup_pop_defer_np(execute);

at the beginning and end of the code sequence above (hey, the man page
is missing an ellipsis between the two lines!).

This is what happens when one runs the compliled code:

  % ./testp-2
  (3908) parent created thread OK
  (3908) parent detached thread OK
  (3908) parent sleeps 2s
  (3909) child set async cancellation mode
  (3909) child sleeps 1s
  (3909) child wakes and starts cycling lock/unlock of mutex
  (3908) parent wakes after sleep
  (3908) parent starts sending cancels to child
  (3908) parent spots child died
  !!child died leaving lock set!!
1 threads created
1 cancel signals sent
2093121 lock cycles completed

The termination printout says that the thread function that was started
left a mutex locked after dying through receiving a cancel message. That
means it did not run the cleanup routine  as it was supposed to.

On the other hand, if one compiles the test code with

gcc -Wall -DMY_DONT_USE_DEFER_NP -g -pthread testp-2.c -o testp-2

Then the code will use the alternative sequence from the manpage in
the interior of its thread function (and attention, that sequence
has another defect ...  but one that is not exercised here; it
potentially can run a cleanup routine twice or more, but that depends on
implementation details within the pthread library).  This code sequence is:

=
int oldtype;

pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);
pthread_cleanup_push(routine, arg);

// now back in deferred cancellation mode
err = pthread_mutex_lock (&mutex);
if (err)
print_error (err, "pthread_mutex_lock", __LINE__);
mcount++;
execute = !err;

pthread_cleanup_pop(execute);
pthread_setcanceltype(oldtype, NULL);
=


and once again you can see that it is exactly the manpage code

  { int oldtype;
pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);
pthread_cleanup_push(routine, arg);
...
pthread_cleanup_pop(execute);
pthread_setcanceltype(oldtype, NULL);
  }

with the ellipsis replaced by those central 6 lines of code of mine
(which take a lock, print an error message if an error occurred, and
increment a count and then release

glibc override disparity

2008-01-19 Thread Debian Installer
There are disparities between your recently accepted upload and the
override file for the following file(s):

libc6-amd64_2.3.6.ds1-13etch5_i386.deb: package says priority is standard, 
override says optional.

Either the package or the override file is incorrect.  If you think
the override is correct and the package wrong please fix the package
so that this disparity is fixed in the next upload.  If you feel the
override is incorrect then please reply to this mail and explain why.

[NB: this is an automatically generated mail; if you replied to one
like it before and have not received a response yet, please ignore
this mail.  Your reply needs to be processed by a human and will be in
due course, but until then the installer will send these automated
mails; sorry.]

--
Debian distribution maintenance software

(This message was generated automatically; if you believe that there
is a problem with it please contact the archive administrators by
mailing [EMAIL PROTECTED])


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#461008: marked as done (locales: on install, perform locales generation in the background)

2008-01-19 Thread Debian Bug Tracking System
Your message dated Sat, 19 Jan 2008 20:17:43 +0200
with message-id <[EMAIL PROTECTED]>
and subject line Bug#461008: locales: on install, perform locales generation in 
the background
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: locales
Version: 2.7-5
Severity: wishlist

I have a dual AMD Opteron server on which I need to generate all the
available locales (I cannot predict what each user needs). This takes a
long time for each locales upgrade, during which some packages are in a
half-installed state. Perhaps the locales generation could be performed
in the background so that the rest of the installation could proceed? (I
haven't given too much thought to the implications of this, so feel free
to tell me it won't work :)

Thanks,
-- 
Fabian Fagerholm <[EMAIL PROTECTED]>


--- End Message ---
--- Begin Message ---
On Wed, 2008-01-16 at 08:24 +0100, Aurelien Jarno wrote:
> I don't think dpkg support this kind of thing. It should be possible to
> background the process without telling dpkg, but that just means we
> can't do any error handling.
>
> However, locales-all is probably the package you want to install.

We could probably come up with all sorts of interesting solutions, but
locales-all does seem to be best in this case. I guess you can always
put locales on hold, upgrade everything else, and then upgrade locales
separately. Or the other way around.

Thanks for making me think some more about this. I'm closing the bug
now. :)

-- 
Fabian Fagerholm <[EMAIL PROTECTED]>


signature.asc
Description: This is a digitally signed message part
--- End Message ---