Skip to Content
Mastering Linux Kernel Development
book

Mastering Linux Kernel Development

by CH Raghav Maruthi
October 2017
Intermediate to advanced
354 pages
9h 28m
English
Packt Publishing
Content preview from Mastering Linux Kernel Development

Race conditions with dynamic timers

While removing a timer, special care must be taken as the timer function might be manipulating some dynamically de-allocatable resources. If the resource is released before deactivating the timer, there is a possibility of the timer function being invoked when the resources it operates on do not exist at all, causing data corruption. So to avoid such scenarios, the timer must be stopped before releasing any resources. The following code snippet replicates this situation; RESOURCE_DEALLOCATE() here could be any relevant resource deallocation routine:

...del_timer(&t_obj);RESOURCE_DEALLOCATE();....

This approach, however, is applicable to uni-processor systems only. In an SMP system, it's quite possible that ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Linux Kernel Development, Third Edition

Linux Kernel Development, Third Edition

Robert Love
Understanding the Linux Kernel

Understanding the Linux Kernel

Daniel P. Bovet, Marco Cesati
Linux Kernel Debugging

Linux Kernel Debugging

Kaiwan N. Billimoria

Publisher Resources

ISBN: 9781785883057Other