Home > episodes > 2009/08/17 Linux Kernel Podcast

2009/08/17 Linux Kernel Podcast

August 21st, 2009 jcm Leave a comment Go to comments

Audio: http://media.libsyn.com/media/jcm/linux_kernel_podcast_20090817.mp3

Did you know there have been over 64,000 downloads of the LKML podcast? That there are 500 listeners per episode? People who listen to the podcast vary from developers to company executives, they listen on their way to work, on the way to school, and even in the bathtub. Thank you for listening.

For Monday, August 17th 2009, I’m Jon Masters with a summary of today’s LKML traffic.

In today’s issue: AlacrityVM, Clocksource, Discard, and Loop.

AlacrityVM. Well, it was going to happen eventually. Ever since Gregory Haskins first posted patches implementing an alternative virtualized IO framework (replacing virtio in userspace with vbus/venet in kernelspace) and subsequently posted a KVM “fork” using those for virtualizing real time guests, there has been some discontent within the virtualization community at the apparent fracturing of the community. Both Avi Kivity and Ingo Molnar have spoken out against developing two competing implementations within the kernel (rather than getting behind one of them), and the former has been particularly defendent of the existing virtio implementation (which not has a kernelspace implementation available). Although not technically objecting to the work, Ingo’s argument can perhaps be summed up best with this quote: “If virtio pulls even with vbus’s performance and vbus has no advantages over virtio [I] do NAK vbus on that basis. Let’s stop the sillyness before it starts hurting users. Coming up with something better is good, but doing an incompatible, duplicative framework just for NIH reasons is stupid and should be resisted”. Obviously there are different commercial interests at play, but it should be noted that Greg has seemingly tried to navigate around these hurdles. He argues that he has made “every effort” to propose that his patches get integrated within KVM directly and implies that he is only continuing to work on the Alacrity implementation for purely technical reasons of driving up performance. And, it should be added, as Greg points out, his work has already helped to motivate kernelspace virtio efforts.

Clocksource. Stephen Hemminger noticed a regression caused by a recent patch from John Stultz that had aimed to sanity check changes to the active clocksource configuration using the sysfs interface. This change had broken systems built with High Resolution Timers (HRT) but not actually using them.

Discard. After several days worth of discussions surrounding the need for compcache (essentially, compressed RAM backed swap) to be made more immediately aware of swap slots becoming free, discussion had turned toward general discard handling. This is a term that refers to the need to educate underlying block devices whenever a block is actually no longer in use by any higher level software abstractions (a filesystem, or swap device, or something more exotic) and has become increasingly relevent in a world where SSD flash devices would love to know when they can actually recycling underlying flash blocks for more effective allocation and wear leveling support. Linux uses the ATA “TRIM” command to educate many of these devices about such events, but that command has a number of unpleasant standard-mandated issues not the least of which is the in-ordinate amount of time it can take to complete. Mark Lord posted some rather horrific benchmarks showing how drive firmware successfully lied about the first call to TRIM but subsequent (more real world) calls immediately following a TRIM resulted in hundreds of milliseconds of drive latency. Linux Weekly News had a more exciting and lengthy summary of the troubles with discard, so I recommend reading that article for further detail.

Loop. Jens Axboe, noting that the existing loop implementation (support in the kernel for exposing a file or similar as a block device upon which a higher level filesystem may subsequently be mounted) always uses the page cache regardless of IOPS requesting O_DIRECT, posted a patch implementing page based O_DIRECT on loop devices. His patchset modifies the IO patch for all O_DIRECT operations making it page based rather than passing down iovecs, but he cautions that it is “basically a first version so don’t expect too much of it, but it does seem to work fine for me.”. NFS was apparently the main difficulty in converting over existing code, and he’s not at all sure that that has been successful – so apply usual caution in testing.

In today’s miscellaneous items: some sh updates from Paul Mundt, a three patch patch series adding support for the Dell “Mini” series based upon compal-laptop from Mario Limonciello, some tracing fixes from Frederic Weisbecker, some performance counters fixes and x86 from Ingo Molnar, some performance counters fixes from Peter Zijlstra, a new iteration of the generic hardware breakpoints patchset from K. Prasad, some minor fixes to Microsoft Hyper-V configuration options so that all the sub-component drivers depend upon the base one from Jan Beulich, an IRQ fix from Thomas Gleixner (Linus wasn’t convinced that the right patch was in the git tree), a huge TLB driver example from Alexey Korolev, a suggestion that ESP and EIP values are removed from a task stat file and made available to processes with PTRACE capability, some XFS updates from Felix Blyakher, version 2 of the RDC (a low power 486 like SoC implementation) detection patches from Mark Kelly, a fix to drop write permission on /proc/timer_list and /proc/slabinfo from Amerigo Wang (which Ingo Molnar described as a “good catch”), a new time-source selector allowing one to (for example) specify wallclock times be using in ftrace entries from Zhao Lei, version 4 of a patch fixing file truncation handling when both suid and write permissions are held on a given file entry by Amerigo Wang, a patch to flex_array optimizing hot paths by allowing the compiler to substitute bit shifts for divides on power-of-two size allocated arrays from Dave Hansen, and a patch adding a diagnostic message differentiating between a keyboard vs. non-keyboard triggered sys-b reboot event from Tina Yang.

Finally today, a number of kernel developers repeated the point concerning vendors making hardware available for test, in particular suggesting that the Linux Foundation should foot the bill and hand out hardware at conferences like the upcoming Linux Plumbers Conference in order to save on shipping. In his dissenting opinion, James Bottomley reminded everyone that these devices often cost fairly significant amounts of money, but conceeded that the Linux Foundation might be a means to distribute otherwise free hardware to those developers in need.

In today’s announcements: Greg Kroah-Hartman announced usbutils version 0.86.

The latest kernel release is 2.6.31-rc6, which was released on August 14th.

Rogerio Brito reported a regression in the hfsplus code affecting rc5. He found that creating a loopback mounted filesystem resulted in data loss.

Stephen Rothwell posted a linux-next tree for August 17th. Since Friday, several trees lost conflicts while the suspend, tip, and sfi trees gained a build failure and conflicts respectively. The total subtree count remains stready at 140 trees in the latest linux-next tree compose.

If you haven’t been to a dentist in a while, I strongly advise you to go. You’ll avoid having your root canal redone twice for good measure.

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.