2013 GSoC Driver Backports

Go back to the main GSoC Linux Foundation page

Mailing list

Join the kernel backports mailing list:

https://backports.wiki.kernel.org/index.php/Mailing_list

Introduce yourself there and express your interest if you like. You can either chime in with your own ideas or pick one of the ones below.

IRC

We're on Freenode:

IRC server: irc.freenode.org

Channel: #kernel-backports

Drop in and introduce yourself and feel free to also socialize your ideas there or feel free to just ask any questions.

Driver Backport review

This page documents GSoC project ideas for Linux kernel backporting work. The Linux kernel functionality from future kernels are backported to older kernels through compat. Some subsystems tend to have their own backport work as independent projects. We should be able to unify backport work as much as possible through a unified framework possible and allow users to select which parts they want to compile for their target kernel. When providing backport work we also should prioritize working properly upstream. As it is right now there are two known backport frameworks that exist:

  • compat-drivers: Backports Linux kernel subsystems, quite a few subsystem are already backported

Project ideas

  • Use SmPL to help with simplify backporting. This will expose you to a new paradigm in software developement. Instead of writing a change through 10 drivers, you'd express the change through a grammar defined by Coccinelle in SmPL and then you'd apply the grammer to your target files with Coccinelle. We have quite a few patches in place on compat-drivers that could use being converted into SmPL so that we could further backport the Linux kernel automatically.

Mentors available

  • Luis R. Rodriguez <mcgrof@do-not-panic.com> - For compat-drivers / compat guidence
  • Julia Lawall <julia.lawall@lip6.fr> - For Coccinelle / SmPL guidence

Note: For the SmPL idea on compat-drivers two mentors are willing to participate with the student given the nature of the project using the two project's framework.

Groups: