[Buildroot] [PATCH 1/1] package/libressl: needs MMU
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Tue Jul 25 07:32:30 UTC 2017
Hello,
On Mon, 24 Jul 2017 23:07:03 +0200, Waldemar Brodkorb wrote:
> > On this one, I'd like to have the feedback from Waldemar. Indeed,
> > libressl is not using fork(), but __register_atfork(), which uClibc
> > does not implement, and I've not found why it doesn't exist for noMMU
> > platforms.
>
> From the comment in the header:
> "Register handlers to execute before and after `fork'"
>
> As this is a feature only available when fork() is there, this isn't
> available for noMMU platforms.
Well, there could have been a dummy __register_atfork(), which does
nothing on noMMU. Indeed, you can imagine a library registering a
callback using __register_atfork(), but not using itself the fork()
system call. Such a library would be OK for a noMMU platform.
> It was added in this commit:
> https://github.com/libressl-portable/portable/commit/32d9eeeecf4e951e1566d5f4a42b36ea37b60f35
>
> But I think the commit log isn't correct, as pthread_atfork can be
> used for glibc, musl and uClibc-ng. (for glibc -lpthread must be
> added)
>
> One possible solution might be, to check for __register_atfork, if
> it does not exist, fallback to pthread_atfork, if it does not exist
> provide a pthread_atfork dummy (noMMU case).
This should be doable without too much effort I believe.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
More information about the buildroot
mailing list