The DEFINE_PER_THREAD() primitive defines a per-thread variable. Unfortunately, it is not possible to provide an initializer in the way permitted by the Linux kernel's DEFINE_PER_THREAD() primitive, but there is an init_per_thread() primitive that permits easy runtime initialization.