Re: some question about EXDEV status in period schedule

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

 



On Tue, 3 Dec 2013, yoma sophian wrote:

> > This isn't a race condition, because the driver does not terminate
> > isochronous URBs before they are scheduled to end.
> >
> > For example, suppose there was an isochronous URB that was scheduled to
> > transmit packets during microframes 100, 180, 260, and 340.  If an
> > interrupt for a bulk URB happens during microframe 212, the driver will
> > not terminate the isochronous URB, because it is not scheduled to end
> > yet.  But if an interrupt for a bulk URB happens during microframe 347,
> > then the driver will terminate the isochronous URB, because that is
> > after the scheduled end (which is microframe 340).
> how about situation like below:
> HW Frame index is located at microframe 90. And there was an
> isochronous URB that was scheduled to transmit packets during
> microframes 100, 180, 260, and 340.
> 
> Interrupt happen for Bulk when HW increase Frame index to 98.
> 
> After driver scan asynchronous schedule,  driver finds
> ehci->isoc_count != 0 and start scan_isoc.
> Isn't it possible that Driver may drop those previous scheduled
> isochronous packets?

No, it's not possible.  The packets won't be removed from the schedule 
until after microframe 340.

Alan Stern

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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux