forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-04 1543e317f1da31b75942316931e8f491a8920811
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) {