cvs commit: src/sys/dev/ata ata-all.c ata-disk.c
	ata-disk.hatapi-all.c atapi-all.h
    Soren Schmidt 
    sos at spider.deepcore.dk
       
    Sat Sep  6 06:08:58 PDT 2003
    
    
  
It seems Nate Lawson wrote:
> On Fri, 5 Sep 2003, David G. Lawrence wrote:
> > Nate Lawson wrote:
> > > Yikes, invasive.  Is there a way to do a "if (held(lock))" construct
> > > instead?
> >
> >    What do you mean by invasive?
> 
> Changing all the callers to pass a flag whether or not they hold the lock.
> I'm not experienced with what the best accepted approach to locking is.
> However, it seems like locks should not require external information (i.e.
> hints) or recursion generally.  I understand this is not an OS lock but an
> ATA lock but it seems like the same principle would apply.  My question is
> whether there is a way the call path can be changed so that the flag is
> implicit or for the exception case there is a way to query the lock to see
> if it's already held.  Would such an approach be feasible?
Please keep in mund that this is only a stopgap solution until the
ATA driver from -current gets backported...
-Søren
    
    
More information about the cvs-src
mailing list