Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 368fd81d authored by Tilman Schmidt's avatar Tilman Schmidt Committed by David S. Miller
Browse files

bas_gigaset: use tasklet_hi_schedule for timing critical tasklets



The tasklets for isochronous data transfer need to run within 8 msec
to avoid over/underruns, so schedule them with high priority to fix
reported issues with occasional over/underruns.

Signed-off-by: default avatarTilman Schmidt <tilman@imap.cc>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d9677a45
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -821,7 +821,7 @@ static void read_iso_callback(struct urb *urb)
		/* pass URB to tasklet */
		ubc->isoindone = urb;
		ubc->isoinstatus = status;
		tasklet_schedule(&ubc->rcvd_tasklet);
		tasklet_hi_schedule(&ubc->rcvd_tasklet);
	} else {
		/* tasklet still busy, drop data and resubmit URB */
		ubc->loststatus = status;
@@ -888,7 +888,7 @@ static void write_iso_callback(struct urb *urb)
	ubc->isooutovfl = ubc->isooutdone;
	ubc->isooutdone = ucx;
	spin_unlock_irqrestore(&ubc->isooutlock, flags);
	tasklet_schedule(&ubc->sent_tasklet);
	tasklet_hi_schedule(&ubc->sent_tasklet);
}

/* starturbs