public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: ebiederm@xmission•com (Eric W. Biederman)
To: Johannes Berg <johannes@sipsolutions•net>
Cc: Greg KH <greg@kroah•com>, netdev <netdev@vger•kernel.org>
Subject: Re: sysfs class/net/ problem
Date: Wed, 02 Jun 2010 09:43:22 -0700	[thread overview]
Message-ID: <m14ohlxu51.fsf@fess.ebiederm.org> (raw)
In-Reply-To: <1275495677.3915.16.camel@jlt3.sipsolutions.net> (Johannes Berg's message of "Wed\, 02 Jun 2010 18\:21\:17 +0200")

Johannes Berg <johannes@sipsolutions•net> writes:

> On Wed, 2010-06-02 at 09:17 -0700, Eric W. Biederman wrote:
>
>> >> Ah, so the network devices aren't getting removed?
>> >
>> > Well the netdevs are gone, just the links aren't going away. the
>> > mac80211_hwsim directory is gone too.
>> >
>> >> Do you have network namespaces enabled in your kernel or disabled?
>> >
>> > enabled
>> >
>> >> And this is 2.6.35-rc1, right?
>> >
>> > yes.
>> >
>> > Come to think of it, maybe somehow it ends up removing
>> > mac80211_hwsim/hwsim0 before wlan0, and thus the link stays around? I
>> > guess I could make it print messages about that somehow?
>> 
>> The wireless drivers are a little different, and come to think of it
>> network namespace support has been added to the wireless drivers since
>> last I looked closely. 
>
> Yeah, I now need to go add tagged sysfs support to it too.
>
>>  Do you know what creates/deletes these links?
>> Is it the normal register_netdevice -> device_add path?
>
> Yes, they aren't done specially.



>> I definitely changed the symlink code a little making things network namespace
>> aware so it is reasonable to assume that something in my changes affected the
>> wireless drivers.
>
>> I took a quick look and with my patches against 2.6.33 I'm not seeing this.
>
> Hmm. I'm also not seeing it with veth, it would seem that ought to be
> similar?

Since it is the register_netdev path it should be exactly the same.

The big change I made is I in some instances I replaced
sysfs_remove_link with sysfs_delete_link so I could have enough
information to infer which network namespace the link was in.  Since
wlan0 is a netdevice all of that information should already be there.


>> I take a closer look at 2.6.35-rc1 and see if I can figure out what is
>> going on.  It would definitely be wrong if hwsim0 is removed before
>> wlan0.
>
> I don't know if that's happening .. just guessing that it might cause
> such a problem, and maybe some things are deferred somehow? Since netdev
> destruction can be deferred, but the wifi sysfs destruction isn't. But
> then that link there should cause the refcount to not go down until the
> link goes away>?

unregister_netdevice will defer the final destruction but it does not
defer netdev_unregister_kobject -> device_del.

What happens if in exit_mac80211_hwsim you call unregister_netdev before
mac80211_hwsim_free?

At a quick glance it simply looks like you have the ordering reversed in your
module cleanup, and this is not network namespace related at all.

Eric


  reply	other threads:[~2010-06-02 16:43 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-02 13:16 sysfs class/net/ problem Johannes Berg
2010-06-02 15:46 ` Greg KH
2010-06-02 15:48   ` Johannes Berg
2010-06-02 16:17     ` Eric W. Biederman
2010-06-02 16:21       ` Johannes Berg
2010-06-02 16:43         ` Eric W. Biederman [this message]
2010-06-02 17:00           ` Johannes Berg
2010-06-02 17:23             ` Eric W. Biederman
2010-06-02 17:52               ` Johannes Berg
2010-06-02 18:05                 ` Eric W. Biederman
2010-06-02 18:55                   ` Johannes Berg
2010-06-02 19:12                     ` Johannes Berg
2010-06-02 19:25                   ` Johannes Berg
2010-06-02 23:09                     ` Eric W. Biederman
2010-06-03  0:53                       ` [RFC][PATCH] Fix another namespace issue with devices assigned to classes Eric W. Biederman
2010-06-03  9:30                         ` Kay Sievers
2010-06-03 10:00                           ` Eric W. Biederman
2010-06-04  6:54                         ` Johannes Berg
2010-06-04  8:15                           ` Kay Sievers
2010-06-04  8:28                             ` Johannes Berg
2010-06-04  8:34                               ` Kay Sievers
2010-06-06 13:08                                 ` Johannes Berg
2010-06-06 17:17                                   ` Kay Sievers
2010-06-07  9:42                                     ` Johannes Berg
2010-06-07  9:53                                       ` Kay Sievers
2010-06-07 10:14                                         ` Johannes Berg
2010-06-07 11:05                                           ` Kay Sievers
2010-06-07 11:41                                             ` Johannes Berg
2010-06-07 12:26                                               ` Kay Sievers
2010-06-07 12:36                                                 ` Johannes Berg
2010-06-07 12:54                                                   ` Kay Sievers
2010-06-08  9:27                                                     ` Johannes Berg
2010-06-08  9:30                                                       ` Kay Sievers
2010-06-08  9:45                                                         ` Johannes Berg
2010-06-08 11:55                                                           ` Kay Sievers
2010-06-08 12:03                                                             ` Johannes Berg
2010-06-08 13:54                                                               ` Kay Sievers
2010-06-08 14:06                                                                 ` Johannes Berg
2010-06-08 14:21                                                                   ` Kay Sievers
2010-06-08 14:26                                                                     ` Johannes Berg
2010-06-08 14:47                                                                       ` Kay Sievers
2010-06-08 15:06                                                                         ` Johannes Berg
2010-06-08 16:26                                                                           ` Kay Sievers
2010-06-08 16:33                                                                             ` Johannes Berg
2010-06-08 16:39                                                                               ` Kay Sievers
2010-06-11  9:55                                                                                 ` Johannes Berg
2010-06-14  9:13                                                                                   ` Kay Sievers
2010-06-14  9:20                                                                                     ` Johannes Berg
2010-06-14  9:39                                                                                       ` Kay Sievers
2010-06-20  6:20                                                                                         ` [PATCH] Driver-core: Always create class directories fixing the broken network drivers Eric W. Biederman
2010-06-20 10:52                                                                                           ` Kay Sievers
2010-06-20 11:33                                                                                             ` Johannes Berg
2010-06-20 11:46                                                                                               ` Kay Sievers
2010-06-20 12:29                                                                                                 ` Eric W. Biederman
2010-06-20 13:37                                                                                                   ` Kay Sievers
2010-06-20 12:46                                                                                                 ` [PATCH] Driver-core: Always create network class directories in get_device_parent Eric W. Biederman
2010-06-21 22:20                                                                                                   ` Greg KH
2010-06-21 23:00                                                                                                     ` Eric W. Biederman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m14ohlxu51.fsf@fess.ebiederm.org \
    --to=ebiederm@xmission$(echo .)com \
    --cc=greg@kroah$(echo .)com \
    --cc=johannes@sipsolutions$(echo .)net \
    --cc=netdev@vger$(echo .)kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox