1. A system for patching a kernel comprising: at least one processor resource; a thread analysis engine to: analyze a global kernel thread list using the at least one processor resource to determine kernel threads associated with a target function; and maintain a storage data structure including identifiers of the determined kernel threads; and an event handling engine to parse the determined kernel threads using the identifiers in the storage data structure to determine when the global kernel thread list is free of the target function upon encountering an event associated with the target function.