Message ID | 5396F243.8080606@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
I tried to apply this, and the ipv6 patch (could we do that for 4.1 too?) and the 3 other patches, but: - there are some conflicts with the latest pynfs (e.g. I already added a few acl tests, apologies) - I'm getting failures to write to a read-only fs, apparently one of the tests is trying to write to the export root? I didn't check which one. Could you look into those and resend your pynfs patches? Thanks! --b. On Tue, Jun 10, 2014 at 07:55:47PM +0800, Kinglong Mee wrote: > There are many sessions left after testing, they hold drc memory at server. > This patch tries to clean session after each testcase. > > v2, > adds empty function of clean_sessions for nfs4.0, > because they are using the same testmod.py > > Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> > --- > nfs4.0/servertests/environment.py | 3 +++ > nfs4.1/server41tests/environment.py | 7 ++++++- > nfs4.1/testmod.py | 1 + > 3 files changed, 10 insertions(+), 1 deletion(-) > > diff --git a/nfs4.0/servertests/environment.py b/nfs4.0/servertests/environment.py > index 993320d..9852178 100644 > --- a/nfs4.0/servertests/environment.py > +++ b/nfs4.0/servertests/environment.py > @@ -226,6 +226,9 @@ class Environment(testmod.Environment): > cmd += ' ' + args > os.system(cmd); > > + def clean_sessions(self): > + return > + > ######################################### > debug_fail = False > > diff --git a/nfs4.1/server41tests/environment.py b/nfs4.1/server41tests/environment.py > index b2df732..7632655 100644 > --- a/nfs4.1/server41tests/environment.py > +++ b/nfs4.1/server41tests/environment.py > @@ -248,7 +248,12 @@ class Environment(testmod.Environment): > def testname(self, t): > """Returns a name for the test that is unique between runs""" > return "%s_%i" % (t.code, self.timestamp) > - > + > + def clean_sessions(self): > + """Destroy client name env.c1""" > + for sessionid in self.c1.sessions.keys(): > + self.c1.compound([op.destroy_session(sessionid)]) > + > ######################################### > debug_fail = False > > diff --git a/nfs4.1/testmod.py b/nfs4.1/testmod.py > index 5908066..661aed0 100644 > --- a/nfs4.1/testmod.py > +++ b/nfs4.1/testmod.py > @@ -220,6 +220,7 @@ class Test(object): > environment.startUp() > self.runtest(self, environment) > self.result = self._pass_result > + environment.clean_sessions() > except KeyboardInterrupt: > raise > except TestException, e: > -- > 1.9.3 > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 6/12/2014 05:17, J. Bruce Fields wrote: > I tried to apply this, and the ipv6 patch (could we do that for 4.1 > too?) and the 3 other patches, but: nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. > > - there are some conflicts with the latest pynfs (e.g. I already > added a few acl tests, apologies) > - I'm getting failures to write to a read-only fs, apparently > one of the tests is trying to write to the export root? I > didn't check which one. > > Could you look into those and resend your pynfs patches? Thanks! Yes, I will check those patch and resend them. thanks, Kinglong Mee > > --b. > > > On Tue, Jun 10, 2014 at 07:55:47PM +0800, Kinglong Mee wrote: >> There are many sessions left after testing, they hold drc memory at server. >> This patch tries to clean session after each testcase. >> >> v2, >> adds empty function of clean_sessions for nfs4.0, >> because they are using the same testmod.py >> >> Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> >> --- >> nfs4.0/servertests/environment.py | 3 +++ >> nfs4.1/server41tests/environment.py | 7 ++++++- >> nfs4.1/testmod.py | 1 + >> 3 files changed, 10 insertions(+), 1 deletion(-) >> >> diff --git a/nfs4.0/servertests/environment.py b/nfs4.0/servertests/environment.py >> index 993320d..9852178 100644 >> --- a/nfs4.0/servertests/environment.py >> +++ b/nfs4.0/servertests/environment.py >> @@ -226,6 +226,9 @@ class Environment(testmod.Environment): >> cmd += ' ' + args >> os.system(cmd); >> >> + def clean_sessions(self): >> + return >> + >> ######################################### >> debug_fail = False >> >> diff --git a/nfs4.1/server41tests/environment.py b/nfs4.1/server41tests/environment.py >> index b2df732..7632655 100644 >> --- a/nfs4.1/server41tests/environment.py >> +++ b/nfs4.1/server41tests/environment.py >> @@ -248,7 +248,12 @@ class Environment(testmod.Environment): >> def testname(self, t): >> """Returns a name for the test that is unique between runs""" >> return "%s_%i" % (t.code, self.timestamp) >> - >> + >> + def clean_sessions(self): >> + """Destroy client name env.c1""" >> + for sessionid in self.c1.sessions.keys(): >> + self.c1.compound([op.destroy_session(sessionid)]) >> + >> ######################################### >> debug_fail = False >> >> diff --git a/nfs4.1/testmod.py b/nfs4.1/testmod.py >> index 5908066..661aed0 100644 >> --- a/nfs4.1/testmod.py >> +++ b/nfs4.1/testmod.py >> @@ -220,6 +220,7 @@ class Test(object): >> environment.startUp() >> self.runtest(self, environment) >> self.result = self._pass_result >> + environment.clean_sessions() >> except KeyboardInterrupt: >> raise >> except TestException, e: >> -- >> 1.9.3 >> > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 6/12/2014 07:24, Kinglong Mee wrote: > On 6/12/2014 05:17, J. Bruce Fields wrote: >> I tried to apply this, and the ipv6 patch (could we do that for 4.1 >> too?) and the 3 other patches, but: > > nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. > >> >> - there are some conflicts with the latest pynfs (e.g. I already >> added a few acl tests, apologies) >> - I'm getting failures to write to a read-only fs, apparently >> one of the tests is trying to write to the export root? I >> didn't check which one. Can you show me more information about this? thanks, Kinglong Mee >> >> Could you look into those and resend your pynfs patches? Thanks! > > Yes, I will check those patch and resend them. > > thanks, > Kinglong Mee > >> >> --b. >> >> >> On Tue, Jun 10, 2014 at 07:55:47PM +0800, Kinglong Mee wrote: >>> There are many sessions left after testing, they hold drc memory at server. >>> This patch tries to clean session after each testcase. >>> >>> v2, >>> adds empty function of clean_sessions for nfs4.0, >>> because they are using the same testmod.py >>> >>> Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> >>> --- >>> nfs4.0/servertests/environment.py | 3 +++ >>> nfs4.1/server41tests/environment.py | 7 ++++++- >>> nfs4.1/testmod.py | 1 + >>> 3 files changed, 10 insertions(+), 1 deletion(-) >>> >>> diff --git a/nfs4.0/servertests/environment.py b/nfs4.0/servertests/environment.py >>> index 993320d..9852178 100644 >>> --- a/nfs4.0/servertests/environment.py >>> +++ b/nfs4.0/servertests/environment.py >>> @@ -226,6 +226,9 @@ class Environment(testmod.Environment): >>> cmd += ' ' + args >>> os.system(cmd); >>> >>> + def clean_sessions(self): >>> + return >>> + >>> ######################################### >>> debug_fail = False >>> >>> diff --git a/nfs4.1/server41tests/environment.py b/nfs4.1/server41tests/environment.py >>> index b2df732..7632655 100644 >>> --- a/nfs4.1/server41tests/environment.py >>> +++ b/nfs4.1/server41tests/environment.py >>> @@ -248,7 +248,12 @@ class Environment(testmod.Environment): >>> def testname(self, t): >>> """Returns a name for the test that is unique between runs""" >>> return "%s_%i" % (t.code, self.timestamp) >>> - >>> + >>> + def clean_sessions(self): >>> + """Destroy client name env.c1""" >>> + for sessionid in self.c1.sessions.keys(): >>> + self.c1.compound([op.destroy_session(sessionid)]) >>> + >>> ######################################### >>> debug_fail = False >>> >>> diff --git a/nfs4.1/testmod.py b/nfs4.1/testmod.py >>> index 5908066..661aed0 100644 >>> --- a/nfs4.1/testmod.py >>> +++ b/nfs4.1/testmod.py >>> @@ -220,6 +220,7 @@ class Test(object): >>> environment.startUp() >>> self.runtest(self, environment) >>> self.result = self._pass_result >>> + environment.clean_sessions() >>> except KeyboardInterrupt: >>> raise >>> except TestException, e: >>> -- >>> 1.9.3 >>> >> > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jun 12, 2014 at 09:38:32AM +0800, Kinglong Mee wrote: > On 6/12/2014 07:24, Kinglong Mee wrote: > > On 6/12/2014 05:17, J. Bruce Fields wrote: > >> I tried to apply this, and the ipv6 patch (could we do that for 4.1 > >> too?) and the 3 other patches, but: > > > > nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. OK, thanks for explaining. > > > >> > >> - there are some conflicts with the latest pynfs (e.g. I already > >> added a few acl tests, apologies) > >> - I'm getting failures to write to a read-only fs, apparently > >> one of the tests is trying to write to the export root? I > >> didn't check which one. > > Can you show me more information about this? [root@pip5 pynfs]# ./nfs4.0/testserver.py f19:/exports/xfs/pynfstest-user --maketree Initialization failed, no tests run. Traceback (most recent call last): File "./nfs4.0/testserver.py", line 381, in <module> main() File "./nfs4.0/testserver.py", line 344, in main env.init() File "/root/pynfs/nfs4.0/servertests/environment.py", line 140, in init self._maketree() File "/root/pynfs/nfs4.0/servertests/environment.py", line 162, in _maketree check(res, msg="Trying to create /%s," % '/'.join(path)) File "/root/pynfs/nfs4.0/servertests/environment.py", line 253, in check raise testmod.FailureException(msg) testmod.FailureException: Trying to create /tmp, should return NFS4_OK, instead got NFS4ERR_ROFS This happens after the ipv6 patch. Note /exports on my server is exported read-only, xfs is a separate writeable filesystem. --b. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 6/12/2014 23:25, J. Bruce Fields wrote: > On Thu, Jun 12, 2014 at 09:38:32AM +0800, Kinglong Mee wrote: >> On 6/12/2014 07:24, Kinglong Mee wrote: >>> On 6/12/2014 05:17, J. Bruce Fields wrote: >>>> I tried to apply this, and the ipv6 patch (could we do that for 4.1 >>>> too?) and the 3 other patches, but: >>> >>> nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. > > OK, thanks for explaining. > >>> >>>> >>>> - there are some conflicts with the latest pynfs (e.g. I already >>>> added a few acl tests, apologies) >>>> - I'm getting failures to write to a read-only fs, apparently >>>> one of the tests is trying to write to the export root? I >>>> didn't check which one. >> >> Can you show me more information about this? > > [root@pip5 pynfs]# ./nfs4.0/testserver.py f19:/exports/xfs/pynfstest-user --maketree > Initialization failed, no tests run. > Traceback (most recent call last): > File "./nfs4.0/testserver.py", line 381, in <module> > main() > File "./nfs4.0/testserver.py", line 344, in main > env.init() > File "/root/pynfs/nfs4.0/servertests/environment.py", line 140, in init > self._maketree() > File "/root/pynfs/nfs4.0/servertests/environment.py", line 162, in _maketree > check(res, msg="Trying to create /%s," % '/'.join(path)) > File "/root/pynfs/nfs4.0/servertests/environment.py", line 253, in check > raise testmod.FailureException(msg) > testmod.FailureException: Trying to create /tmp, should return NFS4_OK, instead got NFS4ERR_ROFS > > This happens after the ipv6 patch. > > Note /exports on my server is exported read-only, xfs is a separate writeable > filesystem. Thanks for your testing. I have found this bug in IPv6 path, and will send three new path all I have. thanks, Kinglong Mee -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 6/13/2014 18:44, Kinglong Mee wrote: > On 6/12/2014 23:25, J. Bruce Fields wrote: >> On Thu, Jun 12, 2014 at 09:38:32AM +0800, Kinglong Mee wrote: >>> On 6/12/2014 07:24, Kinglong Mee wrote: >>>> On 6/12/2014 05:17, J. Bruce Fields wrote: >>>>> I tried to apply this, and the ipv6 patch (could we do that for 4.1 >>>>> too?) and the 3 other patches, but: >>>> >>>> nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. >> >> OK, thanks for explaining. >> >>>> >>>>> >>>>> - there are some conflicts with the latest pynfs (e.g. I already >>>>> added a few acl tests, apologies) >>>>> - I'm getting failures to write to a read-only fs, apparently >>>>> one of the tests is trying to write to the export root? I >>>>> didn't check which one. >>> >>> Can you show me more information about this? >> >> [root@pip5 pynfs]# ./nfs4.0/testserver.py f19:/exports/xfs/pynfstest-user --maketree >> Initialization failed, no tests run. >> Traceback (most recent call last): >> File "./nfs4.0/testserver.py", line 381, in <module> >> main() >> File "./nfs4.0/testserver.py", line 344, in main >> env.init() >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 140, in init >> self._maketree() >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 162, in _maketree >> check(res, msg="Trying to create /%s," % '/'.join(path)) >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 253, in check >> raise testmod.FailureException(msg) >> testmod.FailureException: Trying to create /tmp, should return NFS4_OK, instead got NFS4ERR_ROFS >> >> This happens after the ipv6 patch. >> >> Note /exports on my server is exported read-only, xfs is a separate writeable >> filesystem. > > Thanks for your testing. > I have found this bug in IPv6 path, and will send three new path all I have. I found you have revert the following two patch in your tree, "NFS4.1: try to clean sessions after testing" and, "NFS4.0: Case for linking to bad source path with zero-length" thanks, Kinglong Mee -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Jun 14, 2014 at 05:21:15PM +0800, Kinglong Mee wrote: > On 6/13/2014 18:44, Kinglong Mee wrote: > > On 6/12/2014 23:25, J. Bruce Fields wrote: > >> On Thu, Jun 12, 2014 at 09:38:32AM +0800, Kinglong Mee wrote: > >>> On 6/12/2014 07:24, Kinglong Mee wrote: > >>>> On 6/12/2014 05:17, J. Bruce Fields wrote: > >>>>> I tried to apply this, and the ipv6 patch (could we do that for 4.1 > >>>>> too?) and the 3 other patches, but: > >>>> > >>>> nfs4.1 has supports IPv6, the patch for nfs4.0 is a back-port from nfs4.1. > >> > >> OK, thanks for explaining. > >> > >>>> > >>>>> > >>>>> - there are some conflicts with the latest pynfs (e.g. I already > >>>>> added a few acl tests, apologies) > >>>>> - I'm getting failures to write to a read-only fs, apparently > >>>>> one of the tests is trying to write to the export root? I > >>>>> didn't check which one. > >>> > >>> Can you show me more information about this? > >> > >> [root@pip5 pynfs]# ./nfs4.0/testserver.py f19:/exports/xfs/pynfstest-user --maketree > >> Initialization failed, no tests run. > >> Traceback (most recent call last): > >> File "./nfs4.0/testserver.py", line 381, in <module> > >> main() > >> File "./nfs4.0/testserver.py", line 344, in main > >> env.init() > >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 140, in init > >> self._maketree() > >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 162, in _maketree > >> check(res, msg="Trying to create /%s," % '/'.join(path)) > >> File "/root/pynfs/nfs4.0/servertests/environment.py", line 253, in check > >> raise testmod.FailureException(msg) > >> testmod.FailureException: Trying to create /tmp, should return NFS4_OK, instead got NFS4ERR_ROFS > >> > >> This happens after the ipv6 patch. > >> > >> Note /exports on my server is exported read-only, xfs is a separate writeable > >> filesystem. > > > > Thanks for your testing. > > I have found this bug in IPv6 path, and will send three new path all I have. > > I found you have revert the following two patch in your tree, > > "NFS4.1: try to clean sessions after testing" and, > "NFS4.0: Case for linking to bad source path with zero-length" I think those only every showed up in a temporary testing branch? Anyway, pushed out now, with the ipv6 change. Others waiting for you to resend or me to get a chance to look at them (may be a few days). --b. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/nfs4.0/servertests/environment.py b/nfs4.0/servertests/environment.py index 993320d..9852178 100644 --- a/nfs4.0/servertests/environment.py +++ b/nfs4.0/servertests/environment.py @@ -226,6 +226,9 @@ class Environment(testmod.Environment): cmd += ' ' + args os.system(cmd); + def clean_sessions(self): + return + ######################################### debug_fail = False diff --git a/nfs4.1/server41tests/environment.py b/nfs4.1/server41tests/environment.py index b2df732..7632655 100644 --- a/nfs4.1/server41tests/environment.py +++ b/nfs4.1/server41tests/environment.py @@ -248,7 +248,12 @@ class Environment(testmod.Environment): def testname(self, t): """Returns a name for the test that is unique between runs""" return "%s_%i" % (t.code, self.timestamp) - + + def clean_sessions(self): + """Destroy client name env.c1""" + for sessionid in self.c1.sessions.keys(): + self.c1.compound([op.destroy_session(sessionid)]) + ######################################### debug_fail = False diff --git a/nfs4.1/testmod.py b/nfs4.1/testmod.py index 5908066..661aed0 100644 --- a/nfs4.1/testmod.py +++ b/nfs4.1/testmod.py @@ -220,6 +220,7 @@ class Test(object): environment.startUp() self.runtest(self, environment) self.result = self._pass_result + environment.clean_sessions() except KeyboardInterrupt: raise except TestException, e:
There are many sessions left after testing, they hold drc memory at server. This patch tries to clean session after each testcase. v2, adds empty function of clean_sessions for nfs4.0, because they are using the same testmod.py Signed-off-by: Kinglong Mee <kinglongmee@gmail.com> --- nfs4.0/servertests/environment.py | 3 +++ nfs4.1/server41tests/environment.py | 7 ++++++- nfs4.1/testmod.py | 1 + 3 files changed, 10 insertions(+), 1 deletion(-)