There are attempts to solve some kernel deadlock with using lockless printk ringbuffer. The proposed implementation is pretty complex (6 stages, 6 write and 6 read barriers, two buffers, entries linked via list, ...)

I have a idea how to make it easier with tracking the state and sequence number in one atomic variable. It might allow to remove the lists and many barriers. It is possible that it will just not work. Let's see.

Looking for hackers with the skills:

Nothing? Add some keywords!

This project is part of:

Hack Week 18


Comments

  • pmladek
    8 months ago by pmladek | Reply

    The project was pretty successful in the end. It tool a long time. But a code based on my POC is going to be used in upstream kernel.

Similar Projects

This project is one of its kind!