Author: glebius
Date: Mon Nov 11 06:28:25 2019
New Revision: 354607
URL: https://svnweb.freebsd.org/changeset/base/354607

Log:
  It is unclear why in6_pcblookup_local() would require write access
  to the PCB hash.  The function doesn't modify the hash. It always
  asserted write lock historically, but with epoch conversion this
  fails in some special cases.
  
  Reviewed by:  rwatson, bz
  Reported-by:  [email protected]

Modified:
  head/sys/netinet6/in6_pcb.c

Modified: head/sys/netinet6/in6_pcb.c
==============================================================================
--- head/sys/netinet6/in6_pcb.c Mon Nov 11 05:06:49 2019        (r354606)
+++ head/sys/netinet6/in6_pcb.c Mon Nov 11 06:28:25 2019        (r354607)
@@ -714,7 +714,7 @@ in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct 
        KASSERT((lookupflags & ~(INPLOOKUP_WILDCARD)) == 0,
            ("%s: invalid lookup flags %d", __func__, lookupflags));
 
-       INP_HASH_WLOCK_ASSERT(pcbinfo);
+       INP_HASH_LOCK_ASSERT(pcbinfo);
 
        if ((lookupflags & INPLOOKUP_WILDCARD) == 0) {
                struct inpcbhead *head;
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to