[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id:
<170600762541.5739.6199621237191541052.git-patchwork-notify@kernel.org>
Date: Tue, 23 Jan 2024 11:00:25 +0000
From: patchwork-bot+netdevbpf@...nel.org
To: shaozhengchao <shaozhengchao@...wei.com>
Cc: netdev@...r.kernel.org, davem@...emloft.net, edumazet@...gle.com,
kuba@...nel.org, pabeni@...hat.com, horms@...nel.org,
anjali.k.kulkarni@...cle.com, kuniyu@...zon.com, fw@...len.de,
pablo@...filter.org, weiyongjun1@...wei.com, yuehaibing@...wei.com
Subject: Re: [PATCH net,v4] netlink: fix potential sleeping issue in
mqueue_flush_file
Hello:
This patch was applied to netdev/net.git (main)
by Paolo Abeni <pabeni@...hat.com>:
On Mon, 22 Jan 2024 09:18:07 +0800 you wrote:
> I analyze the potential sleeping issue of the following processes:
> Thread A Thread B
> ... netlink_create //ref = 1
> do_mq_notify ...
> sock = netlink_getsockbyfilp ... //ref = 2
> info->notify_sock = sock; ...
> ... netlink_sendmsg
> ... skb = netlink_alloc_large_skb //skb->head is vmalloced
> ... netlink_unicast
> ... sk = netlink_getsockbyportid //ref = 3
> ... netlink_sendskb
> ... __netlink_sendskb
> ... skb_queue_tail //put skb to sk_receive_queue
> ... sock_put //ref = 2
> ... ...
> ... netlink_release
> ... deferred_put_nlk_sk //ref = 1
> mqueue_flush_file
> spin_lock
> remove_notification
> netlink_sendskb
> sock_put //ref = 0
> sk_free
> ...
> __sk_destruct
> netlink_sock_destruct
> skb_queue_purge //get skb from sk_receive_queue
> ...
> __skb_queue_purge_reason
> kfree_skb_reason
> __kfree_skb
> ...
> skb_release_all
> skb_release_head_state
> netlink_skb_destructor
> vfree(skb->head) //sleeping while holding spinlock
>
> [...]
Here is the summary with links:
- [net,v4] netlink: fix potential sleeping issue in mqueue_flush_file
https://git.kernel.org/netdev/net/c/234ec0b6034b
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Powered by blists - more mailing lists