On Fri, Aug 23, 2024 at 08:53:02PM +0200, Petr Vorel wrote: > > > > > On Aug 23, 2024, at 2:46 AM, Petr Vorel <pvorel@xxxxxxx> wrote: > > > > Hi Chuck, Neil, all, > > > >> On Wed, Aug 14, 2024 at 10:57:21AM +0200, Petr Vorel wrote: > > >>> 6.9 moved client RPC calls to namespace in "Make nfs stats visible in > > >>> network NS" patchet. > > > >>> https://lore.kernel.org/linux-nfs/cover.1708026931.git.josef@xxxxxxxxxxxxxx/ > > > >>> Signed-off-by: Petr Vorel <pvorel@xxxxxxx> > > >>> --- > > >>> Changes v1->v2: > > >>> * Point out whole patchset, not just single commit > > >>> * Add a comment about the patchset > > > >>> Hi all, > > > >>> could you please ack this so that we have fixed mainline? > > > >>> FYI Some parts has been backported, e.g.: > > >>> d47151b79e322 ("nfs: expose /proc/net/sunrpc/nfs in net namespaces") > > >>> to all stable/LTS: 5.4.276, 5.10.217, 5.15.159, 6.1.91, 6.6.31. > > > >>> But most of that is not yet (but planned to be backported), e.g. > > >>> 93483ac5fec62 ("nfsd: expose /proc/net/sunrpc/nfsd in net namespaces") > > >>> see Chuck's patchset for 6.6 > > >>> https://lore.kernel.org/linux-nfs/20240812223604.32592-1-cel@xxxxxxxxxx/ > > > >>> Once all kernels up to 5.4 fixed we should update the version. > > > >>> Kind regards, > > >>> Petr > > > >>> testcases/network/nfs/nfsstat01/nfsstat01.sh | 9 ++++++++- > > >>> 1 file changed, 8 insertions(+), 1 deletion(-) > > > >>> diff --git a/testcases/network/nfs/nfsstat01/nfsstat01.sh b/testcases/network/nfs/nfsstat01/nfsstat01.sh > > >>> index c2856eff1f..1beecbec43 100755 > > >>> --- a/testcases/network/nfs/nfsstat01/nfsstat01.sh > > >>> +++ b/testcases/network/nfs/nfsstat01/nfsstat01.sh > > >>> @@ -15,7 +15,14 @@ get_calls() > > >>> local calls opt > > > >>> [ "$name" = "rpc" ] && opt="r" || opt="n" > > >>> - ! tst_net_use_netns && [ "$nfs_f" != "nfs" ] && type="rhost" > > >>> + > > >>> + if tst_net_use_netns; then > > >>> + # "Make nfs stats visible in network NS" patchet > > >>> + # https://lore.kernel.org/linux-nfs/cover.1708026931.git.josef@xxxxxxxxxxxxxx/ > > >>> + tst_kvcmp -ge "6.9" && [ "$nfs_f" = "nfs" ] && type="rhost" > > > >> Hello Petr- > > > >> My concern with this fix is it targets v6.9 specifically, yet we > > >> know these fixes will appear in LTS/stable kernels as well. > > > > Great! I see you already fixed up to 5.15. I suppose the code is really > > > backportable to the other still active branches (5.10, 5.4, 4.19). > > > I plan to work on backporting to v5.10 next week. > > > I've been asked to look at v5.4, but I'm not sure how difficult > > that will be because it's missing a lot of NFSD patches. I will > > look into that in a couple of weeks. > > > I'm very likely to punt on v4.19, though Oracle's stable backport > > team might try to tackle it at some point. (pun intended) > > Thanks a lot for info, we'll see what you / your Oracle backport team will > manage in the end. > > > > We discussed in v1 how to fix tests. Neil suggested to fix the test the way so > > > that it works on all kernels. As I note [1] > > > > 1) either we give up on checking the new functionality still works (if we > > > fallback to old behavior) > > > 2) or we need to specify from which kernel we expect new functionality > > > (so far it's 5.15, I suppose it will be older). > > > > I would prefer 2) to have new functionality always tested. > > > Or am I missing something obvious? > > > I don't quite understand the question. > > > The "old functionality" of reporting these statistics globally > > is broken, but we're stuck with it in the older kernels. I guess > > you might want to confirm that, for a given recent kernel > > release, the stats are actually per-namespace -- that's what we > > expect in fixed kernels. Is that what you mean? > > Yes. I'm just trying to say that Neil's proposal "work everywhere without > checking kernel version" will not work. I would like next week, after you send > 5.10 patches to expect anything >= 5.10 will have new functionality > and update kernel version if more gets backported. I wanted to be sure you were aware of Neil's suggestion, and it sounds like it isn't workable for you. So, fair enough. I will get to work on v5.10.y ;-) > Kind regards, > Petr > > > > Kind regards, > > > Petr > > > > [1] https://lore.kernel.org/linux-nfs/172367387549.6062.7078032983644586462@xxxxxxxxxxxxxxxxxxxxx/ > > > >> Neil Brown suggested an alternative approach that might not depend > > >> on knowing the specific kernel version: > > > >> https://lore.kernel.org/linux-nfs/172078283934.15471.13377048166707693692@xxxxxxxxxxxxxxxxxxxxx/ > > > >> HTH > > > > >>> + else > > >>> + [ "$nfs_f" != "nfs" ] && type="rhost" > > >>> + fi > > > >>> if [ "$type" = "lhost" ]; then > > >>> calls="$(grep $name /proc/net/rpc/$nfs_f | cut -d' ' -f$field)" > > >>> -- > > >>> 2.45.2 -- Chuck Lever