This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
gsoc:2019-gsoc-safety-critical-linux [2019/01/24 11:03] lukas.bulwahn |
gsoc:2019-gsoc-safety-critical-linux [2019/01/24 12:14] lukas.bulwahn |
||
---|---|---|---|
Line 11: | Line 11: | ||
The Google Summer of Code Projects are activities that contribute to those two fields of work. | The Google Summer of Code Projects are activities that contribute to those two fields of work. | ||
- | Primary mentoring contacts: Lukas Bulwahn, lukas.bulwahn at gmail.com, Julia Lawall, Nicholas Mc Guire, der.herr at hofr.at, Ralf Ramsauer | + | Primary mentoring contacts: Lukas Bulwahn, lukas.bulwahn at gmail.com; Julia Lawall, julia.lawall at lip6.fr; Nicholas Mc Guire, der.herr at hofr.at; Ralf Ramsauer, ralf.ramsauer at oth-regensburg.de |
- | ==== More background on previous activities in safety-critical systems ==== | + | ==== Some background on previous activities in safety-critical systems ==== |
The SIL2LinuxMP project is an collaborative research project to provide procedures and methods to qualify Linux on a multi-core embedded platform at safety integrity level 2 (SIL2) according to IEC 61508 Ed 2. | The SIL2LinuxMP project is an collaborative research project to provide procedures and methods to qualify Linux on a multi-core embedded platform at safety integrity level 2 (SIL2) according to IEC 61508 Ed 2. | ||
Line 47: | Line 47: | ||
The issue tracker, https://github.com/lfd/PaStA/issues, provides a good overview of possible student activities in a GSoC project related to PaStA. A student start look into those issues and determine a suitable selection of tasks and goals from that issue tracker that can be handled within the timeframe of the GSoC project. A project proposal should breakdown the goals stated in the issue tracker to a more detailed plan of activities, needed extensions of PaStA and the implementation tasks. | The issue tracker, https://github.com/lfd/PaStA/issues, provides a good overview of possible student activities in a GSoC project related to PaStA. A student start look into those issues and determine a suitable selection of tasks and goals from that issue tracker that can be handled within the timeframe of the GSoC project. A project proposal should breakdown the goals stated in the issue tracker to a more detailed plan of activities, needed extensions of PaStA and the implementation tasks. | ||
- | Main contact person for this project proposal: Ralf Ramsauer | + | Main contact person for this project proposal: Ralf Ramsauer, ralf.ramsauer at oth-regensburg.de |
+ | ==== Handling Complex Types and Attributes in Coccinelle ==== | ||
+ | |||
+ | Coccinelle, developed by Julia Lawall and her group, is a program matching and transformation engine which provides the language SmPL (Semantic Patch Language) for specifying desired matches and transformations in C code. | ||
+ | The GSoC project proposal would be to improve the management of complex types and attributes (const, __user, etc) in the program matching and transformation tool Coccinelle. | ||
+ | Currently, complex types are represented incorrectly, which makes it impossible to match against | ||
+ | them in a general way. Various kinds of attributes are increasingly used in Linux kernel code, and it is important to be able to check these annotations and add them where they are missing. | ||
+ | This project is relevant to Linux, Zephyr and many more applications. | ||
+ | |||
+ | Main contact person for this project proposal: Julia Lawall, julia.lawall at lip6.fr | ||
+ | |||
+ | ==== Develop Methods for Tracking Tool Analysis Findings over Time ==== | ||
+ | |||
+ | We use a number of tools, checkpatch.pl, coccinelle scripts, sparse, etc. and these tools report certain findings. | ||
+ | While the valid ones are addressed by the kernel developers, the invalid tool findings are manually assessed and not acted upon. Over time with addressing the valid findings, the proportion of invalid findings increase compared to newly appearing valid findings, as invalid findings of those tools are not marked and tracked over the various versions. | ||
+ | |||
+ | In this GSoC project, the student should work out methods and tools to track the tool findings and make these tools useful in the Linux kernel community. | ||
+ | |||
+ | Required Knowledge: | ||
+ | - Required: Very good knowledge of C, skill to READ AND UNDERSTAND source code in the Linux kernel in independent work | ||
+ | - Required: Very good knowledge of python | ||
+ | - Required: Good understanding of git | ||
+ | - Recommended: Some understanding of static analysis tools | ||
+ | - Recommended: Some understanding of coccinelle | ||
+ | |||
+ | Main contact person for this project proposal: Lukas Bulwahn, lukas.bulwahn at gmail.com | ||
====== Student Project Proposals 2018 ====== | ====== Student Project Proposals 2018 ====== |