Creating a bug so this is not lost. The automatic FAT type determination is broken. Reproduction case: $ truncate -s 2147483648 test $ newfs_msdos ./test newfs_msdos: warning, ./test is not a character device newfs_msdos: 65519 clusters too few clusters for FAT32, need 65525
I believe the issue is the cluster detection mechanism (Line 334 to 351). For instance, this works: newfs_msdos -c 128 ./test
The lines are in sbin/newfs_msdos/mkfs_msdos.c