xref: /aosp_15_r20/external/ltp/testcases/kernel/fs/fs_bind/bind/fs_bind23.sh (revision 49cdfc7efb34551c7342be41a7384b9c40d7cab7)
1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0-or-later
3# Copyright (c) International Business Machines  Corp., 2005
4# Copyright (c) 2021 Joerg Vehlow <[email protected]>
5# Author: Avantika Mathur ([email protected])
6
7FS_BIND_TESTFUNC=test
8
9
10test()
11{
12	tst_res TINFO "bind: shared child to shared parent"
13
14	fs_bind_makedir private mnt
15	fs_bind_makedir rshared mnt/1
16
17	mkdir mnt/2 mnt/1/abc
18	EXPECT_PASS mount --bind mnt/1 mnt/2
19	EXPECT_PASS mount --bind "$FS_BIND_DISK1" mnt/1/abc
20
21	fs_bind_check mnt/1/abc mnt/2/abc "$FS_BIND_DISK1"
22
23	mkdir tmp2
24	fs_bind_makedir rshared tmp1
25	EXPECT_PASS mount --bind tmp1 tmp2
26
27	mkdir tmp1/3
28	EXPECT_PASS mount --move mnt tmp1/3
29	fs_bind_check tmp1/3/1/abc tmp2/3/1/abc tmp2/3/2/abc "$FS_BIND_DISK1"
30
31	EXPECT_PASS umount tmp1/3/1/abc
32	EXPECT_PASS umount tmp1/3/1
33	EXPECT_PASS umount tmp1/3/2
34	EXPECT_PASS umount tmp1/3
35	EXPECT_PASS umount tmp1
36	EXPECT_PASS umount tmp2
37}
38
39. fs_bind_lib.sh
40tst_run
41