Changes from 1.2.10 to 1.3.0
These changes are archived on ftp.crynwr.com:pub/kchanges
and http://www.crynwr.com/kchanges.
I cannot answer questions about Linux -- I merely summarize the kernel
patches after reading them. I try to make them useful to everyone,
but kernel hackers should take them with a grain of salt and read the
patches themselves.
These are from Linus's "very rough list":
- new networking setup: the net directory layout is different, and
there's a lot more there. Expect this to change even more in the
future, but now we're just supposed to pound out the current
"undocumented features".
- Lots of portability patches: most of my earlier axp-patches are now
in the standard kernel. Not all of them, though: expect the axp
patches to be more-or-less fully integrated by 1.3.2 or so.
- three new system call entry points for x86 (two of which were
actually motivated by axp-portability cleanups):
- new select() entrypoint (5-arg version, arguments in %ebx,
%ecx, %edx, %esi, %edi instead of the old broken memory block
setup)
- getdents() system call entrypoint to read multiple directory
entries. The old "readdir()" system call entrypoint can handle
only one entry at a time (and has a braindead interface).
- flock() system call entrypoint (the old flock() library
emulation never really got all the BSD semantics quite right)
Note: The axp patches change a lot of things all over the place, notably by
splitting up the PCI handling into architecture-independent parts and
moving include-files areound a lot to better fit a multi-architecture
setup. The axp patches have also resulted in various cleanups, and
doing things "right" to be able to handle it cleanly on different
setups. Thus the directory reading code is now much cleaner, and the
mmap() system call will follow normal unix semantics more closely by
actually honoring the "where" argument for non-fixed mappings and
trying to find an address that is close to the requested area.
One downside: the UMSDOS filesystem is disabled in 1.3.0, as the
directory cleanups broke that temporarily. Expect this to be fixed in
1.3.1 or soon afterwards. If you rely on umsdos, don't get 1.3.0.
Alpha-people: as mentioned, don't expect this to compile cleanly on
alpha's yet. The ext2fs 32/64-bit problem isn't cleanly resolved yet,
and some other unclean axp-patches haven't been integrated. Others
haven't been tested in their new incarnation (the PCI stuff, for
example: David M-T, how does the new setup look to you?). And the
latest alpha-diffs by others haven't been integrated at all.