GSoC/GCI Archive
Google Summer of Code 2012

The Linux Foundation

Web Page: https://www.linuxfoundation.org/collaborate/workgroups/gsoc/google-summer-code-2012

Mailing List: https://www.linuxfoundation.org/collaborate/workgroups/gsoc/google-summer-code-2012

The Linux Foundation is a nonprofit consortium dedicated to fostering the growth of Linux. Founded in 2007 as a merger of the former Free Standards Group (FSG) and the former Open Source Developer Lab (OSDL), the LF sponsors the work of Linux creator Linus Torvalds and is supported by leading Linux and open source companies and developers from around the world. The Linux Foundation promotes, protects and standardizes Linux by providing unified resources and services needed for open source to successfully compete with closed platforms. More: https://www.linux-foundation.org/en/About All software produced by us is free software published under OSI-approved licenses. See project ideas page for the license used by each project.

Projects

  • Add Dynamic Tests to the Linux Application Checker This project aims to add more checks and libraries support for DynChk and to integrate that tool into the Linux Application Checker. For now, AppChecker is able only to perform some rough static checks. Usually it’s impossible to completely verify correctness of usage of library functions using this static tests only. Dynamic checking can significantly improve the analysis.
  • Advanced Source Code Instrumentation for the Linux Driver Verification Project This project tends to implement advanced source code instrumentation that will help the Linux Driver Verification project to formalize new correctness rules and verify Linux kernel drivers against them more efficiently with less human effort. This in turn will allow to find new real bugs in drivers and make them better and more reliable.
  • Compat-vga for the Linux kernel Compat-* packages in general gives the freedom of non-invasively switching to more modern and up-to-date drivers without updating the installed kernel at all. The aim of this project is to provide compat-vga tarballs reflecting the bleeding-edge repositories for being able to offer latest fixes for GPU drivers and to support newer chipsets on all known supported kernel releases listed on kernel.org.
  • Formalization of Correct Usage of Kernel Core API Currently LDV tools are used to check Linux device drivers against several safety rules, each of which formally defines what is correct usage of a particular part of kernel core API. Each rule also represents one or more typical misuse of the kernel core interfaces. By the moment, the framework contains 5 rules formalized only. This project is aimed at extending number of rules supported by the framework.
  • Formalization of Correct Usage of Kernel Core API Linux Driver Verification (LDV) program is devoted to developing an integrated framework for device drivers verification and adopting leading edge research results to enhance quality of verification tools. Currently LDV tools are used to check Linux device drivers against several safety rules, each of them formally defines what is correct usage of a particular part of kernel core API. This project is aimed at extending number of rules supported by the framework.
  • Implement a Lightweight Data Race Detector for Linux Kernel Modules on x86 The project aims at implementing a lightweight data race and concurrency-related errors detector for Linux kernel. It should rely on sampling techniques and use hardware breakpoints to detect potentially conflicting memory accesses and therefore reveal data races.
  • Implement device profiles for Btrfs filesystem Btrfs storage pool can be comprised of multiple devices with varying performance characteristics, however all devices are currently treated the same way. The goal of this project is to introduce device profiles into Btrfs so that it can differentiate between devices in the pool based on their performance characteristics and user input.
  • KMSCON: A DRM based terminal emulator KMSCON is an attempt to replace the in-kernel VT implementation in user-space. When finished it should be possible to run a kernel with CONFIG_VT=n and still have at least the same functionality. Further improvements are possible to eventually get an xterm-like (or other terminal) linux console.
  • libjtapi A reference implementation of the JTAPI (Job Ticket API) standard in C.
  • Linux Kernel digital television framework enhancements Update Linux digital television driver general stuff to meet today's requirements. Changes for the internal APIs and frameworks.
  • OpenPrinting web site: Enhancements for printer and driver administration, in depth security review The OpenPrinting web site should be extended to allow submissions from users for new printers and drivers. In addition to the submission process a backend for moderators should be added.
  • PDF manipulation tools, with special focus on printing needs Build a solid foundation for PDF-manipulation, together with both commandline tools, comparable with psselect, psnup, etc. for selecting pages, n-up printing, scaling, ... and a filter to be included in the printing-pipeline.
  • Redesign LSB Navigator to be more independent from particular DBMS LSB Navigator is a very convenient tool useful for both LSB users and developers. The main aim of this project is to redesign LSB Navigator to be DBMS-independent so underlying DBMS can be easily changed if needed (e.g., due to performance/scalability issues).
  • Update LSB OLVER Core Test Suite This project aims to update OLVER Core Test Suite state to be consistent with modern versions of LSB and up-to-date Linux distributions.