NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-sun2/56158: sun2 m68000: super-block backups (for fsck -b #) at: 32,nbmakefs: Writing inode 152 (work/./bin/cat), bytes 528384 + 4096: No space left on device



Hi!

On Fri, 2021-05-14 16:11:19 -0400, Christos Zoulas <christos%zoulas.com@localhost> wrote:
> Save the failed build and compare it with a successful one (file sizes).
> See which files are different and where. Something must be broken.

So here's another round of builds. I bind-mounted some scratch space
/short and
/loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong
and started builds in these two directories.

  Ignoring some messages containing timestamps, different order of
file names and mktemp() based filenames, I have see that creating
ctags fails (though I thought Linux had dynamically allocated process
argument space?!):



However, coming back to the ramdisk content (I guess this is it):

root@spock:/# du -ks /{short,loo*}/obj/distrib/sun2/ramdisk/work
572     /short/obj/distrib/sun2/ramdisk/work
584     /loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong/obj/distrib/sun2/ramdisk/work

root@spock:/short/obj/tooldir.Linux-5.10.0-3-amd64-x86_64/bin# ./m68010--netbsdelf-size  /{short,loo*}/obj/distrib/sun2/ramdisk/work/bin/cat
   text    data     bss     dec     hex filename
 513036    9200   46780  569016   8aeb8 /short/obj/distrib/sun2/ramdisk/work/bin/cat
 526720    9200   46780  582700   8e42c /loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong/obj/distrib/sun2/ramdisk/work/bin/cat

However, m68k-readelf's (from above tooldir) output diff's like this:


root@spock:/short/obj/tooldir.Linux-5.10.0-3-amd64-x86_64/bin# diff -u /tmp/readelf-t-*
--- /tmp/readelf-t-long 2021-05-16 21:30:31.634520067 +0200
+++ /tmp/readelf-t-short        2021-05-16 21:30:39.894380367 +0200
@@ -1,5 +1,5 @@
-File: /loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong/obj/distrib/sun2/ramdisk/work/bin/cat
-There are 13 section headers, starting at offset 0x84458:
+File: /short/obj/distrib/sun2/ramdisk/work/bin/cat
+There are 13 section headers, starting at offset 0x80458:
 
 Section Headers:
   [Nr] Name
@@ -21,26 +21,26 @@
        PROGBITS        0006ac32 068c32 000008 00   0   0  2
        [00000006]: ALLOC, EXEC
   [ 5] .rodata
-       PROGBITS        0006ac40 068c40 017dee 00   0   0  8
+       PROGBITS        0006ac40 068c40 01487a 00   0   0  8
        [00000002]: ALLOC
   [ 6] .init_array
-       INIT_ARRAY      00094000 082000 000018 04   0   0  4
+       INIT_ARRAY      00090000 07e000 000018 04   0   0  4
        [00000003]: WRITE, ALLOC
   [ 7] .ctors
-       PROGBITS        00094018 082018 000008 00   0   0  4
+       PROGBITS        00090018 07e018 000008 00   0   0  4
        [00000003]: WRITE, ALLOC
   [ 8] .dtors
-       PROGBITS        00094020 082020 000008 00   0   0  4
+       PROGBITS        00090020 07e020 000008 00   0   0  4
        [00000003]: WRITE, ALLOC
   [ 9] .jcr
-       PROGBITS        00094028 082028 000004 00   0   0  4
+       PROGBITS        00090028 07e028 000004 00   0   0  4
        [00000003]: WRITE, ALLOC
   [10] .data
-       PROGBITS        00094030 082030 0023c4 00   0   0  8
+       PROGBITS        00090030 07e030 0023c4 00   0   0  8
        [00000003]: WRITE, ALLOC
   [11] .bss
-       NOBITS          000963f8 0843f4 00b6bc 00   0   0  8
+       NOBITS          000923f8 0803f4 00b6bc 00   0   0  8
        [00000003]: WRITE, ALLOC
   [12] .shstrtab
-       STRTAB          00000000 0843f4 000062 00   0   0  1
+       STRTAB          00000000 0803f4 000062 00   0   0  1
        [00000000]: 



So it's actually .rodata that's being sized up here. Dumping .rodata
(readelf -x .rodata) actually reveals many occurrecnces of the
looooong dirname and comparing to sources, I guess the "culprit"
pulling in the source filenames (with full path) is _DIAGASSERT() as
used from within NetBSD's libc. These two builds were, however, done
without the patch (by Izumi Tsutsui) adding "DBG+= -DNDEBUG" to
distrib/sun2/miniroot/Makefile. If libc is built with this DBG flag,
that might actually help. Will give this a try next.

For reference, I'll attach the two multi-call binaries.

Thanks,
  Jan-Benedict

-- 

Attachment: multicall-long
Description: Binary data

Attachment: multicall-short
Description: Binary data

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index