Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: freebsd/freebsd-src
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: rlibby/freebsd
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: mnowait-dbg
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 9 commits
  • 11 files changed
  • 1 contributor

Commits on Jun 22, 2019

  1. malloc/zalloc M_NOWAIT failure injection

    The MALLOC_MAKE_FAILURES kernel option could be used to inject failures
    for malloc(9) allocations which use the M_NOWAIT flag.  This is an
    expansion and enhancement.
     - Failures may now be injected for UMA zalloc instead of just malloc.
     - A fail(9) fail_point now controls injection instead of an ad hoc rate
       mechanism.
     - A whitelist and blacklist now allow specific malloc type and UMA zone
       names to be targeted or avoided.
     - Details about the last injection are now recorded to aid debugging.
    
    This currently still lacks a manual page and the option is not yet
    enabled in any kernel configurations.
    
    Reviewers: markj, rwatson
    Subscribers: glebius, jeff
    
    Sponsored by:	Dell EMC Isilon
    Differential Revision:	https://reviews.freebsd.org/D20714
    rlibby committed Jun 22, 2019
    Configuration menu
    Copy the full SHA
    246c314 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2019

  1. uma: trash memory when ctor/dtor supplied too

    On INVARIANTS kernels, UMA has a use-after-free detection mechanism.
    This mechanism previously required that all of the ctor/dtor/uminit/fini
    arguments to uma_zcreate() be NULL in order to function.  Now, it only
    requires that uminit and fini be NULL; now, the trash ctor and dtor will
    be called in addition to any supplied ctor or dtor.
    
    Also do a little refactoring for readability of the resulting logic.
    
    This enables use-after-free detection for more zones, and will allow for
    simplification of some callers that worked around the previous
    restriction (see kern_mbuf.c).
    
    Sponsored by:	Dell EMC Isilon
    Differential Revision:	https://reviews.freebsd.org/D20722
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    bbbe967 View commit details
    Browse the repository at this point in the history
  2. igmp: solve M_NOWAIT softc allocation failure

    The igmp_ifsoftc allocation was done with M_NOWAIT, but it did not
    handle failure.  It may have trapped immediately, or at detach time.
    Actually, the allocation does not appear to need to be M_NOWAIT at all,
    except for that it was being done under a mutex.  Instead, do an
    M_WAITOK allocation outside the mutex.
    
    Sponsored by:	Dell EMC Isilon
    
    Reviewers: glebius
    Subscribers: mmacy
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    af64ef3 View commit details
    Browse the repository at this point in the history
  3. mld6: solve M_NOWAIT softc allocation failure

    Apply the igmp fix to mld6.
    
    Sponsored by:	Dell EMC Isilon
    
    Reviewers: glebius
    Subscribers: mmacy
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    76efcf9 View commit details
    Browse the repository at this point in the history
  4. in6_joingroup_locked: need if_addr_lock around in6m_disconnect_locked

    It looks like the call that requires the lock was introduced in r337866.
    
    Sponsored by:	Dell EMC Isilon
    
    Reviewers: glebius
    Subscribers: mmacy, shurd
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    457c26b View commit details
    Browse the repository at this point in the history
  5. in_mcast.c: need if_addr_lock around inm_release_deferred

    Apply a similar fix as for in6_mcast.c.
    
    Sponsored by:	Dell EMC Isilon
    
    Reviewers: glebius
    Subscribers: mmacy, shurd
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    0eb064b View commit details
    Browse the repository at this point in the history
  6. netipsec key_register: check for M_NOWAIT alloc failure

    Sponsored by:	Dell EMC Isilon
    
    Reviewers: ae
    Subscribers: cem
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    11e6957 View commit details
    Browse the repository at this point in the history
  7. g_eli_create: only dec g_access acw if we inc'd it

    Sponsored by:	Dell EMC Isilon
    
    Reviewers: pjd
    Subscribers: ae, cem, markj
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    31c8091 View commit details
    Browse the repository at this point in the history
  8. g_mirror_taste: avoid deadlock, always clear tasting flag

    If g_mirror_taste encountered an error at g_mirror_add_disk, it might
    try to g_mirror_destroy the device with the G_MIRROR_DEVICE_FLAG_TASTING
    flag still set.  This would wait on a worker to complete the destruction
    with g_mirror_try_destroy, but that function bails out if the tasting
    flag is set, resulting in a deadlock.  Clear the tasting flag before
    trying to destroy the device.
    
    Tested with:
    sysctl debug.fail_point.mnowait="1%return"
    kyua test -k /usr/tests/sys/geom/class/mirror/Kyuafile
    
    Sponsored by:	Dell EMC Isilon
    
    Reviewers: markj, pjd
    Subscribers: ae, cem
    rlibby committed Jun 24, 2019
    Configuration menu
    Copy the full SHA
    a29e8fb View commit details
    Browse the repository at this point in the history
Loading