forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-09 b22da3d8526a935aa31e086e63f60ff3246cb61c
kernel/drivers/mtd/nand/bbt.c
....@@ -116,7 +116,10 @@
116116 if (entry >= nanddev_neraseblocks(nand))
117117 return -ERANGE;
118118
119
- pos[0] &= ~GENMASK(offs + bits_per_block - 1, offs);
119
+ if (bits_per_block + offs > BITS_PER_LONG)
120
+ pos[0] &= ~GENMASK(BITS_PER_LONG - 1, offs);
121
+ else
122
+ pos[0] &= ~GENMASK(offs + bits_per_block - 1, offs);
120123 pos[0] |= val << offs;
121124
122125 if (bits_per_block + offs > BITS_PER_LONG) {