summaryrefslogtreecommitdiff
path: root/sys/src/9/port/devenv.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2014-08-12 21:35:31 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2014-08-12 21:35:31 +0200
commit55bf3d639938722d3da2464110cb188e87591d52 (patch)
tree5fb0e761aea8c91d726e67929ab22259977c3cf7 /sys/src/9/port/devenv.c
parent53619de42806e50a6f7488973048f17df11b80c9 (diff)
ip: fix missed unlocks and waserror handlers
ipifcunbind() could error out from ipifcremlifc() and Medium.unbind() *after* decrementing ifc->conv->inuse! move the decrement after calling these functions. make ipifcremlifc() never raise error but return error string. the only places where it could error is when it calls into medium functions like Medium.remroute() and Medium.remmulti(). Ignore these errors as they could happen when the ethernet driver crashed (think imported ethernet device or usb ethernet in userspace), so we will be able to unbind. add waserror() handlers as neccesary to deal with errors from Medium.addmulti(), Medium.areg() and arpenter() to properly unlock the data structures.
Diffstat (limited to 'sys/src/9/port/devenv.c')
0 files changed, 0 insertions, 0 deletions