[Bug 276464] assertion failure running fsck_msdosfs -n

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 19 Jan 2024 18:30:30 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276464

            Bug ID: 276464
           Summary: assertion failure running fsck_msdosfs -n
           Product: Base System
           Version: 13.2-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: jfc@mit.edu

Running fsck_msdosfs -n on a bad filesystem produces the following output:

** /dev/zvol/fast/fat32s1
** Phase 1 - Read FAT and checking connectivity
FAT starts with odd byte sequence (f8ffff0ffffffff7)
Correct? no
** Phase 2 - Checking Directories
/archive/2013-02-02 Drum1 doesn't start a new cluster chain
Truncate? no
Assertion failed: (fat_is_cl_head(fat, head)), function checkchain, file
/usr/home/jfc/freebsd/src/sbin/fsck_msdosfs/fat.c, line 1046.

The assertion may be invalid with -n.

Alternatively, this code from dir.c line 985

                        } else {
                                mod |= k = checksize(fat, p, &dirent);
                                if (k & FSDIRMOD)
                                        mod |= THISMOD;
                        }

should not execute if (mod & FSERROR).

This is the same bad filesystem from bug 276408.

# file -s /dev/zvol/fast/fat32
/dev/zvol/fast/fat32: DOS/MBR boot sector MS-MBR 9M english at offset 0x10+0xFF
"Invalid partition table" at offset 0x127 "Error loading operating system" at
offset 0x146 "Missing operating system", disk signature 0xaab3b4a1, created
with driveID 0x81 at 21:59:0; partition 1 : ID=0xc, active, start-CHS
(0x0,1,1), end-CHS (0x280,254,63), startsector 63, 586067202 sectors
# file -s /dev/zvol/fast/fat32s1 
/dev/zvol/fast/fat32s1: DOS/MBR boot sector, code offset 0x5a+2, OEM-ID
"MSWIN4.1", sectors/cluster 64, Media descriptor 0xf8, sectors/track 63, heads
255, hidden sectors 63, sectors 586067202 (volumes > 32 MB), FAT (32 bit),
sectors/FAT 71533, serial number 0x1dd91023, label: "SEA_DISK   "

-- 
You are receiving this mail because:
You are the assignee for the bug.