* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
@ 2003-03-26 7:55 Berthold Gunreben
2003-03-26 11:57 ` Joel Soete
0 siblings, 1 reply; 9+ messages in thread
From: Berthold Gunreben @ 2003-03-26 7:55 UTC (permalink / raw)
To: parisc-linux
"Berthold Gunreben" <b.gunreben@web.de> schrieb am 26.03.03 08:15:30:
> I was not successful to compile your current version:
Sorry, my fault. I am recompiling now.
Berthold
______________________________________________________________________________
Ihre Freunde sind in Italien? Schicken Sie ihnen trotzdem eine SMS
mit WEB.DE FreeMail http://freemail.web.de/features/?mc=021172
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 7:55 [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel Berthold Gunreben
@ 2003-03-26 11:57 ` Joel Soete
2003-03-26 14:09 ` Carlos O'Donell
2003-03-26 14:17 ` Joel Soete
0 siblings, 2 replies; 9+ messages in thread
From: Joel Soete @ 2003-03-26 11:57 UTC (permalink / raw)
To: Berthold Gunreben, parisc-linux
Hi Carlos,
A grab your last patches and original src from ftp.gnu.org and in your patch
glibc23-05b-hppa-sysdep, the second hunk was rejected and so I change it
as follow:
=====
--- glibc-2.3.2/sysdeps/unix/sysv/linux/hppa/sysdep.h.orig 2002-08-26 23:16:19.000000000
+0200
+++ glibc-2.3.2/sysdeps/unix/sysv/linux/hppa/sysdep.h 2003-03-26 12:41:50.000000000
+0100
@@ -101,20 +101,27 @@
which means
ENTRY(name)
DO_CALL(...)
- nop
bv 0(2)
nop
*/
#define PSEUDO(name, syscall_name, args) \
ENTRY (name) \
- DO_CALL(syscall_name, args) ASM_LINE_SEP \
- nop
+ DO_CALL(syscall_name, args) ASM_LINE_SEP
#undef PSEUDO_END
#define PSEUDO_END(name) \
END (name)
+#define PSEUDO_NOERRNO(name, syscall_name, args) \
+ ENTRY (name) \
+ DO_CALL_NOERRNO(syscall_name, args) ASM_LINE_SEP
+
+#undef PSEUDO_END_NOERRNO
+#define PSEUDO_END_NOERRNO(name) \
+ END (name)
+
+#undef JUMPTARGET
#define JUMPTARGET(name) name
#define SYSCALL_PIC_SETUP /* Nothing. */
@@ -165,6 +172,13 @@
0: ASM_LINE_SEP \
UNDOARGS_##args
+#undef DO_CALL_NOERRNO
+#define DO_CALL_NOERRNO(syscall_name, args) \
+ DOARGS_##args \
+ ble 0x100(%sr2,%r0) ASM_LINE_SEP \
+ ldi SYS_ify (syscall_name), %r20 ASM_LINE_SEP \
+ UNDOARGS_##args
+
#define DOARGS_0 /* nothing */
#define DOARGS_1 /* nothing */
#define DOARGS_2 /* nothing */
@@ -183,7 +197,7 @@
#define UNDOARGS_5 /* nothing */
#define UNDOARGS_6 /* nothing */
-#else
+#else /* !__ASSEMBLER__ */
#undef INLINE_SYSCALL
#define INLINE_SYSCALL(name, nr, args...) ({ \
@@ -206,6 +220,35 @@
__sys_res; \
})
+#undef INTERNAL_SYSCALL_DECL
+#define INTERNAL_SYSCALL_DECL(err) do { } while (0)
+
+#undef INTERNAL_SYSCALL_ERROR_P
+#define INTERNAL_SYSCALL_ERROR_P(val, err) \
+ ((unsigned long) (val) >= -4095L)
+
+#undef INTERNAL_SYSCALL_ERRNO
+#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val))
+
+/* Similar to INLINE_SYSCALL but we don't set errno */
+#undef INTERNAL_SYSCALL
+#define INTERNAL_SYSCALL(name, err, nr, args...) \
+({ \
+ long __sys_res; \
+ { \
+ register unsigned long __res asm("r28"); \
+ LOAD_ARGS_##nr(args) \
+ asm volatile( \
+ "ble 0x100(%%sr2, %%r0)\n\t" \
+ " ldi %1, %%r20" \
+ : "=r" (__res) \
+ : "i" (SYS_ify(name)) ASM_ARGS_##nr \
+ ); \
+ __sys_res = __res; \
+ } \
+ __sys_res; \
+ })
+
#define LOAD_ARGS_0()
#define LOAD_ARGS_1(r26) \
register unsigned long __r26 __asm__("r26") = (unsigned long)r26; \
=====
Or do I grab bad src?
Joel
---------------------------------
Vous surfez avec une ligne classique ?
Economisez jusqu'à 25% avec Tiscali Complete !
Offre spéciale : première année d'abonnement offerte.
... Plus d'info sur http://complete.tiscali.be
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 11:57 ` Joel Soete
@ 2003-03-26 14:09 ` Carlos O'Donell
2003-03-26 14:21 ` Joel Soete
2003-03-26 14:17 ` Joel Soete
1 sibling, 1 reply; 9+ messages in thread
From: Carlos O'Donell @ 2003-03-26 14:09 UTC (permalink / raw)
To: Joel Soete; +Cc: Berthold Gunreben, parisc-linux
> A grab your last patches and original src from ftp.gnu.org and in your patch
> glibc23-05b-hppa-sysdep, the second hunk was rejected and so I change it
CVS head and it will apply fine.
c.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 14:09 ` Carlos O'Donell
@ 2003-03-26 14:21 ` Joel Soete
0 siblings, 0 replies; 9+ messages in thread
From: Joel Soete @ 2003-03-26 14:21 UTC (permalink / raw)
To: Carlos O'Donell; +Cc: Berthold Gunreben, parisc-linux
>> A grab your last patches and original src from ftp.gnu.org and in your
>patch
>> glibc23-05b-hppa-sysdep, the second hunk was rejected and so I change
it
>
>CVS head and it will apply fine.
>
Ah ok (I didn't though to this)
Thanks,
Joel
---------------------------------
Vous surfez avec une ligne classique ?
Economisez jusqu'à 25% avec Tiscali Complete !
Offre spéciale : première année d'abonnement offerte.
... Plus d'info sur http://complete.tiscali.be
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 11:57 ` Joel Soete
2003-03-26 14:09 ` Carlos O'Donell
@ 2003-03-26 14:17 ` Joel Soete
2003-03-26 15:07 ` Carlos O'Donell
1 sibling, 1 reply; 9+ messages in thread
From: Joel Soete @ 2003-03-26 14:17 UTC (permalink / raw)
To: Berthold Gunreben, parisc-linux; +Cc: Carlos O'Donell
Hi Carlos,
>
>A grab your last patches and original src from ftp.gnu.org and in your patch
>glibc23-05b-hppa-sysdep, the second hunk was rejected and so I change it
>as follow:
>=====
>--- glibc-2.3.2/sysdeps/unix/sysv/linux/hppa/sysdep.h.orig 2002-08-26 23:16:19.000000000
>+0200
>+++ glibc-2.3.2/sysdeps/unix/sysv/linux/hppa/sysdep.h 2003-03-26 12:41:50.000000000
>+0100
>@@ -101,20 +101,27 @@
> which means
> ENTRY(name)
> DO_CALL(...)
>- nop
> bv 0(2)
> nop
> */
>
> #define PSEUDO(name, syscall_name, args) \
> ENTRY (name) \
>- DO_CALL(syscall_name, args) ASM_LINE_SEP \
>- nop
>+ DO_CALL(syscall_name, args) ASM_LINE_SEP
>
> #undef PSEUDO_END
> #define PSEUDO_END(name) \
> END (name)
>
>+#define PSEUDO_NOERRNO(name, syscall_name, args) \
>+ ENTRY (name) \
>+ DO_CALL_NOERRNO(syscall_name, args) ASM_LINE_SEP
>+
>+#undef PSEUDO_END_NOERRNO
>+#define PSEUDO_END_NOERRNO(name) \
>+ END (name)
>+
>+#undef JUMPTARGET
> #define JUMPTARGET(name) name
> #define SYSCALL_PIC_SETUP /* Nothing. */
>
>@@ -165,6 +172,13 @@
> 0: ASM_LINE_SEP \
> UNDOARGS_##args
>
>+#undef DO_CALL_NOERRNO
>+#define DO_CALL_NOERRNO(syscall_name, args) \
>+ DOARGS_##args \
>+ ble 0x100(%sr2,%r0) ASM_LINE_SEP \
>+ ldi SYS_ify (syscall_name), %r20 ASM_LINE_SEP \
>+ UNDOARGS_##args
>+
> #define DOARGS_0 /* nothing */
> #define DOARGS_1 /* nothing */
> #define DOARGS_2 /* nothing */
>@@ -183,7 +197,7 @@
> #define UNDOARGS_5 /* nothing */
> #define UNDOARGS_6 /* nothing */
>
>-#else
>+#else /* !__ASSEMBLER__ */
>
> #undef INLINE_SYSCALL
> #define INLINE_SYSCALL(name, nr, args...) ({ \
>@@ -206,6 +220,35 @@
> __sys_res; \
> })
>
>+#undef INTERNAL_SYSCALL_DECL
>+#define INTERNAL_SYSCALL_DECL(err) do { } while (0)
>+
>+#undef INTERNAL_SYSCALL_ERROR_P
>+#define INTERNAL_SYSCALL_ERROR_P(val, err) \
>+ ((unsigned long) (val) >= -4095L)
>+
>+#undef INTERNAL_SYSCALL_ERRNO
>+#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val))
>+
>+/* Similar to INLINE_SYSCALL but we don't set errno */
>+#undef INTERNAL_SYSCALL
>+#define INTERNAL_SYSCALL(name, err, nr, args...) \
>+({ \
>+ long __sys_res; \
>+ { \
>+ register unsigned long __res asm("r28"); \
>+ LOAD_ARGS_##nr(args) \
>+ asm volatile( \
>+ "ble 0x100(%%sr2, %%r0)\n\t" \
>+ " ldi %1, %%r20" \
>+ : "=r" (__res) \
>+ : "i" (SYS_ify(name)) ASM_ARGS_##nr \
>+ ); \
>+ __sys_res = __res; \
>+ } \
>+ __sys_res; \
>+ })
>+
> #define LOAD_ARGS_0()
> #define LOAD_ARGS_1(r26) \
> register unsigned long __r26 __asm__("r26") = (unsigned long)r26; \
>=====
>
>Or do I grab bad src?
>
Well that help me to complet the rebuild of libc6; excepted that at one moment
I had to kill a 'tst-cancel-stat' because it was eating 99% of cpu usage.
As it was evidently looping, strace -p 31611 shows me hundred of thousand
messages: kill(31610, SIGRT_1) =-1 (no such process)
hth,
Joel
Joel
---------------------------------
Vous surfez avec une ligne classique ?
Economisez jusqu'à 25% avec Tiscali Complete !
Offre spéciale : première année d'abonnement offerte.
... Plus d'info sur http://complete.tiscali.be
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 14:17 ` Joel Soete
@ 2003-03-26 15:07 ` Carlos O'Donell
2003-03-26 18:12 ` Joel Soete
0 siblings, 1 reply; 9+ messages in thread
From: Carlos O'Donell @ 2003-03-26 15:07 UTC (permalink / raw)
To: Joel Soete; +Cc: parisc-linux
> I had to kill a 'tst-cancel-stat' because it was eating 99% of cpu usage.
> As it was evidently looping, strace -p 31611 shows me hundred of thousand
> messages: kill(31610, SIGRT_1) =-1 (no such process)
Yes, I've noticed this, and I'm not sure why it's doing that. It's the
only test that fails this way. The rest just SIGSEGV, which again means
I need to keep debugging the syscall/errno code.
I'll post an update after running some tests on my current patches.
Thanks for trying that out Joel. What hardware are you testing this on?
c.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
2003-03-26 15:07 ` Carlos O'Donell
@ 2003-03-26 18:12 ` Joel Soete
0 siblings, 0 replies; 9+ messages in thread
From: Joel Soete @ 2003-03-26 18:12 UTC (permalink / raw)
To: Carlos O'Donell; +Cc: parisc-linux
>
>> I had to kill a 'tst-cancel-stat' because it was eating 99% of cpu usage.
>> As it was evidently looping, strace -p 31611 shows me hundred of thousand
>> messages: kill(31610, SIGRT_1) =-1 (no such process)
>
>Yes, I've noticed this, and I'm not sure why it's doing that. It's the
>only test that fails this way. The rest just SIGSEGV, which again means
>I need to keep debugging the syscall/errno code.
>
>I'll post an update after running some tests on my current patches.
>Thanks for trying that out Joel. What hardware are you testing this on?
>
Sorry I forgot to mentionned; I take the opportunity of a n4k with 2g of
mem to make compile quickest (no swaping at all with so big mem amount) and
so running a 2.4.20-pa32 64bits (up) with an unstable debian.
Joel
---------------------------------
Vous surfez avec une ligne classique ?
Economisez jusqu'à 25% avec Tiscali Complete !
Offre spéciale : première année d'abonnement offerte.
... Plus d'info sur http://complete.tiscali.be
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel
@ 2003-03-26 7:14 Berthold Gunreben
0 siblings, 0 replies; 9+ messages in thread
From: Berthold Gunreben @ 2003-03-26 7:14 UTC (permalink / raw)
To: parisc-linux
Hi Carlos,
Carlos O'Donell <carlos@baldric.uwo.ca> schrieb am 26.03.03 00:41:24:
> Patches updated:
> http://www.baldric.uwo.ca/~carlos/glibc-2.3.2-patches.tar.gz
>
> Still no luck on getting sysdep-cancel to work. I'll need another pair
> of eyes to look at the assembly in sysdep-cancel.h
I was successful to compile the first version of your patches (after fixing the map
part). Here is the output of
# /lib/libc.so.6
GNU C Library stable release version 2.3.2, by Roland McGrath et al.
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.3 20030226 (prerelease) (SuSE Linux).
Compiled on a Linux 2.4.19 system on 2003-03-25.
Available extensions:
GNU libio by Per Bothner
crypt add-on version 2.1 by Michael Glad and others
linuxthreads-0.10 by Xavier Leroy
BIND-8.2.3-T5B
libthread_db work sponsored by Alpha Processor Inc
NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Report bugs using the `glibcbug' script to <bugs@gnu.org>.
I was not successful to compile your current version:
gcc ../sysdeps/unix/sysv/linux/sigprocmask.c -c -std=gnu99 -O2 -Wall -Winline -W
strict-prototypes -Wwrite-strings -fstrict-aliasing -g -mpa-risc-1-1 -I../i
nclude -I. -I/usr/src/packages/BUILD/glibc-2.3.2/cc/signal -I.. -I../libio -I/u
sr/src/packages/BUILD/glibc-2.3.2/cc -I../sysdeps/hppa/elf -I../linuxthreads/sys
deps/unix/sysv/linux/hppa -I../linuxthreads/sysdeps/unix/sysv/linux -I../linuxth
reads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/sysdeps/unix/sysv -
I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/hppa -I../sysdeps/unix/s
ysv/linux/hppa -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/c
ommon -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../
sysdeps/unix -I../sysdeps/posix -I../sysdeps/hppa/hppa1.1 -I../sysdeps/wordsize-
32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/
ldbl-128 -I../sysdeps/hppa/fpu -I../sysdeps/hppa -I../sysdeps/ieee754 -I../sysde
ps/generic/elf -I../sysdeps/generic -nostdinc -isystem /usr/lib/gcc-lib/hppa-su
se-linux/3.3/include -isystem /usr/src/packages/BUILD/kernel-headers -D_LIBC_REE
NTRANT -include ../include/libc-symbols.h -o /usr/src/packages/BUILD/glibc
-2.3.2/cc/signal/sigprocmask.o
(echo '#include <sysdep.h>'; \
echo 'PSEUDO (__kill, kill, 2)'; \
echo ' ret'; \
echo 'PSEUDO_END(__kill)'; \
echo 'libc_hidden_def (__kill)'; \
echo 'weak_alias (__kill, kill)'; \
echo 'libc_hidden_weak (kill)'; \
) | gcc -c -I../include -I. -I/usr/src/packages/BUILD/glibc-2.3.2/cc/signal -I.
. -I../libio -I/usr/src/packages/BUILD/glibc-2.3.2/cc -I../sysdeps/hppa/elf -I.
./linuxthreads/sysdeps/unix/sysv/linux/hppa -I../linuxthreads/sysdeps/unix/sysv/
linux -I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/s
ysdeps/unix/sysv -I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/hppa -
I../sysdeps/unix/sysv/linux/hppa -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -
I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysde
ps/unix/sysv -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/hppa/hppa1.1 -I..
/sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64 -I.
./sysdeps/ieee754/ldbl-128 -I../sysdeps/hppa/fpu -I../sysdeps/hppa -I../sysdeps/
ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem /usr/l
ib/gcc-lib/hppa-suse-linux/3.3/include -isystem /usr/src/packages/BUILD/kernel-h
eaders -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DASSEMBLER
-x assembler-with-cpp -o /usr/src/packages/BUILD/glibc-2.3.2/cc/signal/kill.o -
<stdin>: Assembler messages:
<stdin>:2: Fatal error: Unknown opcode: `do_call_noerrno(kill, 2)'
make[2]: *** [/usr/src/packages/BUILD/glibc-2.3.2/cc/signal/kill.o] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/glibc-2.3.2/signal'
make[1]: *** [signal/subdir_lib] Error 2
I still have to look into my patches, if they correct compared to your original
patches. If you want me to run the test suite on the old version, I can recompile that
version.
Berthold
______________________________________________________________________________
Ihre Freunde sind in Italien? Schicken Sie ihnen trotzdem eine SMS
mit WEB.DE FreeMail http://freemail.web.de/features/?mc=021172
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [parisc-linux] Glibc 2.3.2 failures and possible fixes?
@ 2003-03-25 17:17 Carlos O'Donell
2003-03-25 18:01 ` Joel Soete
0 siblings, 1 reply; 9+ messages in thread
From: Carlos O'Donell @ 2003-03-25 17:17 UTC (permalink / raw)
To: Joel Soete; +Cc: parisc-linux
>
> I also find:
>
> into dynamic-link.h
> auto void __attribute__((always_inline))
> elf_machine_rela_relative (ElfW(Addr) l_addr, const ElfW(Rela) *reloc,
> ElfW(Addr) *const reloc_addr);
>
> into sysdeps/hppa/dl-machine.h:
> auto void __attribute__((always_inline))
> elf_machine_rela_relative (struct link_map *map, Elf32_Addr l_addr,
> const Elf32_Rela *reloc,
> Elf32_Addr *const reloc_addr)
>
Missing patch. My bad.
I'll update in a few hours with a new sysdep-cancel patch.
Thanks for testing Joel!
c.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [parisc-linux] Glibc 2.3.2 failures and possible fixes?
2003-03-25 17:17 [parisc-linux] Glibc 2.3.2 failures and possible fixes? Carlos O'Donell
@ 2003-03-25 18:01 ` Joel Soete
2003-03-25 23:40 ` [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel Carlos O'Donell
0 siblings, 1 reply; 9+ messages in thread
From: Joel Soete @ 2003-03-25 18:01 UTC (permalink / raw)
To: Carlos O'Donell; +Cc: parisc-linux
>>
>> I also find:
>>
>> into dynamic-link.h
>> auto void __attribute__((always_inline))
>> elf_machine_rela_relative (ElfW(Addr) l_addr, const ElfW(Rela) *reloc,
>> ElfW(Addr) *const reloc_addr);
>>
>> into sysdeps/hppa/dl-machine.h:
>> auto void __attribute__((always_inline))
>> elf_machine_rela_relative (struct link_map *map, Elf32_Addr l_addr,
>> const Elf32_Rela *reloc,
>> Elf32_Addr *const reloc_addr)
>>
>
>Missing patch. My bad.
Don't worry.
>I'll update in a few hours with a new sysdep-cancel patch.
I will waiting for :)
>
>Thanks for testing Joel!
>
You know how much am i interested. I know my knowledge is limited but I try
to do my best.
Always wellcome and thanks for your attention,
Joel
---------------------------------
Vous surfez avec une ligne classique ?
Economisez jusqu'à 25% avec Tiscali Complete !
Offre spéciale : première année d'abonnement offerte.
... Plus d'info sur http://complete.tiscali.be
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2003-03-26 18:13 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-26 7:55 [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel Berthold Gunreben
2003-03-26 11:57 ` Joel Soete
2003-03-26 14:09 ` Carlos O'Donell
2003-03-26 14:21 ` Joel Soete
2003-03-26 14:17 ` Joel Soete
2003-03-26 15:07 ` Carlos O'Donell
2003-03-26 18:12 ` Joel Soete
-- strict thread matches above, loose matches on Subject: below --
2003-03-26 7:14 Berthold Gunreben
2003-03-25 17:17 [parisc-linux] Glibc 2.3.2 failures and possible fixes? Carlos O'Donell
2003-03-25 18:01 ` Joel Soete
2003-03-25 23:40 ` [parisc-linux] glibc 2.3.2 patches updated, still no working sysdep-cancel Carlos O'Donell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.