#5931 NORM Never A: NetworkManager not tracking interface renames (was: time-sync dispatch script not executed on boot)

Zarro Boogs per Child bugtracker at laptop.org
Thu Jan 10 15:14:53 EST 2008


#5931: NetworkManager not tracking interface renames
---------------------+------------------------------------------------------
  Reporter:  dsd     |       Owner:  dcbw          
      Type:  defect  |      Status:  new           
  Priority:  normal  |   Milestone:  Never Assigned
 Component:  distro  |     Version:                
Resolution:          |    Keywords:                
  Verified:  0       |    Blocking:                
 Blockedby:          |  
---------------------+------------------------------------------------------
Changes (by dsd):

  * owner:  cscott => dcbw


Comment:

 I wrote above that if you reconnect to a network manually, the time does
 get synced.

 Actually, what happens is that the time does get synced if you connect to
 an infrastructure network (which is what I was manually connecting to
 above). It only doesn't work when you connect to a mesh.

 I tracked down the actual problem in NetworkManagerDispatcher:
 nmd_dbus_filter() gets called with the correct DeviceNowActive event. The
 NMD_DEVICE_NOW_ACTIVE handling then calls nmd_get_device_name() in order
 to determine the interface name.

 In the infrastructure case, the interface path is
 /org/freedesktop/NetworkManager/Devices/eth0 and nmd_get_device_name()
 correctly returns eth0.

 In the mesh case, the interface path is
 /org/freedesktop/NetworkManager/Devices/msh0_rename and
 nmd_get_device_name() hits the following error path:
 {{{
         reply = dbus_connection_send_with_reply_and_block (connection,
 message, -1, &error);
         dbus_message_unref (message);
         if (dbus_error_is_set (&error))
         {
                 nm_warning ("%s raised: %s (for %s)", error.name,
 error.message, path);
                 dbus_error_free (&error);
                 return NULL;
         }
 }}}

 msh0_rename is actually the name of the interface, so this appears to be a
 bug in NetworkManager's tracking of interface renaming (if it even tries
 to track this at all?). I will explain the reason behind the silly name of
 this interface in ticket #5931.

 In #5931 I posted a udev rule to disable the interface renaming, leaving
 the interface (and NetworkManagers understanding of it) as "msh0", in
 which case this bug  is solved - time sync works.

-- 
Ticket URL: <http://dev.laptop.org/ticket/5931#comment:1>
One Laptop Per Child <http://dev.laptop.org>
OLPC bug tracking system



More information about the Bugs mailing list