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)
signature.asc
Description: This is a digitally signed message part.