"Serge E. Hallyn" [off-list ref] writes:
Quoting Greg KH (gregkh@suse.de):
Now before moving veth1 to the new netns, we have in the container:
/sys/class/net:
lo sit0
/sys/devices/virtual/net:
lo sit0
and after moving veth1, we have in the container:
/sys/class/net:
lo sit0 veth1
/sys/devices/virtual/net:
lo sit0
In the parent network namespace, veth1 is removed from /sys/class/net
but remains in /sys/devices/virtual/net.
The symlink is gone by the real directory remains?
I'm not sure whether this is the renaming bug that Daniel Lezcano's
patch addresses. If not (as I suspect) then that clearly needs to be
fixed.
Benjamin can you play around with this and test it with Daniel's
patch?
Darn. It appears we have a regression in this patchset.
That part used to work.
I was thinking of blaming sysfs_rename_link. But it the
links are fine so it looks more likely that sysfs has morphed once
again and we have a reference counting issue or something similar.
Yuck. d_move and the other moves should have worked.
From a purely get the good less controversial parts of this
patchset in. I suggest we look at patches 7/10 and 8/10 (without
the tag_ops). And introduce and start using sysfs_delete_link
and sysfs_rename_link. That code seems pretty stable and is
generally a code reduction all by itself by reducing a common
idiom into a single function.
Eric
Quoting Eric W. Biederman (ebiederm@xmission.com):
"Serge E. Hallyn" [off-list ref] writes:
quoted
Quoting Greg KH (gregkh@suse.de):
Now before moving veth1 to the new netns, we have in the container:
/sys/class/net:
lo sit0
/sys/devices/virtual/net:
lo sit0
and after moving veth1, we have in the container:
/sys/class/net:
lo sit0 veth1
/sys/devices/virtual/net:
lo sit0
In the parent network namespace, veth1 is removed from /sys/class/net
but remains in /sys/devices/virtual/net.
The symlink is gone by the real directory remains?
quoted
I'm not sure whether this is the renaming bug that Daniel Lezcano's
patch addresses. If not (as I suspect) then that clearly needs to be
fixed.
Benjamin can you play around with this and test it with Daniel's
patch?
Darn. It appears we have a regression in this patchset.
That part used to work.
I was thinking of blaming sysfs_rename_link. But it the
links are fine so it looks more likely that sysfs has morphed once
again and we have a reference counting issue or something similar.
Yuck. d_move and the other moves should have worked.
quoted
From a purely get the good less controversial parts of this
patchset in. I suggest we look at patches 7/10 and 8/10 (without
the tag_ops). And introduce and start using sysfs_delete_link
and sysfs_rename_link. That code seems pretty stable and is
generally a code reduction all by itself by reducing a common
idiom into a single function.
Eric
Ok as it turns out Benjamin Thery does in fact have a patch to fix this.
Benjamin, please send your renaming patch out tomorrow if you can?
I guess this is why I didn't really see the problem Benjamin said there
was - it just works with SYSFS_DEPRECATED :)
-serge