On Tue, Jun 11, 2013 at 03:09:30PM +0100, Ben Hutchings wrote:
On Tue, 2013-06-11 at 08:34 +0200, Antonio Quartulli wrote:
From: Matthias Schiffer mschiffer@universe-factory.net
The rtnl_lock in batadv_store_mesh_iface has been converted to a rtnl_trylock some time ago to avoid a possible deadlock between rtnl and s_active on removal of the sysfs nodes.
The behaviour introduced by that was quite confusing as it could lead to the sysfs store to fail, making batman-adv setup scripts unreliable.
I think what you actually wanted was ERESTARTNOINTR. But the real problem is that neither of these error codes is valid unless the system call is aborted due to a signal.
Well, it should have been handled differently from the beginning..the other problem was that ERESTARTSYS was propagated to userspace while this is not supposed to happen.
However, with this patch the initialisation does not fail anymore. So we don't need to care about the error code anymore :-)
Cheers,