Mainline the watchdog framework for the Linux kernel

From eLinux.org

Revision as of 09:31, 25 January 2011 by Tim Bird(Talk | contribs)(Created page with "; Summary: Mainline the watchdog framework for the Linux kernel ; Proposer: Wolfram Sang == Description == The watchdog API of the Linux kernel is documented and has been in us...")

Contents

Description

The watchdog API of the Linux kernel is documented and has been in use for
years. Yet, there is no abstraction for its common functionality (open, write,
ioctl, close), so every watchdog driver has to implement those methods on its
own. In addition to the vast amount of code duplication in the kernel source,
this is also error-prone as there are subtle corner-cases in handling the
watchdog and the userspace input correctly. Although there is code review for
new drivers, it seems very desirable to improve the situation as a whole.

There is a draft for a generic framework by the watchdog maintainer (see
related work). Its development is quite slow, though. The current state already
took years and was still not proposed for mainline inclusion. This proposal
aims to improve the situation by

1) upstreaming the framework
2) converting some drivers to create a reference
3) adding a HOWTO for this conversion

Although watchdogs are usually rather simple devices, they are crucial for the
stability concept of an enormous number of devices. The benefit of this
proposal is to have a rock-solid, well maintainable and trustworthy watchdog
framework, which can improve the existing implementations and makes writing new
drivers faster and less error-prone.

Related work

Scope

My estimate would be 2-3 weeks of development, review and testing.

Contractor Candidates

Wim van Sebroeck as the watchdog maintainer would be the first candidate for
1). I'd like to nominate myself to do 2) and 3) with a focus on embedded
platforms. I would also assist 1) by either doing a thorough peer-review of the code
or by taking care of the mainline process in case Wim does not have time for it
(keeping his credits, of course).