* pthread_cleanup_push_defer_np.3: missing functions in glibc
@ 2021-03-08 10:35 Alejandro Colomar (man-pages)
2021-03-08 10:39 ` Florian Weimer
2021-03-08 11:05 ` Andreas Schwab
0 siblings, 2 replies; 6+ messages in thread
From: Alejandro Colomar (man-pages) @ 2021-03-08 10:35 UTC (permalink / raw)
To: Michael Kerrisk (man-pages), Florian Weimer; +Cc: linux-man, libc-alpha
Hi Michael, Florian,
While adding 'restrict' to the prototypes, I found that the functions
defined in this page don't exist on glibc (or I couldn't find them).
I tried removing _np, and still no luck, and 'git log --grep' didn't
help either. Where these functions removed at some point?
Thanks,
Alex
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: pthread_cleanup_push_defer_np.3: missing functions in glibc
2021-03-08 10:35 pthread_cleanup_push_defer_np.3: missing functions in glibc Alejandro Colomar (man-pages)
@ 2021-03-08 10:39 ` Florian Weimer
2021-03-08 10:54 ` Alejandro Colomar (man-pages)
2021-03-08 11:05 ` Andreas Schwab
1 sibling, 1 reply; 6+ messages in thread
From: Florian Weimer @ 2021-03-08 10:39 UTC (permalink / raw)
To: Alejandro Colomar (man-pages)
Cc: Michael Kerrisk (man-pages), linux-man, libc-alpha
* Alejandro Colomar:
> While adding 'restrict' to the prototypes, I found that the functions
> defined in this page don't exist on glibc (or I couldn't find them).
> I tried removing _np, and still no luck, and 'git log --grep' didn't
> help either. Where these functions removed at some point?
Yes, they are part of the legacy cancellation implementation that
predates DWARF unwinding.
Thanks,
Florian
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: pthread_cleanup_push_defer_np.3: missing functions in glibc
2021-03-08 10:39 ` Florian Weimer
@ 2021-03-08 10:54 ` Alejandro Colomar (man-pages)
2021-03-08 11:27 ` Florian Weimer
0 siblings, 1 reply; 6+ messages in thread
From: Alejandro Colomar (man-pages) @ 2021-03-08 10:54 UTC (permalink / raw)
To: Florian Weimer; +Cc: Michael Kerrisk (man-pages), linux-man, libc-alpha
Hi Florian,
On 3/8/21 11:39 AM, Florian Weimer wrote:
> * Alejandro Colomar:
>
>> While adding 'restrict' to the prototypes, I found that the functions
>> defined in this page don't exist on glibc (or I couldn't find them).
>> I tried removing _np, and still no luck, and 'git log --grep' didn't
>> help either. Where these functions removed at some point?
>
> Yes, they are part of the legacy cancellation implementation that
> predates DWARF unwinding.
Thanks for the info. I guess we should add that to the manual page.
I've tried checking out some quite old versions of glibc and still
didn't find the functions. If you know more details about when they
were removed, please tell me and I'll update it.
Thanks,
Alex
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: pthread_cleanup_push_defer_np.3: missing functions in glibc
2021-03-08 10:35 pthread_cleanup_push_defer_np.3: missing functions in glibc Alejandro Colomar (man-pages)
2021-03-08 10:39 ` Florian Weimer
@ 2021-03-08 11:05 ` Andreas Schwab
2021-03-08 13:12 ` Alejandro Colomar (man-pages)
1 sibling, 1 reply; 6+ messages in thread
From: Andreas Schwab @ 2021-03-08 11:05 UTC (permalink / raw)
To: Alejandro Colomar (man-pages) via Libc-alpha
Cc: Michael Kerrisk (man-pages), Florian Weimer,
Alejandro Colomar (man-pages), linux-man
On Mär 08 2021, Alejandro Colomar (man-pages) via Libc-alpha wrote:
> While adding 'restrict' to the prototypes, I found that the functions
> defined in this page don't exist on glibc (or I couldn't find them).
sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
"And now for something completely different."
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: pthread_cleanup_push_defer_np.3: missing functions in glibc
2021-03-08 10:54 ` Alejandro Colomar (man-pages)
@ 2021-03-08 11:27 ` Florian Weimer
0 siblings, 0 replies; 6+ messages in thread
From: Florian Weimer @ 2021-03-08 11:27 UTC (permalink / raw)
To: Alejandro Colomar (man-pages)
Cc: Michael Kerrisk (man-pages), linux-man, libc-alpha
* Alejandro Colomar:
> Hi Florian,
>
> On 3/8/21 11:39 AM, Florian Weimer wrote:
>> * Alejandro Colomar:
>>
>>> While adding 'restrict' to the prototypes, I found that the functions
>>> defined in this page don't exist on glibc (or I couldn't find them).
>>> I tried removing _np, and still no luck, and 'git log --grep' didn't
>>> help either. Where these functions removed at some point?
>> Yes, they are part of the legacy cancellation implementation that
>> predates DWARF unwinding.
>
> Thanks for the info. I guess we should add that to the manual
> page. I've tried checking out some quite old versions of glibc and
> still didn't find the functions. If you know more details about when
> they were removed, please tell me and I'll update it.
LinuxThreads had this:
/* Install a cleanup handler as pthread_cleanup_push does, but also
saves the current cancellation type and set it to deferred cancellation. */
#define pthread_cleanup_push_defer_np(routine,arg) \
{ struct _pthread_cleanup_buffer _buffer; \
_pthread_cleanup_push_defer (&_buffer, (routine), (arg));
extern void _pthread_cleanup_push_defer __P ((struct _pthread_cleanup_buffer *__buffer,
void (*__routine) (void *),
void *__arg));
This is from sysdeps/pthread/pthread.h in
glibc-linuxthreads-2.0.1.tar.gz. It was part of an add-on, not glibc
proper. This may make it a bit difficult to identify the release where
it was definitely removed.
Thanks,
Florian
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: pthread_cleanup_push_defer_np.3: missing functions in glibc
2021-03-08 11:05 ` Andreas Schwab
@ 2021-03-08 13:12 ` Alejandro Colomar (man-pages)
0 siblings, 0 replies; 6+ messages in thread
From: Alejandro Colomar (man-pages) @ 2021-03-08 13:12 UTC (permalink / raw)
To: Andreas Schwab, Alejandro Colomar (man-pages) via Libc-alpha
Cc: Michael Kerrisk (man-pages), Florian Weimer, linux-man
On 3/8/21 12:05 PM, Andreas Schwab wrote:
> On Mär 08 2021, Alejandro Colomar (man-pages) via Libc-alpha wrote:
>
>> While adding 'restrict' to the prototypes, I found that the functions
>> defined in this page don't exist on glibc (or I couldn't find them).
>
> sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
> sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
> sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
> sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
> sysdeps/nptl/pthread.h:# define pthread_cleanup_push_defer_np(routine, arg) \
> sysdeps/nptl/pthread.h:# define pthread_cleanup_pop_restore_np(execute) \
>
> Andreas.
>
D'oh! I was writing *phtread* all the time (and I suspected that I was
writing a typo, and still didn't find it :p ). Never mind.
Thanks,
Alex
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-03-08 13:13 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-03-08 10:35 pthread_cleanup_push_defer_np.3: missing functions in glibc Alejandro Colomar (man-pages)
2021-03-08 10:39 ` Florian Weimer
2021-03-08 10:54 ` Alejandro Colomar (man-pages)
2021-03-08 11:27 ` Florian Weimer
2021-03-08 11:05 ` Andreas Schwab
2021-03-08 13:12 ` Alejandro Colomar (man-pages)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox