Re: [PATCH] net: tun: release the reference of tun device in tun_recvmsg
From: Arkadiusz Miskiewicz <hidden>
Date: 2013-06-05 15:20:19
On Monday 03 of June 2013, Gao feng wrote:
On 05/29/2013 06:29 AM, Arkadiusz Miskiewicz wrote:quoted
On Friday 26 of April 2013, Jason Wang wrote:quoted
On 04/26/2013 01:03 PM, Gao feng wrote:quoted
On 04/25/2013 11:04 PM, Arkadiusz Miskiewicz wrote:quoted
On Thursday 25 of April 2013, Gao feng wrote:quoted
We forget to release the reference of tun device in tun_recvmsg. bug introduced in commit 54f968d6efdbf7dec36faa44fc11f01b0e4d1990 (tuntap: move socket to tun_file)Hm, still hitting the problem even with the patch - dmesg:Ok, seams there are another problems we haven't discovered. it's excellent if you can find out which commit introduces this bug by git bisect. Thanks!Yes, bisect will be helpful. If you could not do it, please tell me the steps to reproduce the issue and the tree you used. I just test with net.git and net-next.git with a tap device created by tunctl, didn't meet the issue.Took a while. Suspected patch is below. I'm running fresh linus git (3.10.0-rc3-00046-g58f8bbd) with the patch reverted and couldn't reproduce problem anymore after several tries (will do more testing in meantime).Thanks for your helpful work :) I already send a patch to fix this problem.
Please push it into stable kernel (3.9) queue, too. Works well here.
commit 534c877928a16ae5f9776436a497109639bf67dc
Author: Gao feng [off-list ref]
Date: Sun Jun 2 22:16:21 2013 +0000
ipv6: assign rt6_info to inet6_ifaddr in init_loopback
Commit 25fb6ca4ed9cad72f14f61629b68dc03c0d9713f
"net IPv6 : Fix broken IPv6 routing table after loopback down-up"
forgot to assign rt6_info to the inet6_ifaddr.
When disable the net device, the rt6_info which allocated
in init_loopback will not be destroied in __ipv6_ifa_notify.
This will trigger the waring message below
[23527.916091] unregister_netdevice: waiting for tap0 to become free.
Usage count = 1
Reported-by: Arkadiusz Miskiewicz [off-list ref]
Signed-off-by: Gao feng [off-list ref]
Signed-off-by: David S. Miller [off-list ref]
--
Arkadiusz Miśkiewicz, arekm / maven.pl