[PATCH v3] FAT: Allow 0xE9 near jump in fat_read_static_bpb()

From: Ziran Zhang

Date: Sun Apr 12 2026 - 00:02:10 EST


Changes in v3:
- Fix line length over 80 columns (split condition into two lines)
- Correct version number from erroneous "v2 v2" to v3

Signed-off-by: Ziran Zhang <zhangcoder@xxxxxxxx>
---

Please ignore the earlier erroneous "[PATCH v2 v2]" patch.
This is the corrected v3.

fs/fat/inode.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index 28f78df08..0e7d106ea 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -1479,8 +1479,9 @@ static int fat_read_static_bpb(struct super_block *sb,
int error = -EINVAL;
unsigned i;

- /* 16-bit DOS 1.x reliably wrote bootstrap short-jmp code */
- if (b->ignored[0] != 0xeb || b->ignored[2] != 0x90) {
+ /* 16-bit DOS 1.x reliably wrote bootstrap short-jmp or near-jmp code */
+ if ((b->ignored[0] != 0xeb || b->ignored[2] != 0x90) &&
+ (b->ignored[0] != 0xe9)) {
if (!silent)
fat_msg(sb, KERN_ERR,
"%s; no bootstrapping code", notdos1x);
--
2.43.0