Hello, Yes, you're completely right - making it work on all platforms is much better than what I had proposed. I'm glad you're doing this.
Thanks, Noah On Thu, Mar 21, 2013 at 5:15 AM, Ludovic Courtès <l...@gnu.org> wrote: > Hi Noah, > > Noah Lavine <noah.b.lav...@gmail.com> skribis: > > > I've thought for a while that if I had time (which I know I won't) I > would > > make a module called (linux) with bindings for non-POSIX Linux kernel > > features. What do you think of this idea? If so, what do you think of > > putting sendfile there and expanding it with other functions as we need > > them? > > I’ve thought about it, but ended up with making sendfile work whether or > not the syscall is available (just like glibc does, after all). > > So for this particular case, I’d rather keep it in the global name > space. There’s also the untold argument that even if sendfile(2) is > unavailable, the loop written in C is going to be faster than the > equivalent bytecode. > > FWIW, I plan to integrate the Linux bindings I wrote for “boot-to-Guile” > eventually: > > > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/guile-linux-syscalls.patch > > These are not defined in POSIX, but apart from the Linux module > syscalls, they (that is, mount(2) and the networking ioctls) happen to > be supported by glibc on all 3 kernels, and also by other libcs. Thus, > I’d rather keep them in the global name space as well. > > WDYT? > > Thanks, > Ludo’. >