aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2024-01-31 19:52:36 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-01-31 19:52:36 +0000
commit1d3c6e3759044e5d212e7d8290d9ddfa05c2b217 (patch)
treeb191bf368379429fbf2a938f7a0b5238b388391f
parentd9aea1539734f4071f3008b2d0c47eba2d44dcbd (diff)
parent65ee966398ae07962177c8b949b9a885ad93b451 (diff)
downloadbionic-1d3c6e3759044e5d212e7d8290d9ddfa05c2b217.tar.gz
Merge "sys_statvfs_test: fix expectation for Linux 6.7." into android13-tests-dev am: 7123abff51 am: 65ee966398
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2928751 Change-Id: I1167c9c5953d8aa26781a7fc986f3cbd1abf7bfe Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--tests/sys_statvfs_test.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/tests/sys_statvfs_test.cpp b/tests/sys_statvfs_test.cpp
index 1761e6a51..73b2a9681 100644
--- a/tests/sys_statvfs_test.cpp
+++ b/tests/sys_statvfs_test.cpp
@@ -28,9 +28,19 @@ template <typename StatVfsT> void Check(StatVfsT& sb) {
EXPECT_EQ(4096U, sb.f_bsize);
EXPECT_EQ(0U, sb.f_bfree);
EXPECT_EQ(0U, sb.f_ffree);
- EXPECT_EQ(0U, sb.f_fsid);
EXPECT_EQ(255U, sb.f_namemax);
+ // Linux 6.7 requires that all filesystems have a non-zero fsid.
+ if (sb.f_fsid != 0U) {
+ // fs/libfs.c reuses the filesystem's device number.
+ struct stat proc_sb;
+ ASSERT_EQ(0, stat("/proc", &proc_sb));
+ EXPECT_EQ(proc_sb.st_dev, sb.f_fsid);
+ } else {
+ // Prior to that, the fsid for /proc was just 0.
+ EXPECT_EQ(0U, sb.f_fsid);
+ }
+
// The kernel sets a private bit to indicate that f_flags is valid.
// This flag is not supposed to be exposed to libc clients.
static const uint32_t ST_VALID = 0x0020;