Home > episodes > 2010/06/06 Linux Kernel Podcast

2010/06/06 Linux Kernel Podcast

Audio: http://traffic.libsyn.com/jcm/linux_kernel_podcast_20100606.mp3

For the weekend of June 6th 2010, I’m Jon Masters with a summary of the past week’s LKML traffic.

In today’s issue: Linux 2.6.35-rc2, Hibernation, KVM clock, Phoronix benchmarks, Threaded Interrupts, and UML.

Linux 2.6.35-rc2. Linus Torvalds announced the release of 2.6.35-rc2 on Saturday, June 6th 2010 at 9:15pm Best Coast Time (PDT). Quoting Linus, “So -rc2 is out there, and hopefully fixes way more problems than it introduces”. Linus expresses some concern at the size of the RC2, which although not as big as the same time last cycle (that was unusally big in general however), was nonetheless larger than he would have liked and less in line with his intention to have a “calmer release cycle this time”. He says he’s going to enforce making RC3 more sane because “the upcoming week is the last week of school for my kids. And when the kids get out of school, I’m going to be offline for a while. And as a result, I _really_ don’t want to pull anything even half-way scary in the next week for -rc3″. He doesn’t specificially mention the Phoronix regression covered later in this episode.

Hibernation. Nigel Cunningham (TuxOnIce) posted some ponderings on idealized algorithms for writing memory images to disk during hibernation in a thread entitled “Proposal for a new alhorithm for reading & writing a hibernation image”, in which he postulated (amongst other things) essentially setting up a new set of page tables while existing pages are being written out to disk such that future writes to memory would result in a page fault that could be used to setup a number of new tables of pages that should later be written out as having changed during the disk write operation. Current algorithms do play games with page faults, but don’t use secondary tables.

KVM clock. Orion Poplawski followed up to a posting from last week in which he noted that guest virtual machines would occasionlly experience wild jumps in time of 6-12 hours. Gleb Netapov, Alexander Graf, John Stultz, Zachary Amsden, and others asked some questions – for example whether ntp was in use or not – and Zachary noted that a theoretical problem existed with the way that some CPUs have seemingly reliable TSC increment until they enter certain power states, at which point the clocking can break. He has some patches in the works to handle this server-side for kvm-clock and he noted that newer kernels should also detect an unreliable host clock quickly on boot. I should add that I have previously experienced similar issues with kvm-clock and raised them directly with the KVM folks quite a few months ago now.

Phoronix benchmarks. Phoronix are known in certain kernel circles for posting “benchmarks” of various new features, especially those targeting the desktop, and so it was not surprising that Alex Buell would wonder aloud why Phoronix were seeing “20 times” performance loss in 2.6.35 release candidate kernels. What was sad, as Robert Hancock noted, was that they wrote an article without choosing to draw the developer’s attention to the problem (although they did note rather specifically when the problem – believed to be causing udev to get into a 100% CPU utilitization loop – was introduced at the end of May). Mike Galbraith and Ingo Molnar replied and infered that such stories were increasingly par for the course as Linux becomes more mainstream. Mike in particular said that, “If eggshells land in our omelet, they can make a buck telling people about it. Who cares? If tasty bacon bits land, they’ll make a buck on that event. Either way, we get some test coverage.” Others (including Ted T’so) were less concerned about “news” stories, and were instead more concerned that there had been a performance problem that had made it to the release candidate stage without being dealt with much sooner.

Thread interrupts. The way of the future for Linux interrupts has been the work that Thomas Gleixner has been organizing to switch over to threaded handlers (specifically, a small quiescent handler intended to quickly placate a device, and a later thread to do the “interrupt” work in thread context). Dmitry Torokhov was very interested in migrating the various input drivers over, but some of those need to do some very long lived polling of devices post interrupt. Dmitry wondered if it was ok to have a threaded handler do that work and just run for a very long time, to which Thomas said, “Sure, why not?” and noted that the only real thing to watch out for was appropriately lowering the priority of the interrupt thread such that other work will take scheduler priority in the interim. Of course the thread should probably not blindly adjust its priority without restoring it to whatever value it started it, just in case the user has specifically configured the intented priority (in the case of RT users).

UML. User Mode Linux (not the silly “modelling” language) has had a few on-and-off issues over the past year. Typically it will break for a few days and be fixed up, but there is some sense that its one-time popularity is truly on the wane. That’s sad, because UML can be useful in an educational context. Most recently, on x86, the UML breakage was caused by a callee register saving optimization trick in the arch-specific “hweight” (hamming weight) function. Borislav Petkov had posted a “bandage” (as Peter Anvin would later describe it), before Jeff Dike, and also others weighed in with various opinions. Peter’s main concern was that it was not at all obvious why UML broke.

In today’s miscellaneous items:

*). Andi Kleen posted a dm-crypt patch intended to facilitate it scaling to multiple CPUs (by means of using per-cpu workqueues), rather than the existing case of all work being bound on a single workqueue. In a separate thread, Neil Brown provided some useful insight into device mapper behavior for layered mappings, explaining why touching an underlying mapping is not a good idea when another is layered on top of it, including side effects.

*). Xudong Hao reported a possibly bridging related regression in 2.6.34 that caused the host kernel to panic when starting KVM guests. Avi Kivity kindly forwarded the mail to the netdev and briding mailing lists for followup.

*). Peter Ovtchenkov inquired as to common bit similaries in seemingly randomly generated UUID pseudofile entries within the kernel. It turns out that version 4 UUIDs specify that the “7th high half-byte” contain 4. Both Lukasz Gromanowski and Ian Campbell followed up to explain this..

*). Michal Marek posted a pull request for some kbuild changes in 2.6.35 (to include the new nconfig interface), to which Linus responded, giving some advice about the best way to do a pull request, and calling out Dave Miller’s networking pull requests as a good example of how to do it. Linus had similarly posted some good recommendations for diffstat generation on May 27th in response to some btrfs update requests.

*). Daisuke Nishimura posted some patches correcting a bad interaction between Andrea Arcangeli’s transparent hugepage patches and memory cgroups (the tail pages during a split did not have correct cgroup LRU entries).

*). Jeff Garzik posted some libata updates. Amongst them was a default disabling of Asynchronous Notification (AN), since, “Proper use is vague, and behavior of firmwares in the field do not match each other.”

*). Rusty Russell suggested to me that support for waiting module removal in modprobe be officially removed, to which I don’t have huge objections. At this point, very few people actually remove modules from production boxes. Rusty and Linus had some other conversation surrouding the in-kernel module loader and locking use therein in a thread overwise devoted to a problem with bne2 network driver initialization that went long (the thread).

*). Luis R. Rodriguez and Stephen Hemminger continued discussing an Ethernet drivers wiki page that could rival the content on compat-wireless today. Stephen wondered why Luis didn’t want this documentation in-tree, and Luis responded that he thought this stuff was better done on a wiki.

*). Dmitry Torokhov noted that “make install” over sshfs is now painfully slow since various git poking is done at the install stage. He wondered if the work implemented by Greg Thelen could be done at build time instead of at install time because it is slowing his build cycles “down to a crawl”.

In today’s announcements:

*). Jeff Merkey posted an announcement (free from any 4-letter-words this time) saying that he had written something called “Cworthy” that was intended to look like an old Netware interface. It’s on Googlecode.com. Jeff also had a few remarks on 2.6.34 that he decided to share under “general comments”.

*). Vladislav Bolkhovitin posted to let everyone know that the ISCSI-SCST project has now implemented a “full set of SCSI Persistent Reservations”. Further information is available at http://scst.sourceforge.net/.

The latest kernel release is 2.6.35-rc2.

Andrew Morton posted an mm-of-the-moment (mmotm) for 2010-06-03-16-36.

Greg Kroah-Hartman announced the release of “long term” stable series kernel 2.6.32.15, which reverted two patches that had unintentionally been included within the previous 2.6.32.14 release. He noted that those not experiencing problems had no real need to upgrade to the latest version at this time.

That’s a summary of today’s Linux Kernel Mailing List traffic, for further information visit www.kernel.org. I’m Jon Masters.

  • Print this article!
  • del.icio.us
  • Facebook
  • TwitThis
  • Identi.ca
  • Digg
  • Google Bookmarks
  • Slashdot
  • RSS
Categories: episodes Tags:
  1. No comments yet.
  1. No trackbacks yet.