Coming to you from Cambridge Massachussetts, for Thursday, May 21, 2009 I'm Jon Masters with a summary of today's LKML traffic.
Today's issue was delayed due to your author taking a day off ahead of the US Memorial Weekend Holiday. Since I'll be in Ottawa, Canada over the weekend, the weekend update will likely be delayed until Monday evening.
In today's issue: putting struct inode on a diet, sparse interrupt allocation, union directories, zone reclaim defaults, and firewire interface naming conventions.
Putting struct inode on a diet. Ted Ts'o posted a 5 part patch series aimed at reducing the footprint of the inode struct, reducing the impatch of storing large numbers of cached inodes. As Ted pointed out, a typical Linux system has hundreds of thousands of inodes cached, if not more, and so reducing the size of struct inode could equate to many megabyes of saved memory. Ted achives this by converting some members to shorter types, and through better alignment and padding of the existing members.
Sparse interrupt allocation. Paul Mundt posted a patch to the sparseirq allocation code. Until now, non-legacy IRQ irq_desc structs have been on-demand allocated with a call to zalloc. Unfortunately, the allocator may not be fully enabled at this point, especially on sh. In that case, it might be necessary to use bootmem instead. The patch uses after_bootmem to check which situation is the case and handle the allocation accordingly.
Union directories. Miklos Szeredi posted a series of patches implementing simple unionized directories. With the patches applied, one can mount a union of other filesystems, but with a number of (intentional) caveats. Chief amongst these are that the union is for top level directories only, has no "copy up", and no "whiteouts", or "opaque" directories. Regular followers of LKML and of Linux Weekly News will have seen many discussions and articles on union filesystems lately - including Val's excellent summary of options.
Zone reclaim defaults. Kosaki Motohiro posted version three of a patch that sets zone_reclaim off by default. When it's enabled, zone reclaim means that the VM subsystem will favor working within a single zone, prefering potentially to perform an disk IO operation that go to a remote node which might be expensive in overhead. The decision to enable zone reclaiming used to be automatic on larger systems, but it turns out that today nearly anything can appear to be NUMA from a software point of view. Smaller systems can experience a performance degredaton when zone reclaim is enabled, so this patch series essentially requires the sysadmin to elect to enable it.
Firewire interface renaming. For many years, devices such as firewire (IEEE1394) would name their network interfaces following the Linux tradition of ethX (where X is typically between 0 and 9). Some prefer such naming conventions, especially with eth0 being first (citing "software breakage" as their only "rationale"), but there is no requirement for such device names, and there never has been. Newer firewire stacks will switch to the more intuitive firewireX naming convention.
In today's announcements: The Montreal Linux Power Mangement Mini-Summit. Len Brown posted an announcement that a Power Management mini-summt will take place concurrent with day 1 of the tutorials at this year's Linux Symposium. For those who haven't signed up for this year's Linux Symposium, there is still some left - visit http://www.linuxsymposium.org/ for further detail.
Stephen Rothwell posted a linux-next tree for May 21st. Since Wednesday, an allyesconfig build problem was discovered on powerpc (and may also have a futex bug due to a manual merge performed by Stephen), the tip-core tree gained a conflict against Linus' tree, the SCSI tree moved a conflict over to the scsi-post-merge tree, the net tree gained a conflit against the wireless-current tree, the block tree lost its build failure, and the kvm tree gained a build failure for which the corresponding commit was reverted. The total number of subtrees within linux-next remains steady at 138 today.
The latest kernel release is 2.6.30-rc6 which was released by Linus on Friday afternoon. A number of patches are pending in a forthcoming rc7 release.
That's a summary of today's LKML traffic. For further information visit kernel.o rg. I'm Jon Masters.