This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: pthread_attr_[sg]etguardsize()
- To: Bruce <bruce at puremagic dot com>
- Subject: Re: pthread_attr_[sg]etguardsize()
- From: Kaz Kylheku <kaz at ashi dot footprints dot net>
- Date: Mon, 30 Oct 2000 00:25:51 -0800 (PST)
- cc: libc-alpha at sources dot redhat dot com
On Mon, 30 Oct 2000, Bruce wrote:
> If this is something worth fixing, I think that the attached
> patch should fix it. My only uncertainty about the patch is
> whether or not the symbols for pthread_attr_[sg]etguardsize()
> needed to be versioned. (I suspect that they do, but I wasn't
> clear on how to actually do that correctly and didn't see
> anything relevant in the manual.)
As a rule, any functions that access newly added members must be versioned;
since these members do not exist in the old versions of structures allocated by
existing executables.
However, I don't see the need to remember two integers related to the guard
size; it's enough simply to record the specified guard size, and round it up
internally when it is used. This way you subtly change the meaning of the
existing structure member, and no versioning is needed (unless it is deemed
necessary to provide the old behavior to old clients).