Re: [QUESTION] zig build systems fails on XFS V4 volumes

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

 



On 2/4/24 22:56, Dave Chinner wrote:
> On Sat, Feb 03, 2024 at 06:50:31PM +0100, Donald Buczek wrote:
>> Dear Experts,
>>
>> I'm encountering consistent build failures with the Zig language from source on certain systems, and I'm seeking insights into the issue.
>>
>> Issue Summary:
>>
>>     Build fails on XFS volumes with V4 format (crc=0).
>>     Build succeeds on XFS volumes with V5 format (crc=1), regardless of bigtime value.
> 
> mkfs.xfs output for a successful build vs a broken build, please!
> 
> Also a description of the hardware and storage stack configuration
> would be useful.
> 
>>
>> Observations:
>>
>>     The failure occurs silently during Zig's native build process.
> 
> What is the actual failure? What is the symptoms of this "silent
> failure". Please give output showing how the failure is occurs, how
> it is detected, etc. From there we can work to identify what to look
> at next.
> 
> Everything remaining in the bug report is pure speculation, but
> there's no information provided that allows us to do anything other
> than speculate in return, so I'm just going to ignore it. Document
> the evidence of the problem so we can understand it - speculation
> about causes in the absence of evidence is simply not helpful....

I was actually just hoping that someone could confirm that the functionality, as visible from userspace, should be identical, apart from timing. Or, that someone might have an idea based on experience what could be causing the different behavior. This was not intended as a bug report for XFS.

But I'm grateful, of course, if you want to look deeper into it.

Through further investigation, I've pinpointed the discrepancy between functional and non-functional filesystems, narrowing it down from "V5 vs. V4" to "ftype=1 vs. ftype=0"

Detailed filesystem configurations and a comparison are available at https://owww.molgen.mpg.de/~buczek/zt/

Included are:

    test.sh: The main script setting up two XFS volumes and initiating the build process using build.sh.
    test.log: The output log from test.sh.
    build.log: Located in xfs_{ok,fail} directories, containing the build process outputs.
    cmp.sh and cmp.log: A script and its output for comparing xfs_ok and xfs_fail directories.

In build.sh there is a test which demonstrated the build failure: "stage3/lib" not produced.  After that test, the command which should produce stage3/lib is run again, this time with strace. The traces are in xfs_{ok,fail}/traces and the whole build directories in xfs_{ok,fail}/zig-0.11.0

There is also a script cmp.sh and its output cmp.log, which compares the xfs_ok and xfs_fail directories. It also produces traces.cmp.txt which is a (width 200) side by side comparison of the strace files.

The outcome has been be replicated across various CPU architectures and kernel versions.

Best regards,

  Donald


> 
> -Dave.

-- 
Donald Buczek
buczek@xxxxxxxxxxxxx
Tel: +49 30 8413 1433





[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux