]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
iio: adc: meson_saradc: Fix memory allocation order
authorRemi Pommarel <repk@triplefau.lt>
Sun, 1 Sep 2019 10:54:10 +0000 (12:54 +0200)
committerKhalid Elmously <khalid.elmously@canonical.com>
Wed, 13 Nov 2019 23:47:34 +0000 (18:47 -0500)
commit00c166872f3275c2dd3ab2ed8dd9270edf61e22a
tree8ffa6d4543429ddc8eeaa6d0207196696263f9d6
parentd1735db4f8eff4d77df3b5603e6cffa6ecddff25
iio: adc: meson_saradc: Fix memory allocation order

BugLink: https://bugs.launchpad.net/bugs/1852492
[ Upstream commit de10ac47597e7a3596b27631d0d5ce5f48d2c099 ]

meson_saradc's irq handler uses priv->regmap so make sure that it is
allocated before the irq get enabled.

This also fixes crash when CONFIG_DEBUG_SHIRQ is enabled, as device
managed resources are freed in the inverted order they had been
allocated, priv->regmap was freed before the spurious fake irq that
CONFIG_DEBUG_SHIRQ adds called the handler.

Fixes: 3af109131b7eb8 ("iio: adc: meson-saradc: switch from polling to interrupt mode")
Reported-by: Elie Roudninski <xademax@gmail.com>
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Tested-by: Elie ROUDNINSKI <xademax@gmail.com>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
drivers/iio/adc/meson_saradc.c