iommu/omap: Fix buffer overflow in debugfs
stable inclusion from stable-v5.10.150 commit 2fee0dbfaeaaa4bda04279ce772c4572b1429d04 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I6D0XA Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=2fee0dbfaeaaa4bda04279ce772c4572b1429d04 -------------------------------- [ Upstream commit 184233a5 ] There are two issues here: 1) The "len" variable needs to be checked before the very first write. Otherwise if omap2_iommu_dump_ctx() with "bytes" less than 32 it is a buffer overflow. 2) The snprintf() function returns the number of bytes that *would* have been copied if there were enough space. But we want to know the number of bytes which were *actually* copied so use scnprintf() instead. Fixes: bd4396f0 ("iommu/omap: Consolidate OMAP IOMMU modules") Signed-off-by:Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by:
Robin Murphy <robin.murphy@arm.com> Reviewed-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://lore.kernel.org/r/YuvYh1JbE3v+abd5@kili Signed-off-by:
Joerg Roedel <jroedel@suse.de> Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
Jialin Zhang <zhangjialin11@huawei.com>
Loading
Please sign in to comment