rtnl_lock() is widely used mutex in kernel. Some of kernel code does memory allocations under it. In case of memory deficit this may invoke OOM killer, but the problem is a killed task can't exit if it's waiting for the mutex. This may be a reason of deadlock and panic.
This patchset adds a new primitive, which responds on SIGKILL, and it allows to use it in the places, where we don't want to sleep forever. Also, the first place is made to use it. --- Kirill Tkhai (2): net: Add rtnl_lock_killable() net: Use rtnl_lock_killable() in register_netdev() include/linux/rtnetlink.h | 1 + net/core/dev.c | 3 ++- net/core/rtnetlink.c | 6 ++++++ 3 files changed, 9 insertions(+), 1 deletion(-) -- Signed-off-by: Kirill Tkhai <ktk...@virtuozzo.com>