Re: ide_timer_expiry() - shouldn't 'wait' be int?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 02 March 2009, Bartlomiej Zolnierkiewicz wrote:
> On Monday 02 March 2009, Sergei Shtylyov wrote:
> > Hello, I wrote:
> > 
> > >> vi drivers/ide/ide-io.c +906 and note:
> > 
> > >> void ide_timer_expiry (unsigned long data)
> > >> {
> > >>     ide_expiry_t *expiry = hwif->expiry;
> > >>     ...
> > >>     unsigned long   wait = -1;
> > 
> > >    Hm, haven't nothiced that this is *unsigned*.
> > 
> > >>         ...
> > >>         if (expiry) {
> > >>             ...
> > >>             wait = expiry(drive);
> > >>             if (wait > 0) { /* continue */
> > 
> > >> also note that in include/linux/ide.h:883:
> > 
> > >> typedef int (ide_expiry_t)(ide_drive_t *);
> > 
> > >> doesn't this mean that expiry returns int, and wait therefore should
> > >> be int as well?
> > 
> > >    It rather means that ide_expiry_t() should return unsigned.
> > 
> >     Er, not really, as it can return -1 too.
> 
> It can just return 0 instead.

This time I got confused.  ide_dma_timeout_retry() takes different actions
depending on error == -1 and error == 0.

[ BTW I worked on unifying those cases so ->dma_test_irq call can be moved
  out from ide_dma_timeout_retry() to ide_timer_expiry() (=> it can be later
  merged with ->expiry tests)... ]

Thanks,
Bart
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux