cypress_ps2_sendbyte() returns 0 or an error code greater than 0. The cypress_ps2_read_cmd_status() function assumes that cypress_ps2_read_cmd_status() will return a negative value on error. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: 0799a924bc93 ("Input: add support for Cypress PS/2 Trackpads") Signed-off-by: Igor Artemiev <Igor.A.Artemiev@xxxxxxx> --- drivers/input/mouse/cypress_ps2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/mouse/cypress_ps2.c b/drivers/input/mouse/cypress_ps2.c index d272f1ec27ba..b170959e2ad3 100644 --- a/drivers/input/mouse/cypress_ps2.c +++ b/drivers/input/mouse/cypress_ps2.c @@ -114,7 +114,7 @@ static int cypress_ps2_read_cmd_status(struct psmouse *psmouse, memset(param, 0, pktsize); rc = cypress_ps2_sendbyte(psmouse, 0xe9); - if (rc < 0) + if (rc > 0) goto out; wait_event_timeout(ps2dev->wait, -- 2.30.2