#18351: /etc/init.d/network reload - Fails after removing switch config
--------------------------+------------------------
  Reporter:  rmilecki     |      Owner:  developers
      Type:  defect       |     Status:  reopened
  Priority:  normal       |  Milestone:
 Component:  base system  |    Version:  Trunk
Resolution:               |   Keywords:
--------------------------+------------------------

Comment (by rmilecki):

 A bit more of research.

 1. During the first try (in `bridge_config_init`) adding `eth0` to the
 `br-lan` fails, because kernel refuses it.\\The call trace looks more or
 less like this:
 {{{
 dev_ifsioc(?, ?, SIOCBRADDIF) [ifr->ifr_name is "br-lan"]
  br_dev_ioctl(?, ?, SIOCBRADDIF)
   add_del_if(?, ?, true)
    br_add_if(?, ?)
     netdev_master_upper_dev_link(?, ?)
      __netdev_upper_dev_link
       return -EEXISTS
 }}}
 2. Then there is something **removing** interface:
 {{{
 dev_ifsioc(?, ?, SIOCBRDELIF) [ifr->ifr_name is "br-lan"]
  br_dev_ioctl(?, ?, SIOCBRDELIF)
   add_del_if(?, ?, false)
    (...)
 }}}
 3. Finally netifd runs `bridge_retry_members` and tries to add interfaces
 to the `br-lan`. But it fails because such a bridge doesn't exist anymore.
 {{{
 dev_ifsioc(?, ?, ?)
  dev = __dev_get_by_name(?, "br-lan")
   return NULL
  return -ENODEV
 }}}

--
Ticket URL: <https://dev.openwrt.org/ticket/18351#comment:4>
OpenWrt <http://openwrt.org>
Opensource Wireless Router Technology
_______________________________________________
openwrt-tickets mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-tickets

Reply via email to