Hi,
I released uClibc-ng 1.0.30 today.
Many thanks to Dave Flogeras who pushed me to my limits to
get the annyoing dlclose() issue fixed.
Short summary:
748422473 (HEAD -> master, tag: v1.0.30, origin/master, origin/HEAD,
github/master) bump for release 1.0.30
3f100edcc mention Tile architecture
14be0795f libdl: first execute all destructors, then munmap library
132decd2a libdl: calculate the length for second parameter of
munmap.
04a676f3c linuxthreads: implement pthread_condattr_{s,g}etclock()
d86bd3529 libdl: end must be bigger than start
8d7723d1c libdl: remove gcc warnings
d89de5cba libiconv: remove function, which is not available w/o
libiconv a4 macros
35105679b libdl: fix problem with unmapping
eb560ac79 libdl: better checking and logging for ctors/dtors
744e199bb libdl: remove dead code
0c8cc6e7e libdl: remove LDSO_NO_CLEANUP
07dfe7c86 libdl: cleanup old inline changelog
aaf1b2f56 Revert "libdl: fix dlclose() issue"
343fb004d common/sendfile.c: bugfix can't support offset is NULL
2d8a38e1a Revert "common/sendfile.c: bugfix can't support offset is
NULL"
ad6c75c47 lseek.c: bugfix ltp lseek01.c
b00fd230e common/sendfile.c: bugfix can't support offset is NULL
f42d18f06 or1k: add F_{DUPFD_CLOEXEC, SETPIPE_SZ, GETPIPE_SZ}
161d237ad use __NR_newfstatat only for modern Linux architectures
91e21d251 hppa: fix runtime issues
8be3a69f1 csky: support bsd-setjmp and bsd-_setjmp.
bf4c2d242 libdl: fix dlclose() issue
5bdc2b4de Revert "Revert "libdl: fix size parameter when unmap
library in dlclose""
490e84f5e tile: add basic support for tilegx
6e627523e sparc32: Add nop before __startcontext to stop unwinding
01e9f2f20 utils: fix compile of msgfmt/msgmerge
c03cce8f7 fenv: only allow for ppc e500
best regards
Waldemar
Hello,
In Buildroot, a number of packages fail to build because
pthread_contattr_setclock() is not implemented in linuxthreads (only in
NPTL). So far, we've worked around this problem by adding a dependency
on NPTL in packages that use pthread_condattr_setclock(), but it would
be nice if uClibc-ng could support this function in linuxthreads as
well.
Is there anything that prevents this from being supported in
linuxthreads ?
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
Hi,
I still having issues with dlclose().
Can anybody help me with this issue?
This is a long standing bug and still not solved.
Recently I reverted commit 952bb00f0b2eb576b0bf48c4f87018429a42e28d
in commit 5bdc2b4dee516c8e4d7ba9f5d26c9bf31418b52f, because
some Gentoo people reported issues with preparing stage1/stage2
images with this patch applied.
The problem which was fixed by accident with this commit is
segfaults in dlclose when running apache2 or php -m.
But the munmap() calls where just wrong.
Then I thought I found a real fix for the dlclose() segfaults in
the old uClibc bugtracker
https://bugs.busybox.net/show_bug.cgi?id=6158
I tested and pushed commit bf4c2d242f587700e3eb2ffd5721ddaf3cdbc7e5.
But this change introduces a regression when running the uClibc-ng
testsuite. When running testscope test, the test case fails, as
the function registered via atexit(), is no longer available after
dlclose() is executed.
Why the dlclose() function is so extremely complex in uClibc and
glibc? Musl seems to do nothing in dlclose() :/
Any help is really appreciated.
best regards
Waldemar
Those definitions exist on all other architectures, but were not
present in or1k specific headers when or1k support was merged.
On the kernel side, their support is completely architecture
independent, so we just need those definitions to make those fcntl()
calls available on or1k.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni(a)bootlin.com>
---
libc/sysdeps/linux/or1k/bits/fcntl.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libc/sysdeps/linux/or1k/bits/fcntl.h b/libc/sysdeps/linux/or1k/bits/fcntl.h
index bd6a8c511..a82ede424 100644
--- a/libc/sysdeps/linux/or1k/bits/fcntl.h
+++ b/libc/sysdeps/linux/or1k/bits/fcntl.h
@@ -102,6 +102,10 @@
# define F_SETLEASE 1024 /* Set a lease. */
# define F_GETLEASE 1025 /* Enquire what lease is active. */
# define F_NOTIFY 1026 /* Request notfications on a directory. */
+# define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
+# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
+# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
#endif
/* For F_[GET|SET]FL. */
--
2.14.3
Hi,
Ata, John (US) wrote,
> Hi all,
>
>
>
> With Spectre variant 2 (CVE-2017-5715), gcc has been updated to avoid branch
> prediction problems via the retpoline patch. Specifically, by using either –
> mindirect-branch=thunk-inline or –mindirect-branch=thunk or –mindirect-branch-
> thunk-external, the compiler will convert indirect branches and function
> returns to call and return thunks thus avoiding speculative execution in those
> cases. Of course, there is a performance penalty depending on the exact
> argument used. Has anyone compiled uclibc with one of those switches?
I didn't tried it, yet. You might be the first :)
Any issues seen with that?
best regards
Waldemar
Hi Waldemar,
I see in commit e65912f8b2a6 ("rework most tests to work as standalone package")
"tst-atomic" and "tst-atomic-long" were marked as disabled for all architectures
as opposed to previously (in times of test-suite being a part of uClibc) disabled
only for selected arches (IA64, MIPS and SPARC).
The only guess I have it was done due to inability to refer not-exported "atomic.h".
Is that correct? But anyways I'm looking at a possibility to revive those as they
might be of use especially in case of emulation of atomics.
Any thoughts on how that could be done?
-Alexey
Hi all,
With Spectre variant 2 (CVE-2017-5715), gcc has been updated to avoid branch prediction problems via the retpoline patch. Specifically, by using either -mindirect-branch=thunk-inline or -mindirect-branch=thunk or -mindirect-branch-thunk-external, the compiler will convert indirect branches and function returns to call and return thunks thus avoiding speculative execution in those cases. Of course, there is a performance penalty depending on the exact argument used. Has anyone compiled uclibc with one of those switches?
Take care,
----
John Ata, CISSP
Senior Principal Software Engineer
Electronics Systems
STOP Operating System<http://www.baesystems.com/en-us/product/stop> Software Development
T 703-563-8115 | F 703-668-4359 | john.ata(a)baesystems.com<mailto:john.ata@baesystems.com>
http://www.baesystems.com/csp
[cid:image001.png@01D138BC.8E54E330][cid:image003.png@01D138BC.8E54E330]<http://www.twitter.com/baesystemsinc>[cid:image004.png@01D138BC.8E54E330]<http://www.youtube.com/baesystemsinc>[cid:image006.png@01D138BC.8E54E330]<http://www.flickr.com/photos/baesystemsinc/>