This series might be a bit of a too big step :-) So in the kernel we use krefs for reference counts for lots of good reasons, the main one, is no bugs with roll your own atomic reference counting for structs, which lots of this code is. I've ported all the structs I could find using hand rolled atomic reference counters to use krefs. Dave.