Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 May 2022 11:30:05 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Paul Floyd <paulf2718@gmail.com>
Cc:        FreeBSD Hackers <freebsd-hackers@freebsd.org>
Subject:   Re: Changes to stat ABI
Message-ID:  <CANCZdfqtS5_bzj-4Q0ERJ=qar==NWURke5O6STkhyVHepD5krg@mail.gmail.com>
In-Reply-To: <cd9ef009-47aa-acc7-509e-7afca9b24a84@gmail.com>
References:  <cd9ef009-47aa-acc7-509e-7afca9b24a84@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
ino64 has gone into the tree. The stat structure layout
changed. 69921123490b99c2588b0c743bc4af32bbe6601c went into the tree a
while ago, but maybe recently enough to mess this up.

Author: Konstantin Belousov <kib@FreeBSD.org>
Date:   Tue May 23 09:29:05 2017 +0000

    Commit the 64-bit inode project.

    Extend the ino_t, dev_t, nlink_t types to 64-bit ints.  Modify
    struct dirent layout to add d_off, increase the size of d_fileno
    to 64-bits, increase the size of d_namlen to 16-bits, and change
    the required alignment.  Increase struct statfs f_mntfromname[] and
    f_mntonname[] array length MNAMELEN to 1024.

On Sat, May 14, 2022 at 2:10 PM Paul Floyd <paulf2718@gmail.com> wrote:

> Hi
>
>
> Has anything changed in the way that the libc functions in the stat
> family are compiled on FreeBSD 13.1 amd64 with clang 13?
>
>
> I'm getting a few Valgrind regression test failures related to this:
>
> FreeBSD 13 / clang 11
>
> ==84746== Syscall param fstatat(flag) contains uninitialised byte(s)
> ==84746==    at 0x49942EA: ??? (in /lib/libc.so.7)
> ==84746==    by 0x499018B: fstatat (in /lib/libc.so.7)
> ==84746==    by 0x201E7D: main (stat.c:67)
>
> FreeBSD 13.1 / clang 13
>
> ==57383== Syscall param fstatat(flag) contains uninitialised byte(s)
> ==57383==    at 0x499239A: ??? (in /lib/libc.so.7)
> ==57383==    by 0x201E57: main (stat.c:67)
>
> A+
>
> Paul
>
>
>
>

[-- Attachment #2 --]
<div dir="ltr">ino64 has gone into the tree. The stat structure layout changed. 69921123490b99c2588b0c743bc4af32bbe6601c went into the tree a while ago, but maybe recently enough to mess this up.<div><br></div><div>Author: Konstantin Belousov &lt;kib@FreeBSD.org&gt;<br>Date:   Tue May 23 09:29:05 2017 +0000<br><br>    Commit the 64-bit inode project.<br><br>    Extend the ino_t, dev_t, nlink_t types to 64-bit ints.  Modify<br>    struct dirent layout to add d_off, increase the size of d_fileno<br>    to 64-bits, increase the size of d_namlen to 16-bits, and change<br>    the required alignment.  Increase struct statfs f_mntfromname[] and<br>    f_mntonname[] array length MNAMELEN to 1024.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, May 14, 2022 at 2:10 PM Paul Floyd &lt;<a href="mailto:paulf2718@gmail.com">paulf2718@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi<br>
<br>
<br>
Has anything changed in the way that the libc functions in the stat <br>
family are compiled on FreeBSD 13.1 amd64 with clang 13?<br>
<br>
<br>
I&#39;m getting a few Valgrind regression test failures related to this:<br>
<br>
FreeBSD 13 / clang 11<br>
<br>
==84746== Syscall param fstatat(flag) contains uninitialised byte(s)<br>
==84746==    at 0x49942EA: ??? (in /lib/libc.so.7)<br>
==84746==    by 0x499018B: fstatat (in /lib/libc.so.7)<br>
==84746==    by 0x201E7D: main (stat.c:67)<br>
<br>
FreeBSD 13.1 / clang 13<br>
<br>
==57383== Syscall param fstatat(flag) contains uninitialised byte(s)<br>
==57383==    at 0x499239A: ??? (in /lib/libc.so.7)<br>
==57383==    by 0x201E57: main (stat.c:67)<br>
<br>
A+<br>
<br>
Paul<br>
<br>
<br>
<br>
</blockquote></div>

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfqtS5_bzj-4Q0ERJ=qar==NWURke5O6STkhyVHepD5krg>