net/sunrpc/cache.c and friends

net/sunrpc/cache.c and include/linux/sunrpc/cache.h implement a rather complicated caching mechanism which can expire cache entries, make upcalls to userspace to fill entries, etc.