[PATCH newlib] libc/include/malloc.h: Add prototype for GNU extension malloc_usable_size()
Joel Sherrill
joel@rtems.org
Tue Mar 15 15:44:33 GMT 2022
On Tue, Mar 15, 2022, 10:38 AM C Howland <cc1964t@gmail.com> wrote:
> >
> > ------------------------------
> > *From:* Newlib <newlib-bounces+craig.howland=caci.com@sourceware.org> on
> > behalf of Joel Sherrill <joel@rtems.org>
> > *Sent:* Tuesday, March 15, 2022 11:16 AM
> > *To:* newlib@sourceware.org <newlib@sourceware.org>
> > *Subject:* [PATCH newlib] libc/include/malloc.h: Add prototype for GNU
> > extension malloc_usable_size()
> >
> >
> > This is not provided by the newlib malloc implementation but may
> > be available in external implementations.
> > ---
> > newlib/libc/include/malloc.h | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/newlib/libc/include/malloc.h b/newlib/libc/include/malloc.h
> > index a9dc5bca6..e73095e1e 100644
> > --- a/newlib/libc/include/malloc.h
> > +++ b/newlib/libc/include/malloc.h
> > @@ -137,6 +137,10 @@ extern void __malloc_lock(struct _reent *);
> >
> > extern void __malloc_unlock(struct _reent *);
> >
> > +#if __GNU_VISIBLE
> > +extern size_t malloc_usable_size(void *);
> > +#endif
> > +
> > /* A compatibility routine for an earlier version of the allocator. */
> >
> > extern void mstats (char *);
> > --
> > 2.24.4
> >
> >
> Sorry, but I fail to see why adding this makes sense. If there's an
> application which adds a function they should be editing the header file
> when they add it. (There's not even a stub being supplied here.)
> Additionally, the Linux man page for the function says "The main use of
> this function is for debugging and introspection." That is, it is not even
> a general application utility, but of very limited use. Either provide the
> function with the prototype or no prototype.
>
RTEMS provides its own malloc family implementation and we are providing
it. I can wrap all that in an RTEMS conditional if you like.
I have no experience with the malloc implementation in Newlib or any idea
how to implement it.
--joel
> Craig
>
More information about the Newlib
mailing list