]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.14.60/staging-vchiq_core-fix-missing-semaphore-release-in-error-case.patch
Remove duplicated commits
[thirdparty/kernel/stable-queue.git] / releases / 4.14.60 / staging-vchiq_core-fix-missing-semaphore-release-in-error-case.patch
1 From foo@baz Sat Jul 28 10:25:26 CEST 2018
2 From: Stefan Wahren <stefan.wahren@i2se.com>
3 Date: Sat, 31 Mar 2018 22:09:37 +0200
4 Subject: staging: vchiq_core: Fix missing semaphore release in error case
5
6 From: Stefan Wahren <stefan.wahren@i2se.com>
7
8 [ Upstream commit 8113b89fc615cfb531df0334fb3a091cf6a45ce0 ]
9
10 The bail out branch in case of a invalid tx_pos missed a semaphore
11 release. Dan Carpenter found this with a static checker.
12
13 Fixes: d1eab9dec610 ("staging: vchiq_core: Bail out in case of invalid tx_pos")
14 Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
15 Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
16 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
17 Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
18 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
19 ---
20 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c | 1 +
21 1 file changed, 1 insertion(+)
22
23 --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c
24 +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_core.c
25 @@ -601,6 +601,7 @@ reserve_space(VCHIQ_STATE_T *state, size
26 }
27
28 if (tx_pos == (state->slot_queue_available * VCHIQ_SLOT_SIZE)) {
29 + up(&state->slot_available_event);
30 pr_warn("%s: invalid tx_pos: %d\n", __func__, tx_pos);
31 return NULL;
32 }