plan9fox/sys/src/9
cinap_lenrek f12744b5db devip: fix packet loss when interface is wlocked
to prevent deadlock on media unbind (which is called with
the interface wlock()'ed), the medias reader processes
that unbind was waiting for used to discard packets when
the interface could not be rlocked.

this has the unfortunate side effect that when we change
addresses on a interface that packets are getting lost.
this is problematic for the processing of ipv6 router
advertisements when multiple RA's are getting received
in quick succession.

this change removes that packet dropping behaviour and
instead changes the unbind process to avoid the deadlock
by wunlock()ing the interface temporarily while waiting
for the reader processes to finish. the interface media
is also changed to the mullmedium before unlocking (see
the comment).
2020-01-05 18:20:47 +01:00
..
bcm bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
bcm64 bcm64: add addarchfile() prototype to fns.h (for qeed) 2019-09-15 04:53:45 +02:00
boot 9/boot/net.rc: suppress error from grep if ethernet ifstats file is not found 2019-12-04 21:56:13 +01:00
ip devip: fix packet loss when interface is wlocked 2020-01-05 18:20:47 +01:00
kw kernel: add missing FPillegal definition for kw and omap kernels 2019-12-02 07:35:25 +01:00
mtx kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
omap kernel: add missing FPillegal definition for kw and omap kernels 2019-12-02 07:35:25 +01:00
pc pc, pc64: fix cputemp decimal handling in amd10temprd (thanks Robert Ransom) 2019-12-19 15:19:02 +10:30
pc64 pc, pc64: clear debug watchpoint registers on exec and exit 2019-12-02 23:32:24 +01:00
port devcons: fix write length of writebintime() (thanks BurnZeZ) 2019-12-11 23:52:05 +01:00
ppc kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
sgi kernel: catch execution read fault on SG_NOEXEC segment (for mips) 2019-08-27 03:48:51 +02:00
teg2 kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
xen kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
zynq kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
mkfile remove unmaintained omap4 (pandaboard) kernel 2016-05-05 16:35:25 +02:00