6b...@6bone.informatik.uni-leipzig.de writes: >newfs -m 1 -O 2 -o space -q user -q group /dev/dk1 >/dev/rdk1: 267036672.0MB (546891104184 sectors) block size 32768, fragment >size 4096 > using 303430 cylinder groups of 880.06MB, 28162 blks, 7168 inodes. >super-block backups (for fsck_ffs -b #) at: >192, 1802560, 3604928, 5407296, 7209664, 9012032, 10814400, 12616768, 14419136, >..............................................................................
>fsck -f /dev/dk1 >** /dev/rdk1 >** File system is already clean >fsck: /dev/rdk1: Segmentation fault >(A core file is created. However, there is no error message. Dmesg also >provides no information.) The segfault can be reproduced: (gdb) where #0 0x00007c0fe318268c in memset () from /lib/libc.so.12 #1 0x00000000e581131b in __memset_ichk (len=8545173504, src=0, dst=<optimized out>) at /home/netbsd10/destdir.amd64/usr/include/ssp/string.h:84 #2 setup (dev=dev@entry=0x7c0fe3d5d000 "./testimage", origdev=origdev@entry=0x7c0fe3d5d000 "./testimage") at /home/netbsd10/src/sbin/fsck_ffs/setup.c:504 #3 0x00000000e580815e in checkfilesys ( filesys=filesys@entry=0x7c0fe3d5d000 "./testimage", origfs=origfs@entry=0x7c0fe3d5d000 "./testimage", child=0) at /home/netbsd10/src/sbin/fsck_ffs/main.c:397 #4 0x00000000e5818500 in main (argc=<optimized out>, argv=0x7f7fffe8a6a0) at /home/netbsd10/src/sbin/fsck_ffs/main.c:336 /* * allocate and initialize the necessary maps */ bmapsize = roundup(howmany(maxfsblock, NBBY), sizeof(int16_t)); blockmap = aligned_alloc(DEV_BSIZE, (unsigned)bmapsize); if (blockmap == NULL) { pwarn("cannot alloc %u bytes for blockmap\n", (unsigned)bmapsize); goto badsblabel; } memset(blockmap, 0, bmapsize); with: (gdb) print bmapsize $1 = 8545173504 but: (gdb) print (unsigned)bmapsize $3 = 4250206208 This helps: Index: sbin/fsck_ffs/setup.c =================================================================== RCS file: /cvsroot/src/sbin/fsck_ffs/setup.c,v retrieving revision 1.104.2.2 diff -p -u -r1.104.2.2 setup.c --- sbin/fsck_ffs/setup.c 13 May 2023 11:54:17 -0000 1.104.2.2 +++ sbin/fsck_ffs/setup.c 17 Jun 2025 05:37:30 -0000 @@ -87,7 +87,7 @@ setup(const char *dev, const char *origd { uint32_t cg; long size, asked, i, j; - long bmapsize; + size_t bmapsize; struct disk_geom geo; struct dkwedge_info dkw; off_t sizepb; @@ -495,10 +495,10 @@ setup(const char *dev, const char *origd * allocate and initialize the necessary maps */ bmapsize = roundup(howmany(maxfsblock, NBBY), sizeof(int16_t)); - blockmap = aligned_alloc(DEV_BSIZE, (unsigned)bmapsize); + blockmap = aligned_alloc(DEV_BSIZE, bmapsize); if (blockmap == NULL) { - pwarn("cannot alloc %u bytes for blockmap\n", - (unsigned)bmapsize); + pwarn("cannot alloc %zu bytes for blockmap\n", + bmapsize); goto badsblabel; } memset(blockmap, 0, bmapsize); N.B. fsck takes about 9GB RAM for the empty filesystem of that size. Greetings,