pwm: Don't check pointer for being non-NULL after use
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fri, 29 Mar 2024 10:07:56 +0000 (11:07 +0100)
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 30 Apr 2024 16:56:55 +0000 (18:56 +0200)
commitc6837aa18016da3e524eb7bb51b8941c1ce8cd73
treecde1dbfdae34861481d7f67d5bef5a21b48a37a7
parent4c56b1434b814899c42a9d9f43d8265371282cd0
pwm: Don't check pointer for being non-NULL after use

After assigning chip = pwm->chip; the compiler is free to assume that
pwm is non-NULL and so can optimize out the check for pwm against NULL.

While it's probably a programming error to pass a NULL pointer to
pwm_put() this shouldn't be dropped without careful consideration and
wasn't intended.

So assign chip only after the NULL check.

Reported-by: David Lechner <dlechner@baylibre.com>
Link: https://lore.kernel.org/r/66a6f562-1fdd-4e45-995a-e7995432aa0c@baylibre.com
Fixes: 4c56b1434b81 ("pwm: Add a struct device to struct pwm_chip")
Link: https://lore.kernel.org/r/20240329101648.544155-2-u.kleine-koenig@pengutronix.de
Reviewed-by: David Lechner <dlechner@baylibre.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
drivers/pwm/core.c