2009/07/29 Linux Kernel Podcast
Audio: http://media.libsyn.com/media/jcm/linux_kernel_podcast_20090729.mp3
Apologies for lagging behind. Last week was pretty busy and the box hosting the podcasts got attacked by script kiddies over the weekend. Here we go with a mega update round of podcasts for your edutainment.
For Wednesday, July 29th, 2009, I’m Jon Masters with a summary of today’s LKML traffic.
In today’s issue: Clocksources, kmap vs kmap_atomic, nested virtualization, page cache readahead, and the tty layer deathmarch.
Clocksource. As mentioned previously, Martin Schwidefsky had found the clocksource switching code to be broken on his systems and was working on providing a fix. This has now turned into a quote “full fledged code rework” that is currently providing him with clocksource switching on s390 and Athlon systems – the latter having a broken TSC clocksource. Martin’s code rework is using stop_machine to effect the actual switchi (and a watchdog to trigger a switch if needed), which is expensive but should not called all that often. Martin thanks the usual suspects (John Stultz in particular) for their aid.
Kmap vs. kmap_atomic. Laurent Pinchart previously inquired about the relative merits of using fixed and persistent mappings vs. atomic in-interrupt mappings for copying in-flight video data pages received over USB. Jonathan Corbet (LWN) followed up suggesting that Laurent consider not performing the actual copy from within interrupt context but instead avail himself of more straightforward solutions outside of the interrupt handler. Of course, with threaded interrupt handlers, this situation could change somewhat. Laurent followed up with a round of discussions concerning the best ways to allocate DMA-able memory and ensure it is present – various others have helped to straighten out his understanding and use of technical terms accordingly.
Nested virtualization. Joerg Roedel posted a 12 part patch series implementing nested SVM cleanups and allowing one to successfully perform “KVM in KVM”, even when using nested SMP. The patches include support for intelligently handling the nesting of e.g. vmexit, vmrun, and nested intercepts so that the performance impact of the nested virtualization is not as significant as otherwise might have been the case. There was considerable discussion surrounding these patches, including various implementation questions.
Page cache readahead. Lars Ellenberg, after conducting some profiling runs, posted asking why __do_page_cache_readahead submits READ bios and not READA bios to the block layer. Lars noted that he “was surprised that READA is basically only used for filesystem internal meta data (and not ever for all file systems), but _never_ for file data. Various others followed up suggesting that it used to be the case that more READA requests had been submitted, but that this had other problems and so the kernel had switched at some point. Jens Axboe suggested that the behavior change wasn’t intentional but that he had done various testing in the past – he posted a link to some patches.
TTY. Discussions (or rather somewhat “heated” dialog) continued between Alan and Linus concerning the TTY layer and various outstanding issues with it (add to that a report today from Mikael Petterson that the GCC testsuite breaks on -rc4 based systems – in GNU “expect”). Alan continued to raise a number of issues with Linus’ description of the problems and his proposals to work around some of them. As part of the TTY layer discussions and testing of fixes, Andrew Morton provided Gene Haskett with an updated link to the latest “git-quick” tutorial, which he noted “some dope” had removed from its previous location on kernel.org. Gene will use this to pull a particular version of the kernel tree containing a fix that Linus would like him to test on his system(s). Separately, Catalin Marinas mentions a new VT memory leak.
In today’s miscellaneous items: A suggestion of a possible SLAB entry leak (task_delay_info) from Paul Rolland in -rc4 (for which he provided OOM output, and slabtop information), a confirmation that the previous infinite loop in get_futex_key is still present (Jens Rosenboom – who sent a reproducer), a note (Sam Ravnborg) that he thinks online mailing list archives for kernel.org are generally setup manually and not using some automated process (I can confirm that this appears to be true for archives such as gmane.org), a note (Dave Airlie) that a recent bug really only affects combination Intel IGP/AGP systems (AGP and IOMMU) to which David Woodhouse responded that he wondered how this would affect those with plugin cards on IOMMU systems, some staging radeon kms updates (also Dave Airlie – who is pulling these into F12), a question concerning network hangs on 2.6.12 (allegedy also affecting more less-dead recent kernels), a promised followup posting from Gui Jianfeng concerning Vivek Goyal’s latest IO scheduler patches (this time showing a performance loss of up to 4.9%, which is lower than previous test runs – there are of course also performance gains in some tests also), a patch from Mel Gorman that improves hugepage allocation success rates, a patch from Stanislaw Gruszka (and another similar one targeting POSIX CPUCLOCKs) that aims to improve itimers periodic ticks precision, a conversion of the hv driver in staging to use struct hv_driver (Nicolas Palix), some post scheduling fixes from Gregory Haskins (and Steven Rostedt and Peter Zjilstra), a repost of additional locking support in kmemleak from Catalin Marinas, the addition of LZO compression support for initramfs (Albin Tonnerre), some tracing cleanups (Frederic Weisbecker), a new bug (13850) oops reading /proc/kcore (Mike Smith), ongoing dicussion of the fanotify patches (Eric Paris, and also others), a pull request for wireless updates (John Linville), page allocator trace events from Mel Gorman, some power management fixes (Rafael J. Wysocki), and some clarity on the get_futex_key infinite loop problem (a suggestion from Eric Dumazet that execve() probably forgets to clear clear_child_tid).
In today’s announcements: Git version 1.6.34 and Git 1.6.4. Junio C Hamano once again delighted us with the announcement of several git releases. Some fairly annoying bugs are fixed in these releases, which may be of interest.
Also today, 2.6.31-rc4-rt1. Thomas Gleixner announced the latest release of the “RT” kernel patches ported to 2.6.31-rc4. As covered previously, there are a large number of changes to the underlying architecture in the latest update.
The latest kernel release was 2.6.31-rc4, although a newer rc5 was subsequently released on Friday evening.
Stephen Rothwell posted a linux-next tree for July 29th. Since Tuesday a new kmemleak tree has been provided by Catalin Marinas, Alan Cox’s former ttydev tree has been removed (at Alan’s invocation), the tree still fails to build in an allyesconfig build configuration on powerpc, and the drbd and staging trees gained conflicts against other trees. The subtree count remains steady at 135 trees since the removal of one tree was offset by the addition of another.
That’s a summary of today’s Linux Kernel Mailing List traffic, for further information visit www.kernel.org. I’m Jon Masters.










