I thought doing a memory free is always safe in an interrupt context. Now
it seems doing an allocation of memory is safe too.  Does MCLGET() call
vm_page_alloc() or malloc() eventually?  If so, it might block.

-Zhihui

On Thu, 26 Jul 2001, Terry Lambert wrote:

> Bosko Milekic wrote:
> > > > Er, wouldn't that be the only way for cards to refil thier DMA
> > > > recieve buffers?
> > >
> > > Look at the Tigon II and FXP drivers.  The allocations in
> > > the macros turn into m_get, not m_clusterget.
> > 
> >         From if_fxp.c (fxp_add_rfabuf(), sometimes called from fxp_intr()):
> > 
> >         MGETHDR(...);  <-- get mbuf
> >         if (m != NULL) {
> >                 MCLGET(...); <-- get cluster
> >                 ...
> >         }
> 
> Yes, I had misread things.  Alfred pointed this out to me in
> person, earlier.  I had been reading the jumbogram code,
> which uses a seperate buffer space, and then just incorrectly
> assumed.
> 
> Thanks for getting thecorrection into the list archives, so
> that future readers will be less confused: you spared me
> having to do the same.
> 
> -- Terry
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-hackers" in the body of the message
> 


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to