2018-02-21 3:17 GMT+09:00 Krzysztof Kozlowski <krzk@xxxxxxxxxx>: > Driver uses alias from Device Tree as an index of pin controller data > array. In case of a wrong DTB or an out-of-tree DTB, the alias could be > outside of this data array leading to out-of-bounds access. > > Depending on binary and memory layout, this could be handled properly > (showing error like "samsung-pinctrl 3860000.pinctrl: driver data not > available") or could lead to exceptions. > > Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> > Fixes: 30574f0db1b1 ("pinctrl: add samsung pinctrl and gpiolib driver") > Signed-off-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx> > > --- > > Issue is present since first version of this driver so this should be > backported as far as possible. > > Tested on Odroid HC1 (Exynos5422). Tests on S3C24xx, S3C64xx, Exynos > ARM64 and any other chips are highly appreciated. > > Linus, > I can take it through samsung/pinctrl tree and later send you again as > pull request... or you can apply it directly as I do not have any other > pinctrl patches queued so far. > --- > drivers/pinctrl/samsung/pinctrl-exynos-arm.c | 56 +++++++++++++++++++---- > drivers/pinctrl/samsung/pinctrl-exynos-arm64.c | 14 +++++- > drivers/pinctrl/samsung/pinctrl-s3c24xx.c | 28 ++++++++++-- > drivers/pinctrl/samsung/pinctrl-s3c64xx.c | 7 ++- > drivers/pinctrl/samsung/pinctrl-samsung.c | 61 ++++++++++++++++---------- > drivers/pinctrl/samsung/pinctrl-samsung.h | 40 ++++++++++------- > 6 files changed, 154 insertions(+), 52 deletions(-) Acked-by: Tomasz Figa <tomasz.figa@xxxxxxxxx> Thanks Geert for the report and Krzysztof for the patch. Best regards, Tomasz