qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH RESEND] linux-user: Fix struct statfs ABI on loongarch64


From: gaosong
Subject: Re: [PATCH RESEND] linux-user: Fix struct statfs ABI on loongarch64
Date: Mon, 10 Oct 2022 17:10:10 +0800
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.2


在 2022/10/6 19:11, Philippe Mathieu-Daudé 写道:
On 6/10/22 12:07, WANG Xuerui wrote:
Previously the 32-bit version was incorrectly chosen, leading to funny
but incorrect output from e.g. df(1). Simply select the version
corresponding to the 64-bit asm-generic definition.

For reference, this program should produce the same output no matter
natively compiled or not, for loongarch64 or not:

```c
#include <stdio.h>
#include <sys/statfs.h>

int main(int argc, const char *argv[])
{
   struct statfs b;
   if (statfs(argv[0], &b))
     return 1;

   printf("f_type = 0x%lx\n", b.f_type);
   printf("f_bsize = %ld\n", b.f_bsize);
   printf("f_blocks = %ld\n", b.f_blocks);
   printf("f_bfree = %ld\n", b.f_bfree);
   printf("f_bavail = %ld\n", b.f_bavail);

   return 0;
}

// Example output on my amd64 box, with the test binary residing on a
// btrfs partition.

// Native and emulated output after the fix:
//
// f_type = 0x9123683e
// f_bsize = 4096
// f_blocks = 268435456
// f_bfree = 168406890
// f_bavail = 168355058

// Output before the fix, note the messed layout:
//
// f_type = 0x10009123683e
// f_bsize = 723302085239504896
// f_blocks = 168355058
// f_bfree = 2250817541779750912
// f_bavail = 1099229433104
```

Fixes: 1f63019632 ("linux-user: Add LoongArch syscall support")
Signed-off-by: WANG Xuerui <xen0n@gentoo.org>
Cc: Song Gao <gaosong@loongson.cn>
Cc: Xiaojuan Yang <yangxiaojuan@loongson.cn>
Cc: Andreas K. Hüttel <dilfridge@gentoo.org>
---

Resend with amended commit message to 100% clarify the example output
are generated on my box and will differ for everyone else. Sorry for
the noise.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Applied to loongarch-next.

Thanks.
Song Gao





reply via email to

[Prev in Thread] Current Thread [Next in Thread]