From: Shuang Qiu <[email protected]>

When unlink() a file in nfs environment,it will rename the file to a
.nfs<xxxxx> file if any process still has that file open.And this file
could not be deleted until it is closed.So we always get the following
warning which makes testcase "dup07" failed:
0  TWARN  :  tst_rmdir: rmobj(/mnt/nfsv3/ltp-ZtzSE27611/dupKuEr3H)
failed:
unlink(/mnt/nfsv3/ltp-ZtzSE27611/dupKuEr3H/.nfs000000000110cb3800000066)
failed; errno=16: Device or resource busy

Close the created/dup file before unlink() it to fix this issue.

Signed-off-by: Shuang Qiu <[email protected]>
---
 testcases/kernel/syscalls/dup/dup07.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/testcases/kernel/syscalls/dup/dup07.c 
b/testcases/kernel/syscalls/dup/dup07.c
index 03b0ba4..025881f 100644
--- a/testcases/kernel/syscalls/dup/dup07.c
+++ b/testcases/kernel/syscalls/dup/dup07.c
@@ -77,7 +77,9 @@ int main(int ac, char **av)
                                        tst_resm(TPASS,
                                                 "Passed in read mode.");
                                }
+                               close(duprdo);
                        }
+                       close(rdoret);
                }
 
                unlink(testfile);
@@ -97,7 +99,10 @@ int main(int ac, char **av)
                                        tst_resm(TPASS,
                                                 "Passed in write mode.");
                                }
+                               close(dupwro);
                        }
+                       close(wroret);
+
                }
 
                unlink(testfile);
@@ -117,7 +122,9 @@ int main(int ac, char **av)
                                        tst_resm(TPASS,
                                                 "Passed in read/write mode.");
                                }
+                               close(duprdwr);
                        }
+                       close(rdwret);
                }
                
                unlink(testfile);
-- 
1.7.7


------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to