COPLAS talk: Fast and Precise Retrieval of Forward and Back Porting Information for Linux Device Drivers

COPLAS talk by Julia Lawall, Inria Paris


Fast and Precise Retrieval of Forward and Back Porting Information for Linux Device Drivers


A device driver forms the glue between a device and an operating system kernel. When the operating system kernel changes, the device driver has to change as well. Our goal
is to automate this kind of forward porting, and analogously backwards porting, focusing on drivers for the Linux kernel. We propose a three step approach, based on 1) ompilation of the driver with the target kernel to identify incompatibilities, 2) collection of examples of how to fix these incompatibilities from the commits stored in the revision control system, and 3) generalization of the identified examples to produce change rules appropriate for porting the driver to the target kernel. 

In this talk, we present the tools gcc-reduce and Prequel that have been designed to carry out the first two steps.  The third step remains future work.  Our approach effectively exploits the specific nature of the driver porting problem: the device is fixed and so the required changes are in the interface with the kernel, limiting the kinds of changes required, and many drivers supporting devices with a similar functionality interact with the kernel in a similar way, implying that porting examples are available.

Joint work with Derek Palinski, Lukas Gnirke, and Giller Muller.


Julia Lawall is a Senior Research Scientist at Inria Paris.  Previously, she was a lektor at DIKU. She has previously worked on continuations, partial evaluation, and optimal reduction.  Her current work applies programming language techniques to improve the quality of operating systems code. She is the primary developer of the Coccinelle C program matching and transformation tool,
which is mentioned in around 5000 Linux kernel commits.  She currently has an open PhD position in the area of inferring change rules from examples for the purpose of automatically porting Linux device drivers.

Hosts: Fritz Henglein (DIKU).

Everyone are welcome. No registration required.