Re: [PATCH] libata: disable_irq() during polling IDENTIFY (take 2)

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

 



Alan Cox wrote:
>> So, are you suggesting pushing data transfer or the whole HSM to
>> workqueue?  I'm all for that.  I just thought it didn't make sense to
> 
> I was thinking data transfer but HSM itself might work too, I'd not even
> thought of push that much out.

I thought pushing the whole HSM out to workqueue will be the simplest to
implement as we already have everything needed for polling.

>> Anyways, if that's the plan, as Albert suggested earlier, we can just
>> mark that HSM is running in ap->pflags or somewhere and skip Status
>> clearing if it's running.  It's not like the controller is gonna raise
>> interrupt while it's transferring data anyway (we always have leading
>> status checks before data transfer).
> 
> And the controllers with a hidden FIFO magically defer the IRQ until the
> FIFO empties so that the events occur in the expected sequence for the
> spec even if the drive transfer to the fifo already finished and the host
> is still emptying it.

Yeah, that sadly makes things a bit tricky tho.  We need to make the
last transfer and clearing HSM running flag atomic; otherwise, we're
likely to get nobody-cared right after we finish the last transfer.

I guess it's about time to listen what Jeff thinks.

Albert, if Jeff agrees with pushing HSM or data transfer to workqueue,
are you interested in doing that?  The HSM is your baby after all.  :-)

Thanks.

-- 
tejun
-
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