|
|
Subscribe / Log in / New account

C library system-call wrappers, or the lack thereof

C library system-call wrappers, or the lack thereof

Posted Nov 13, 2018 16:26 UTC (Tue) by pm215 (subscriber, #98099)
In reply to: C library system-call wrappers, or the lack thereof by pctammela
Parent article: C library system-call wrappers, or the lack thereof

I would expect the BSD model to mean that the kernel and libc developers were more likely to be the same people, or on the same mailing lists, or at least talking to each other more often before and during implementation of new APIs, which ought to lead to fewer instances of "we added this API to the kernel but it doesn't work at the libc level"...


to post comments

C library system-call wrappers, or the lack thereof

Posted Nov 13, 2018 19:47 UTC (Tue) by mirabilos (subscriber, #84359) [Link] (4 responses)

The same people.

We don’t even separate kernel and libc in thinking. Commits are done across the entire source tree, oftentimes touching both in the same commit.

C library system-call wrappers, or the lack thereof

Posted Nov 14, 2018 12:40 UTC (Wed) by nix (subscriber, #2304) [Link] (3 responses)

FWIW, this is the primary reason why I stopped using the BSDs for anything. The endless ABI breaks whenever libc bumped soname *yet again* were just too tiresome. (Yes, yes, make world rebuilds everything, *if* everything you use is in the ports system and *if* you don't mind a transient but possibly lengthy period of breakage while the thing rebuilds. That's great, but I was using this system as a firewall and mail relay and my MTA is being built as about the 2000th package and now all my mail is bouncing until the effing thing catches up.)

C library system-call wrappers, or the lack thereof

Posted Nov 14, 2018 22:25 UTC (Wed) by kmeyer (subscriber, #50720) [Link] (2 responses)

I don't know when you used BSD last, but the FreeBSD libc SONAME hasn't changed in years (maybe a decade?). All symbols are versioned and backwards compatibility is maintained with quite old versions of FreeBSD libc when APIs change. E.g., https://github.com/freebsd/freebsd/blob/master/lib/libc/g... . (FreeBSD 7 is from 2008.)

C library system-call wrappers, or the lack thereof

Posted Nov 14, 2018 23:25 UTC (Wed) by mirabilos (subscriber, #84359) [Link]

That’s FreeBSD, not BSD ;-)

A bit more seriously, FreeBSD “feels” like trying to imitate what GNU/Linux does, just a bit behind the times and selectively. They also do a lot of rewrites (one could say NIH) and are very removed from the other BSDs (even the two active forks of it), code-wise.

C library system-call wrappers, or the lack thereof

Posted Nov 15, 2018 16:02 UTC (Thu) by nix (subscriber, #2304) [Link]

Yeah, this was OpenBSD I think. What's their libc soname up to now... libc.so.92, good grief.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds