HI Jan, I debug thoroughly again, I think you are right. Even after applying my patch still share1 left mounted. :( Below is the log of the mount directories as you asked.
rbind/test02 0 TINFO : -----mount directory after umount parent1------------ /tmp/ltp-XXXXNSbrDv/sandbox on /tmp/ltp-XXXXNSbrDv/sandbox type nfs (rw,relatime,..) /tmp/ltp-XXXXNSbrDv/sandbox/share1 on /tmp/ltp-XXXXNSbrDv/sandbox/share1 type nfs (rw,relatime,...) rbind/test02 0 TINFO : ----------------------------------------------------- rm: can't remove 'share1': Device or resource busy rbind/test02 1 TPASS : rbind/test02: PASSED rbind/test38 0 TINFO : ***************TEST38*************** But I am surprised why It was not showing any diff and TWARN in that case. Do you have any idea? I will upload a new patch with your modification, please review it. Thanks, Siva -----Original Message----- From: Jan Stancek [mailto:[email protected]] Sent: Thursday, November 07, 2013 11:33 PM To: Siva Padhy/LGSIA CSP-4([email protected]) Cc: [email protected] Subject: Re: [LTP] [PATCH v2] BindMounts: fix to properly unmount during cleanup in fs_bind ----- Original Message ----- > From: "Siva Padhy" <[email protected]> > To: "Jan Stancek" <[email protected]> > Cc: [email protected] > Sent: Thursday, 7 November, 2013 3:21:20 AM > Subject: RE: [LTP] [PATCH v2] BindMounts: fix to properly unmount > during cleanup in fs_bind > > HI Jan, > > Thanks for the reply. > > I verified test02 testcase again with my patch, it is working fine for > me. I am also using 3.10.11+ kernel. > I am wondering why share1 is still mounted in your case. And I'm wondering why it's not in your case :-). There are 2 mounts: "${FS_BIND_ROOT}/bin/makedir" share share1 mount --rbind parent1/child1 share1 so I'd expect 2 umounts: # mkdir test1; mkdir test2 # mount --bind test1 test1 # mount --rbind test2 test1 # umount test1 # mount | grep test1 /dev/mapper/rhel_dhcp--27--145-root on /mnt/testarea/ltp/test1 type xfs (rw,relatime,seclabel,attr2,inode64,noquota) # umount test1 Can you rerun test02 with this change and send the output of mounted directories? diff --git a/testcases/kernel/fs/fs_bind/rbind/test02 b/testcases/kernel/fs/fs_bind/rbind/test02 index 3ab7b6c..610e873 100755 --- a/testcases/kernel/fs/fs_bind/rbind/test02 +++ b/testcases/kernel/fs/fs_bind/rbind/test02 @@ -83,10 +83,12 @@ trap '' ERR umount share1 umount parent2 umount parent1 + mount | grep sandbox rm -rf parent* share* cleanup -} >& /dev/null +} Regards, Jan > > I observed, share1 hold the part of parent2/child2 and > parent2/child2/b mount points. > In our case parent2/child2 and parent2/child2/b are not un-mounted > so, when I will un-mount share1 it will show resource busy. > > So for that reason I added those 2 line to un-mount the share1 successfully. > > + umount parent2/child2/b > > + umount parent2/child2 > > After adding the above 2 line, now the share1 is free and can be > un-mounted successfully. > > umount share1 > > I tested your code also. That is also working fine. I am successfully > executing the test02 without any warning. > > Please share your suggestion so that I can go-ahead. Hope my changes > for > test38 is proper. > > Regards, > Siva > > -----Original Message----- > From: Jan Stancek [mailto:[email protected]] > Sent: Thursday, November 07, 2013 7:48 AM > To: Siva Padhy/LGSIA CSP-4([email protected]) > Cc: [email protected] > Subject: Re: [LTP] [PATCH v2] BindMounts: fix to properly unmount > during cleanup in fs_bind > > > > > > ----- Original Message ----- > > From: "Siva Padhy" <[email protected]> > > To: [email protected] > > Sent: Wednesday, 6 November, 2013 10:45:51 AM > > Subject: [LTP] [PATCH v2] BindMounts: fix to properly unmount during > > cleanup in fs_bind > > > > While running fs_bound testcases, some test directory structure are > > mounted using -rbind option. While exiting the testcase the umount > > is not properly done, hence the below testcase are falling into TWARN. > > > > fs_bind/test02 > > fs_bind/test38 > > > > The warning message is as below for respective testcases > > TWARN : rbind/test02 did not properly clean up > > "/tmp/ltp-XXXX9qdYqG/sandbox" > > TWARN : rbind/test38 did not properly clean up > > "/tmp/ltp-XXXX9qdYqG/sandbox" > > > > This patch unmount all the mounted/submounted parts of the > > filesystem properly. > > > > Change-Id: Ica6d1799b89e933587c11c1755dff996ddbdf8c5 > > Signed-off-by: Siva <[email protected]> > > --- > > testcases/kernel/fs/fs_bind/rbind/test02 | 2 ++ > > testcases/kernel/fs/fs_bind/rbind/test38 | 5 +++++ > > 2 files changed, 7 insertions(+) > > > > diff --git a/testcases/kernel/fs/fs_bind/rbind/test02 > > b/testcases/kernel/fs/fs_bind/rbind/test02 > > index 3ab7b6c..eab9cdc 100755 > > --- a/testcases/kernel/fs/fs_bind/rbind/test02 > > +++ b/testcases/kernel/fs/fs_bind/rbind/test02 > > @@ -76,8 +76,10 @@ trap '' ERR > > { > > umount parent1/child1/a > > umount parent1/child1/b > > + umount parent2/child2/b > > umount parent1/child1 > > umount parent1/child1 > > + umount parent2/child2 > > umount parent1/child1 > > umount parent1/child1 > > umount share1 > > Hi, > > This still leaves me with share1 mounted. The following umount > sequence works for me (3.10 based kernel). Can you try if it fixes > also your issue in test02? > > umount parent2/child2/b > umount parent1/child1/a > umount parent2/child2 > umount share1 > umount parent1/child1 > > umount parent1/child1 > umount share1 > umount parent2 > umount parent1 > > Regards, > Jan > > > diff --git a/testcases/kernel/fs/fs_bind/rbind/test38 > > b/testcases/kernel/fs/fs_bind/rbind/test38 > > index c9cf3e1..c944ce5 100755 > > --- a/testcases/kernel/fs/fs_bind/rbind/test38 > > +++ b/testcases/kernel/fs/fs_bind/rbind/test38 > > @@ -77,6 +77,7 @@ trap '' ERR > > { > > umount share1/a > > umount parent1/child1/b > > + umount parent2/child1/b > > umount parent2/child1/c > > umount parent1/child1 > > umount parent1/child1 > > @@ -86,6 +87,10 @@ trap '' ERR > > umount parent2 > > umount share1 > > umount share1 > > + umount parent1 > > + umount share2 > > + umount parent2/child2 > > + umount parent2 > > > > rm -rf parent* share* > > cleanup > > -- > > 1.7.9.5 > > > > > > -------------------------------------------------------------------- > > -- > > -------- November Webinars for C, C++, Fortran Developers Accelerate > > application performance with scalable programming models. Explore > > techniques for threading, error checking, porting, and tuning. Get > > the most from the latest Intel processors and coprocessors. See > > abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg > > .c lktrk _______________________________________________ > > Ltp-list mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/ltp-list > > > ------------------------------------------------------------------------------ November Webinars for C, C++, Fortran Developers Accelerate application performance with scalable programming models. Explore techniques for threading, error checking, porting, and tuning. Get the most from the latest Intel processors and coprocessors. See abstracts and register http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
