Kernel Weekly News 23.10.2010

Posted: October 20, 2010 in kernel

Hello gals and guys and welcome! Since last time, we have a wave of interesting patches, updates and RFCs
so let’s just get into it.

-Eric Paris posted a 6-piece patch regarding IMA, explaining thusly :
“IMA currently alocated an inode integrity structure for every inode in
core. This stucture is about 120 bytes long. Most files however
(especially on a system which doesn’t make use of IMA) will never need any
of this space. The problem is that if IMA is enabled we need to know
information about the number of readers and the number of writers for every
inode on the box. At the moment we collect that information in the per
inode iint structure and waste the rest of the space. This patch moves those
counters into the struct inode so we can eventually stop allocating an IMA
integrity structure except when absolutely needed.

This patch does the minimum needed to move the location of the data. Further
cleanups, especially the location of counter updates, may still be possible.”

-Michael Kerrisk anounced the release of man-pages 3.29; while this announcement apparently
has little to do with kernel news, if one looks at the changelog [1], things will seem different. :-)

“A few changes in this release that may be of interest to readers of this
list are listed below.

Cheers,

Michael

==================== Changes in man-pages-3.29 ====================

New and rewritten pages
———————–

subpage_prot.2
Michael Kerrisk
New page documenting the PowerPC-specific subpage_prot(2)

aio_init.3
Michael Kerrisk
New page documenting aio_init(3)

Newly documented interfaces in existing pages
———————————————

posix_fadvise.2
Michael Kerrisk
Document the architecture-specific arm_fadvise64_64() system call
This ARM-specific system call fixes the argument ordering
for that architecture. Since Linux 2.6.14.

sync_file_range.2
Michael Kerrisk
Document the architecture-specific sync_file_range2() system call
As described in commit edd5cd4a9424f22b0fa08bef5e299d41befd5622,
the sync_file_range() argument order is broken for some
architectures (PowerPC, ARM, tile). The remedy was a different
system call using the right argument order on those architectures.

psignal.3
Guillem Jover
Document psiginfo()
psiginfo() was added to glibc in version 2.10.
Michael Kerrisk
Add details, VERSIONS, and BUGS for psiginfo()

ip.7
Balazs Scheidler
Document IP_RECVORIGDSTADDR
Document IP_TRANSPARENT
Michael Kerrisk
Document IP_FREEBIND
Text based on input from Lennart Poettering and Balazs Scheidler.
See https://bugzilla.kernel.org/show_bug.cgi?id=20082

Changes to individual pages
—————————

unix.7
Michael Kerrisk
Document the autobind feature
Michael Kerrisk
Fix description of abstract socket names
As reported by Lennart Poettering:
The part about “abstract” sockets is misleading as it suggests
that the sockaddr returned by getsockname() would necessarily
have the size of sizeof(struct sockaddr), which however is not
the case: getsockname() returns exactly the sockaddr size that
was passed in on bind(). In particular, two sockets that are
bound to the same sockaddr but different sizes are completely
independent.
See https://bugzilla.kernel.org/show_bug.cgi?id=19812

-James Bottomley of OpenSUSE fame posted a git pull request with SCSI bug fixes for -rc8, saying
“This patch set fixes a couple of longstanding bugs in SCSI. The VPD
patch fix a possible buffer overrun in the VPD code (only tripped if the
device has a huge number of VPD pages). The other is where the status
return code on our BSG interface is wrongly right shifted one place.

I’ve had several reviewers over this one just to make sure I don’t have
any more stupid bugs in there ”

-Some of you may remember Con Kolivas’ kernel for a responsive Linux desktop a few years ago.
Well, here he is again with 2.6.36-ck1; for more info check http://kernel.kolivas.org .

-Steven Rostedt has a 8-piece patch announced by git pull request, related to the tracing/perf part of the
Linux kernel. And, since we’re at the git pull requests part, Christoph Hellwig updated the hfsplus tree
for -next, Sage Weil has something new regarding CFS for 2.6.37-rc1 and
Steven Rostedt comes back with another small patch for , you’ve guessed it, the trace/perf tree.

-The great announcement for this week must be, doubtlessly, Linus’ mail telling us that 2.6.36 is out.
And it goes like so :
“So it’s a week later than I wanted (plus all the days that added up
from me having a few 8-day weeks during this release window), but it’s
out there now.

The delay means that the merge window that opens now would cover the
upcoming kernel summit. However, I really hope that everybody sends me
their patches and pull requests _before_ KS even starts. And if you’re
affected by the kernel summit you probably won’t have time during it
to finalize anything that week anyway, especially for those staying
for plumbers afterwards, and…

So I’m going to hope that we could perhaps even do the 2.6.37 -rc1
release and close the merge window the Sunday before KS opens. Since
2.6.36 was longer than usual (at least it felt that way), I wouldn’t
mind having a 2.6.37 that is shorter than usual.

But holler if this really screws up any plans. Ten days instead of two
weeks? Let’s see if it’s even reasonably realistic.

Anyway, I’m appending the shortlog since -rc8. At least it’s
noticeably shorter than the -rc7 and -rc8 logs were, and most of it
really is pretty small.

For the bigger picture of changes since 2.6.35, see for example

http://kernelnewbies.org/Linux_2_6_36

but it may be worth pointing out that we ended up disabling the new
fanotify system calls because people were still unsure about the
interfaces. Better let the interface discussion cook a bit longer than
release with a bad interface that we need to redo.

Linus ”

-Steven Whitehouse posted updated the GFS2 tree with quite a number of updates, updates
available at git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw.git master , while
Ingo Molnar updated the iommu, rcu, perf, locking. x86-specific and scheduler trees; also,
Borislav Petkov updated and added features to EDAC and MCE trees and Thomas Gleixner
has updates for .37 concerning the futex, irq-core and timer trees.

-Dan Magenheimer has some improvements for the tmem tree concerning the 2.6.37 merge
window :
“This cleancache patchset crosses multiple subsystem boundaries and
at the recent filesystem/storage/mm summit, people suggested that
I should just submit it to linux-next (done), and directly to you
at the next merge window. Previous lkml postings received a great
deal of review and comment from a wide variety of maintainers, as
documented in the commit logs.

In addition, the cleancache shim to Xen Transcendent Memory makes
use of and is dependent on the cleancache patchset. Jeremy Fitzhardinge
asked that I just include the shim in my tree to be pulled at the
same time, to avoid any merge ordering issues. (Another cleancache
user, zcache, developed by Nitin Gupta has been submitted for the
drivers/staging tree and will follow at some point, though possibly
not until the next merge window.)

The patches apply cleanly against linux-2.6.36-rc7. In
linux-next, sfr had to manually resolve a couple of very minor merge
conflicts in mm/Kconfig and include/linux/fs.h due to minor changes
in other trees.

If you have any questions or concerns, please let me know!”

-Other updates via git pull requests : PCMCIA – Dominik Brodowski [2.6.36], suspend
– Rafael J. Wysocki [2.6.37], libata – Jeff Garzik [.37], ocfs2 – Joel Becker[.37],
perf – Arnaldo Carvalho de Melo, memblock – HPA [.37] (“We have tested it to the best
of our abilities, mainly on x86 of
course, but I obviously can’t promise it will be regression-free: it’s
a large chunk of work and touches many tricky things, we did get some
bug reports later than I really would have liked, and even if it is
correct it might smoke out bugs elsewhere in the system.

One of the risks for the latter is that it does is it changes the
default memory allocation policy on x86 from bottom-up to top-down;
top-down really is the preferred option both from a bug-discovery
perspective and preserving a potentially precious resource in the
presence of broken DMA devices or the like, but it might also catch
things that just “happen to work”.

Additionally, there was an issue with an ARM build failure that was
not caught until fairly late. rmk asked for the series to be rebased
as late as last week to avoid a bisection hole on ARM, but my
understanding is that your policy is that you do not want the history
to be destroyed in that manner. Please let me know if you would
prefer it to be done differently.

There will be two conflicts if you pull this based on the below commit:

5fe8321b8886d814e65952d74b207fe59e1096ea:
Merge branch ‘x86-x2apic-for-linus’ … (2010-10-21 13:54:05 -0700)

(which is your current head at the time I write this), both of them
are trivial to resolve — in one case two functions have been added in
the same place; you need both functions; the other is a simple
Makefile merge. I have also pushed a premerged branch for your convenience.”),
ubifs/ubi – Artem Bityutski and block/core – Jens Axboe [-rc1] .

-As usual, towards the end, we give you the “news before closing the edition”, so
here they are :
-Git pull requests/updates/improvements : wq for -rc1 by Tejun Heo, percpu for the same
kernel and by the same coder, bkl by Arnd Bergmann, bkl/llseek (same), tracing by Steven
Rostedt and m68k by Geert Uytterhoeven for 2.6.37 . That said, may you all have a great weekend
and see you next week!

Leave a comment