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

Commit 2559d19f authored by Stephane Viau's avatar Stephane Viau Committed by Rob Clark
Browse files

drm/msm/mdp5: Fix negative SMP block allocation



In case we request a number of SMP blocks which is lower than
the already reserved blocks, we should not try to allocate a
negative number, but 0 blocks instead.

Signed-off-by: default avatarStephane Viau <sviau@codeaurora.org>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent cddfaebd
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -119,9 +119,10 @@ static int smp_request_block(struct mdp5_smp *smp,

	spin_lock_irqsave(&smp->state_lock, flags);

	nblks -= reserved;
	if (reserved)
	if (reserved) {
		nblks = max(0, nblks - reserved);
		DBG("%d MMBs allocated (%d reserved)", nblks, reserved);
	}

	avail = cnt - bitmap_weight(smp->state, cnt);
	if (nblks > avail) {