[Bug 220078] [patch] [panic] [ipfw] repeatable kernel panic due to unlocked INADDR_TO_IFP usage

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Jun 17 12:18:07 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220078

            Bug ID: 220078
           Summary: [patch] [panic] [ipfw] repeatable kernel panic due to
                    unlocked INADDR_TO_IFP usage
           Product: Base System
           Version: 11.0-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: eugen at freebsd.org
          Keywords: patch

Created attachment 183567
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=183567&action=edit
lock access to INADDR_TO_IFP in the ipfw

There are several places in kernel sources where code performs unlocked access
to the hash of host's IP addresses. If adresses change often enough, a panic
may occur.

For example, part of kgdb script of latest panic of my mpd server:

1642                            case O_IP_DST_ME:
1643                                    if (is_ipv4) {
1644                                            struct ifnet *tif;
1645
1646                                            INADDR_TO_IFP(dst_ip, tif);
(kgdb) p ia
$3 = (struct in_ifaddr *) 0xdeadc0dedeadc0de

Attached patches add needed locking to several such places including ipfw.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list