[ Sasha's backport helper bot ] Hi, The upstream commit SHA1 provided is correct: a3ff29a95fde16906304455aa8c0bd84eb770258 WARNING: Author mismatch between patch and upstream commit: Backport author: Harshit Mogalapalli <harshit.m.mogalapalli@xxxxxxxxxx> Commit author: Yuezhang Mo <Yuezhang.Mo@xxxxxxxx> Status in newer kernel trees: 6.12.y | Present (exact SHA1) 6.6.y | Present (exact SHA1) 6.1.y | Not found Note: The patch differs from the upstream commit: --- 1: a3ff29a95fde ! 1: bb39fa77df0f exfat: support dynamic allocate bh for exfat_entry_set_cache @@ Metadata ## Commit message ## exfat: support dynamic allocate bh for exfat_entry_set_cache + [ Upstream commit a3ff29a95fde16906304455aa8c0bd84eb770258 ] + In special cases, a file or a directory may occupied more than 19 directory entries, pre-allocating 3 bh is not enough. Such as - Support vendor secondary directory entry in the future. @@ Commit message Reviewed-by: Aoyama Wataru <wataru.aoyama@xxxxxxxx> Reviewed-by: Sungjong Seo <sj1557.seo@xxxxxxxxxxx> Signed-off-by: Namjae Jeon <linkinjeon@xxxxxxxxxx> + (cherry picked from commit a3ff29a95fde16906304455aa8c0bd84eb770258) + [Harshit: Backport - clean cherry-pick to 6.1.y] + Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@xxxxxxxxxx> ## fs/exfat/dir.c ## @@ fs/exfat/dir.c: int exfat_free_dentry_set(struct exfat_entry_set_cache *es, int sync) @@ fs/exfat/dir.c: struct exfat_entry_set_cache *exfat_get_dentry_set(struct super_ ## fs/exfat/exfat_fs.h ## @@ fs/exfat/exfat_fs.h: struct exfat_entry_set_cache { - struct super_block *sb; + bool modified; unsigned int start_off; int num_bh; - struct buffer_head *bh[DIR_CACHE_SIZE]; + struct buffer_head *__bh[DIR_CACHE_SIZE]; + struct buffer_head **bh; unsigned int num_entries; - bool modified; }; +#define IS_DYNAMIC_ES(es) ((es)->__bh != (es)->bh) --- Results of testing on various branches: | Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-6.1.y | Success | Success |