b764a42653
the thread destructor is invoked. Catch that window by waiting for all task_struct allocations to be returned before freeing the UMA zone in the LinuxKPI. Else UMA may fail to release the zone due to concurrent access and panic: panic() - Bad link element prev->next != elm zone_release() bucket_drain() bucket_free() zone_dtor() zone_free_item() uma_zdestroy() linux_current_uninit() This failure can be triggered by loading and unloading the LinuxKPI module in a loop: while true do kldload linuxkpi kldunload linuxkpi done Discussed with: kib@ MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking |
||
---|---|---|
.. | ||
cloudabi | ||
cloudabi32 | ||
cloudabi64 | ||
freebsd32 | ||
ia32 | ||
lindebugfs | ||
linprocfs | ||
linsysfs | ||
linux | ||
linuxkpi/common | ||
x86bios |