svn commit: r352778 - in head/sys: conf sys

Warner Losh imp at bsdimp.com
Fri Sep 27 00:29:30 UTC 2019


This is a developer only option. Out-of-tree consumers would need to be
compiled with the kernel directory, much like they would need to be for
other things. You wouldn't run a system with this normally: it's only to
debug specific instances of bad behavior. I think, like other debugging
options, that it's fine.

Warner

On Thu, Sep 26, 2019 at 6:18 PM Ryan Stone <rysto32 at gmail.com> wrote:

> Is this enough?  Won't out-of-tree modules get compiled without
> EPOCH_TRACE set?  If such a module is loaded on a kernel with
> EPOCH_TRACE set then the module will call epoch_enter_preempt() with a
> epoch_tracker that is too small and have its stack corrupted, won't
> it?
>
> On Thu, Sep 26, 2019 at 5:12 PM Gleb Smirnoff <glebius at freebsd.org> wrote:
> >
> > Author: glebius
> > Date: Thu Sep 26 21:12:47 2019
> > New Revision: 352778
> > URL: https://svnweb.freebsd.org/changeset/base/352778
> >
> > Log:
> >   Move EPOCH_TRACE to opt_global.h, so that any external modules that
> >   use epoch don't need Makefile tweaks.
> >
> >   The downside is that any developer who wants EPOCH_TRACE needs to
> >   rebuild kernel in full, but that's fine.
> >
> >   Reviewed by:  imp
> >
> > Modified:
> >   head/sys/conf/options
> >   head/sys/sys/epoch.h
> >
> > Modified: head/sys/conf/options
> >
> ==============================================================================
> > --- head/sys/conf/options       Thu Sep 26 21:06:55 2019        (r352777)
> > +++ head/sys/conf/options       Thu Sep 26 21:12:47 2019        (r352778)
> > @@ -712,7 +712,7 @@ WITNESS_SKIPSPIN    opt_witness.h
> >  WITNESS_COUNT          opt_witness.h
> >  OPENSOLARIS_WITNESS    opt_global.h
> >
> > -EPOCH_TRACE            opt_epoch.h
> > +EPOCH_TRACE            opt_global.h
> >
> >  # options for ACPI support
> >  ACPI_DEBUG             opt_acpi.h
> >
> > Modified: head/sys/sys/epoch.h
> >
> ==============================================================================
> > --- head/sys/sys/epoch.h        Thu Sep 26 21:06:55 2019        (r352777)
> > +++ head/sys/sys/epoch.h        Thu Sep 26 21:12:47 2019        (r352778)
> > @@ -41,8 +41,6 @@ typedef struct epoch_context *epoch_context_t;
> >  #include <sys/pcpu.h>
> >  #include <ck_epoch.h>
> >
> > -#include "opt_epoch.h"
> > -
> >  struct epoch;
> >  typedef struct epoch *epoch_t;
> >
>


More information about the svn-src-all mailing list