Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 May 2007 13:53:24 -0700
From:      John-Mark Gurney <gurney_j@resnet.uoregon.edu>
To:        John Baldwin <jhb@freebsd.org>
Cc:        cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org, Paolo Pisati <piso@freebsd.org>
Subject:   Re: cvs commit: src/sys/amd64/amd64 intr_machdep.c src/sys/i386/i386 intr_machdep.c src/sys/kern kern_intr.c src/sys/sys interrupt.h
Message-ID:  <20070507205323.GT17958@funkthat.com>
In-Reply-To: <200705071354.00455.jhb@freebsd.org>
References:  <200705061702.l46H2oVK057260@repoman.freebsd.org> <20070506174426.GO17958@funkthat.com> <20070506191027.GA2050@tin.it> <200705071354.00455.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote this message on Mon, May 07, 2007 at 13:53 -0400:
> On Sunday 06 May 2007 03:10:27 pm Paolo Pisati wrote:
> > On Sun, May 06, 2007 at 10:44:26AM -0700, John-Mark Gurney wrote:
> > > Paolo Pisati wrote this message on Sun, May 06, 2007 at 17:02 +0000:
> > > >   Modified files:
> > > >     sys/amd64/amd64      intr_machdep.c 
> > > >     sys/i386/i386        intr_machdep.c 
> > > >     sys/kern             kern_intr.c 
> > > >     sys/sys              interrupt.h 
> > > >   Log:
> > > >   Bring in the reminaing bits to make interrupt filtering work:
> > > 
> > > When are we going to see man page updates to document this new feature?
> > 
> > didn't prepare any patch for man pages cause the support for some
> > archs is still missing, but i can do that if requested.
> >  
> > > Also, you forgot to update sys/sys/bus.h's comments? or did you fix
> > > the code to behave like the comments?
> > 
> > you mean this comment:
> > 
> > --------8<--------8<--------8<--------8<--------8<--------8<--------
> > 
> > /**
> >  * @brief Driver interrupt filter return values
> >  *
> >  * If a driver provides an interrupt filter routine it must return an
> >  * integer consisting of oring together zero or more of the following
> >  * flags:
> >  *
> >  *      FILTER_STRAY    - this device did not trigger the interrupt
> >  *      FILTER_HANDLED  - the interrupt has been fully handled and can be 
> EOId
> >  *      FILTER_SCHEDULE_THREAD - the threaded interrupt handler should be
> >  *                        scheduled to execute
> >  *
> >  * If the driver does not provide a filter, then the interrupt code will
> >  * act is if the filter had returned FILTER_SCHEDULE_THREAD.  Note that it
> >  * is illegal to specify any other flag with FILTER_STRAY and that it is
> >  * illegal to not specify either of FILTER_HANDLED or FILTER_SCHEDULE_THREAD
> >  * if FILTER_STRAY is not specified.
> >  */
> > #define FILTER_STRAY            0x01
> > #define FILTER_HANDLED          0x02
> > #define FILTER_SCHEDULE_THREAD  0x04
> 
> My suggestion on this a while back btw was to convert this from a bitmask to 
> an "enum" and have FILTER_SCHEDULE_THREAD be 3 and imply FILTER_HANDLED, and 
> filters return 1 of the 3 values.

That's fine w/ me..  as long as it's documented as such...

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070507205323.GT17958>