From: Jan Kara Date: Tue, 28 Feb 2023 11:11:38 +0000 (+0100) Subject: udf: Warn if block mapping is done for in-ICB files X-Git-Tag: v6.6.7~3009^2~13 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=63bceed808c5cafbac4e20b5a40012a0ec6c6529;p=platform%2Fkernel%2Flinux-starfive.git udf: Warn if block mapping is done for in-ICB files Now that address space operations are merge dfor in-ICB and normal files, it is more likely some code mistakenly tries to map blocks for in-ICB files. WARN and return error instead of silently returning garbage. Signed-off-by: Jan Kara --- diff --git a/fs/udf/inode.c b/fs/udf/inode.c index 0cb7d8f..2210e5e 100644 --- a/fs/udf/inode.c +++ b/fs/udf/inode.c @@ -416,6 +416,9 @@ static int udf_map_block(struct inode *inode, struct udf_map_rq *map) int err; struct udf_inode_info *iinfo = UDF_I(inode); + if (WARN_ON_ONCE(iinfo->i_alloc_type == ICBTAG_FLAG_AD_IN_ICB)) + return -EFSCORRUPTED; + map->oflags = 0; if (!(map->iflags & UDF_MAP_CREATE)) { struct kernel_lb_addr eloc;