OPERATING SYSTEMSOS Linux

DMA Safety in Buffers for Linux Kernel Device Drivers – Wolfram Sang, Renesas / Consultant

DMA Safety in Buffers for Linux Kernel Device Drivers – Wolfram Sang, Renesas / Consultant

This talk is about findings which originated from an issue in the I2C subsystem but then became more widespread. The question was if externally allocated message buffers for the I2C subsystem need to be DMA safe. That gained importance and needed a proper solution.

While working on this, buffer handling in other subsystems was evaluated regarding DMA safety. It turned out that some, including I2C, work rather by coincidence or, at least, on assumptions which are likely to be true, but not always. And those assumptions might even be less likely true in the future, given some structural changes kernel hardening brings.

Learn that a check if buffers are DMA capable is surprisingly not an easy task. And find out which solutions exist as of today. With safety being an increasing interest for embedded, more eyes are needed for this problem.

About Wolfram Sang
Wolfram Sang has been working as a Linux kernel developer for embedded systems since 2008. He maintains the I2C subsystem and works as a consultant, mainly for the Renesas Upstream Kernel Team. Programming since his childhood, he still hacks his machines from the 80s, especially the C64. When not using computers, he is interested in ecological topics, likes cooking and tries to keep his Japanese alive. He has spoken at various conferences like ELCE, ELC, OpenSourceSummit, LinuxCon, LinuxTag, and FOSDEM multiple times mostly about kernel topics.

source

linux foundation

Leave a Reply

Your email address will not be published. Required fields are marked *