KERNEL NEWS zack’s Kernel News

New Networked Filesystem Maintainership Changes New Flash Filesystem POHMELFS Following Hans Reiser’s murder convic- Artem Bityutskiy and Adrian Hunter an- Evgeniy Polyakov announced POHMELFS tion, the ReiserFS developers, led by Ed- nounced the creation of a new filesystem (Parallel Optimized Host Message Ex- ward Shishkin, have migrated ReiserFS for Flash drives, as a joint effort between change Layered ), a new high- development off of their Namesys systems Nokia and the University of Szeged. The performance networked filesystem. As and onto kernel.org and have updated the filesystem is called UBIFS, and according Evgeniy explained, the protocol used by MAINTAINERS file to point to the new lo- to the developers, it is sleek, fast, and POHMELFS, although not yet entirely sta- cations. Because the current ResierFS de- nearly ready for widespread use. Their ble, appears to be superior to that of NFS velopers have previously been dependent tests showed that UBIFS has better speed in every test conducted. Also, it is a user- on Namesys for salaries that have kept and scalability than JFFS2 (from which space filesystem that can work on top of them working on the project, it’s unclear they borrowed many ideas). any lower level filesystem (, etc). what will happen to them. My guess is Jan Engelhardt also asked how UBIFS Andi Kleen asked for an explanation that they will be joined or gradually re- compared with LogFS, and Adrian said of how reliable the filesystem is, and Ev- placed by new volunteers who are inter- they were less familiar with LogFS. Ac- geniy indicated that it was still a bit early ested in helping out and interested in the cording to the small amount of testing for people to use. Evgeniy was able to do code itself. ReiserFS is still a fairly ground- they’d done, LogFS appeared slower and large filesystem operations and generate breaking filesystem, with a lot to offer. had fewer features, and they couldn’t tell identical checksums on the client and Greg Kroah-Hartman announced that how well it would scale. server. He said that he expected to find Jesse Barnes would be taking over as the LogFS also has a smaller code base, bugs, and he also expected to find areas PCI maintainer, and they orchestrated an which is good, and is not dependent of POSIX non-compliance. He said, “it orderly transfer of git repositories. on the UBI module, which is also good, works for [the] usual NFS-like workload, Timur Tabi posted a patch to the according to Jörn Engel. but since it is [a] rather young FS (this MAINTAINERS file, listing himself as Artem pointed out that LogFS had particular design implementation exists the official maintainer of the Cirrus been discussed at the 2005 Kon- for about [a] couple of months), there Logic CS4270 sound driver, the Freescale gress and is still not ready for wide- may be some questions … .” QUICC engine library, the QUICC engine spread use, which is why he said it was UCC UART driver, and the Freescale SoC pointless to compare the two. In fact, he The Linux kernel sound drivers. said he “refused” to compare the two, mailing list com- Zhang Wei posted a patch removing which ended up ruffling some feathers. prises the core of himself as the official maintainer of the Pekka Enberg pointed out that folks Linux development Freescale DMA driver, and listing Li Yang might be curious about why the UBIFS activities. Traffic vol- in his place. Bob Copeland posted a developers weren’t content to wait for umes are immense, patch to add the OMFS filesystem to LogFS to improve sufficiently and that often reaching ten the MAINTAINERS file and listed himself this was why a comparison between the thousand messages as the official maintainer. two systems would be significant. in a given week, and Avi Kivity posted a patch to add a As Jörn put it, there was no reason not keeping up to date maintainer entry for KVM (Kernel-based to merge both filesystems, and he’d been with the entire scope of development Virtual Machine) on PowerPC and listed planning to put out a new LogFS patch is a virtually impossible task for one Hollis Blanchard as the official main- soon. person. One of the few brave souls to tainer. Avi also created an entry for KVM Meanwhile, Artem fanned his own take on this task is Zack Brown. on the S390, listing Carsten Otte and flames by asking Jörn to list “all crucial Our regular monthly column keeps Christian Borntraeger as the official features which are not implemented (but you abreast of the latest discussions and decisions, selected and summa- co-maintainers. have to) like bad eraseblock handling rized by Zack. Zack has been publish- when you send the patch-set?” ing a weekly online digest, the Kernel New Transmitter Driver The only interesting thing to come out Traffic news­letter for over five years Martin Kebert posted a new driver for of the discussion was that it does seem now. Even ­reading Kernel Traffic alone the Zhen Hua PPM-4CH RC transmitter, true that UBIFS is nearly fully usable and can be a time consuming task. which, among other things, is found in loaded with features. Also, as Artem Linux Magazine now provides you little toy helicopters from Walkera. Al- ­affirmed, it does not scale well to large with the quintessence of Linux Kernel though there was no discussion, it looks Flash devices (e.g., 64GB). For that, activities, straight from the horse’s like the sort of patch that would be ac- he says, the UBI module would have mouth. cepted quickly. to be reworked to some degree.

14 ISSUE 92 July 2008 KERNEL NEWS

Reinventing the Lock Someone is always trying to fix kernel larger and stayed in the kernel whether that can be picked up and put down locking. Originally, it was the Big Kernel or not they were needed. again by anything making use of those Lock, then that was split into a bunch David Chinner asked Matthew what resources. Matthew says this wouldn’t of smaller locks. Now a range of locks is was going to happen regarding sema- precisely mimic semaphore behavior, used throughout the kernel. Recently, phores that were harder to convert to but it would bridge part of the gap be- Matthew Wilcox wanted to replace anything else, and Matthew explained tween semaphores and more binary-­ semaphores with mutexes, spinlocks, that a bunch of different types of sema- oriented locking techniques. and completions wherever possible. In phores are in question, each with their David was not pleased with the some areas it wouldn’t be easy, so Mat- own special qualities. One of the fea- cookie-based solution, which had been thew also wanted to identify all sema- tures that distinguishes semaphores tried in the kernel in other areas, result- phores and clarify what they should be from other kinds of locks is that sema- ing in what he called “an ugly, ugly replaced with and what workarounds phores don’t just lock up a resource – API.” He had no alternative to suggest in to add for cases that had no direct trans- they manage resource locking for a this case, so he and Matthew started dis- lations available. ­number of available resource items. cussing the specifics of how the existing Daniel Walker was also into this idea Other kinds of locks are more like on/​off semaphores behaved and how that and already had been submitting his switches, without regard to how many might be replaced with some other lock own patches bit by bit. He pointed out of a given thing might be available for plus kcounter. The thread ended with that converting mutexes to spinlocks exclusive use at any given time. no specific solutions to the harder cases, wouldn’t really be necessary, unless a To replace the variety of semaphores but it’s clear that kernel locking should serious performance issue was at stake. in use in the kernel, Matthew, Arjan van be improving soon, which will result in Christoph Hellwig said spinlocks used de Ven, and Ingo Molnár have been de- faster multi-processor systems and, less memory and were even completely signing something they call kcounter, a hopefully, if unneeded locks can be optimized out of the kernel in single-pro- mechanism for replacing the semaphore ­optimized away, slightly faster single- cessor systems, whereas mutexes were resource-counting feature with a cookie processor systems as well.

Linux Magazine Exclusive

July 2008 ISSUE 92 15