Are there cases where the allocations are so big that doing a kmalloc() and then clearing one field (using an indirect function pointer) really is worth it? Anyway, I left that logic alone, because my hatred for it may run hot and deep, but the pattern goes beyond just the conflict. So please tell me why I'm wrong, and please take a look at the WRITE_ONCE() changes I *did* do, to see if I might be confused there too. Linus