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

Commit 2bc53b80 authored by Ingo Tuchscherer's avatar Ingo Tuchscherer Committed by Martin Schwidefsky
Browse files

s390/zcrypt: Fix AP queue handling if queue is full



When the AP queue depth of requests was reached additional requests
have been ignored. These request are stuck in the request queue.

The AP queue handling now push the next waiting request into the
queue after fetching a previous serviced and finished reply.

Signed-off-by: default avatarIngo Tuchscherer <ingo.tuchscherer@linux.vnet.ibm.com>
Acked-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Acked-by: default avatarHarald Freudenberger <freude@linux.vnet.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 78c4a49a
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -599,8 +599,10 @@ static enum ap_wait ap_sm_read(struct ap_device *ap_dev)
	status = ap_sm_recv(ap_dev);
	switch (status.response_code) {
	case AP_RESPONSE_NORMAL:
		if (ap_dev->queue_count > 0)
		if (ap_dev->queue_count > 0) {
			ap_dev->state = AP_STATE_WORKING;
			return AP_WAIT_AGAIN;
		}
		ap_dev->state = AP_STATE_IDLE;
		return AP_WAIT_NONE;
	case AP_RESPONSE_NO_PENDING_REPLY: