[OpenWrt-Devel] [PATCH 0/6] netifd: workaround for shell protocols without proto_task.

Yousong Zhou yszhou4tech at gmail.com
Tue May 19 08:38:27 EDT 2015

The first four patches are minor ones formed while makeing this series.  The
last two patches are required for L2TP protocol with xl2tpd to be working and
will also allow netifd to bring up interface on network device link lost in the
following scenarios.

 - Quit of pppd without calling ppp-down script to explicity update link state
   in which case netifd would wrongly think the corresponding interface was
   still up.
 - With dummy `sleep 3600` as the proto_task running then issue `xl2tpd-control
   remove l2tp-xxx` to trigger the link lost.  Netifd got the Interface xxx has
   lost the connection information but did not try to teardown and bring up the
   interface as the proto_task was still running.
 - Crash xl2tpd to trigger a link lost and the result is the same as above.

Protocols PPPoE and L2TP were tested against this patch series on QEMU Malta
target and appeared to be working fine.

Yousong Zhou (6):
  Changes for more readability.
  system: fix typo in returning address length.
  interface: remove redundant iface_attr_info.
  interface: minor fix for unnecessary ++ operation.
  proto-shell: allow running protocols without proto_task.
  interface: teardown on l3_dev link lost.

 device.c                |    4 ++--
 device.h                |    3 +++
 interface.c             |   40 ++++++++++++++++++++++++++--------------
 interface.h             |    1 +
 proto-shell.c           |   20 ++++++++++++++------
 scripts/netifd-proto.sh |    2 ++
 system.h                |    2 +-
 ubus.c                  |    2 +-
 8 files changed, 50 insertions(+), 24 deletions(-)

openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list