Am Donnerstag, 6. Oktober 2022, 12:07:10 CEST schrieb WANG Xuerui:
> 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 <xe...@gentoo.org>
> Cc: Song Gao <gaos...@loongson.cn>
> Cc: Xiaojuan Yang <yangxiaoj...@loongson.cn>
> Cc: Andreas K. Hüttel <dilfri...@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.
> 

Definitely fixes df.

Tested-by: Andreas K. Huettel <dilfri...@gentoo.org>

-- 
Andreas K. Hüttel
dilfri...@gentoo.org
Gentoo Linux developer
(council, toolchain, base-system, perl, libreoffice)

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to