Change in ffilz/nfs-ganesha[next]: MDCACHE - Insert scanned entries differently
by GerritHub
From Daniel Gryniewicz <dang(a)redhat.com>:
Daniel Gryniewicz has uploaded this change for review. ( https://review.gerrithub.io/411313
Change subject: MDCACHE - Insert scanned entries differently
......................................................................
MDCACHE - Insert scanned entries differently
When we're doing a readdir and the size of the directory is larger than
the cache size, then a poor interaction between the LRU and the readdir
could occur.
When the cache is above high-water, and a new chunk is read, then the
entries for the beginning of the chunk are created and inserted in LRU
of L1. Later entries from the chunk recycle (because we're above
high-water). If the L2 is empty (likely, if the readdir is early in the
workload, or if it goes on long enough and recycles the enire L2), then
the LRU of L1 is recycled. These, however, are likely to be the entries
created earlier in the chunk.
Then, when the readdir gets around to calling the callback for the upper
layer, it has to do a lookup() and a getattr() on each entry. This
causes a huge number of round-trips to the cluster, destroying
performance.
However, the current LRU behavior is desirable for many cases. If an
entry is created, but not used immediately, we want it to fall out of
the cache quickly.
This fix distinguishes between entry creation from a scan and from other
sources. Scan creations are inserted into the MRU of L2, rather than
the LRU of L1. The downside of this is that 2 refs are necessary to
move to MRU of L1. The upside is that entries from a readdir are
recycled in FIFO order, rather than LIFO order, meaning that the cached
entry will stick around long enough to be used in the readdir.
Change-Id: I45e71106e66f7ba15b7b8635c7f67622fc751048
Signed-off-by: Daniel Gryniewicz <dang(a)redhat.com>
---
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_handle.c
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_helpers.c
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_int.h
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_lru.c
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_lru.h
5 files changed, 40 insertions(+), 16 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/13/411313/1
--
To view, visit https://review.gerrithub.io/411313
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I45e71106e66f7ba15b7b8635c7f67622fc751048
Gerrit-Change-Number: 411313
Gerrit-PatchSet: 1
Gerrit-Owner: Daniel Gryniewicz <dang(a)redhat.com>
6 years, 7 months
Change in ffilz/nfs-ganesha[next]: Add library for gtest microbenchmarks
by GerritHub
From Daniel Gryniewicz <dang(a)redhat.com>:
Daniel Gryniewicz has uploaded this change for review. ( https://review.gerrithub.io/411309
Change subject: Add library for gtest microbenchmarks
......................................................................
Add library for gtest microbenchmarks
Abstract out common setup/teardown code allowing microbenchmarks to use
profiling and LTTng into a base class. Other common code can be added
to this as well.
Change-Id: I89e2b7329beaa0e2badc7e314af122fef95e88bc
Signed-off-by: Daniel Gryniewicz <dang(a)redhat.com>
---
A src/gtest/gtest.hh
M src/gtest/test_close_latency.cc
M src/gtest/test_commit2_latency.cc
M src/gtest/test_getattrs_latency.cc
M src/gtest/test_link_latency.cc
M src/gtest/test_lookup_latency.cc
6 files changed, 365 insertions(+), 307 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/09/411309/1
--
To view, visit https://review.gerrithub.io/411309
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I89e2b7329beaa0e2badc7e314af122fef95e88bc
Gerrit-Change-Number: 411309
Gerrit-PatchSet: 1
Gerrit-Owner: Daniel Gryniewicz <dang(a)redhat.com>
6 years, 7 months
Change in ffilz/nfs-ganesha[next]: gtest: missing loop in open2 and reopen2 gtest
by GerritHub
From Girjesh Rajoria <grajoria(a)redhat.com>:
Girjesh Rajoria has uploaded this change for review. ( https://review.gerrithub.io/411282
Change subject: gtest: missing loop in open2 and reopen2 gtest
......................................................................
gtest: missing loop in open2 and reopen2 gtest
Added missing loop in open2 and reopen2 microbenchmarking latency
gtest.
Change-Id: I5dcfec8f58204e5e6bb81a966667ac3473fbfee7
Signed-off-by: Girjesh Rajoria <grajoria(a)redhat.com>
---
M src/gtest/test_open2_latency.cc
M src/gtest/test_reopen2_latency.cc
2 files changed, 47 insertions(+), 14 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/82/411282/1
--
To view, visit https://review.gerrithub.io/411282
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5dcfec8f58204e5e6bb81a966667ac3473fbfee7
Gerrit-Change-Number: 411282
Gerrit-PatchSet: 1
Gerrit-Owner: Girjesh Rajoria <grajoria(a)redhat.com>
6 years, 7 months
Change in ffilz/nfs-ganesha[next]: gtest/test_readdir_latency: readdir latency microbenchmark
by GerritHub
From Girjesh Rajoria <grajoria(a)redhat.com>:
Girjesh Rajoria has uploaded this change for review. ( https://review.gerrithub.io/411131
Change subject: gtest/test_readdir_latency: readdir latency microbenchmark
......................................................................
gtest/test_readdir_latency: readdir latency microbenchmark
gtest unit test that run readdir on single case, large loops
and bypass cases to find average latency of the calls.
Change-Id: I9465edb0aaf084ab4469e045a53245bf32ba6523
Signed-off-by: Girjesh Rajoria <grajoria(a)redhat.com>
---
M src/gtest/CMakeLists.txt
A src/gtest/test_readdir_latency.cc
2 files changed, 428 insertions(+), 0 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/31/411131/1
--
To view, visit https://review.gerrithub.io/411131
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9465edb0aaf084ab4469e045a53245bf32ba6523
Gerrit-Change-Number: 411131
Gerrit-PatchSet: 1
Gerrit-Owner: Girjesh Rajoria <grajoria(a)redhat.com>
6 years, 7 months
Proposed V2.6.2
by Daniel Gryniewicz
Hi, All.
Here is the proposed V2.6.2. If anything is missing, please speak up.
Daniel
commit b9685b89acb5a21db2a44a6b5bf5d85709e98b7d
Author: Daniel Gryniewicz <dang(a)redhat.com>
V2.6.2
commit e54c29c7ec0f73fac106ce89bc131589d52a6ffb
Author: Malahal Naineni <malahal(a)us.ibm.com>
Don't unregister netconfig_udpv6 unless registered with rpcbind
commit cd8569ea0bf02e72db3052f54beca6e19626dde9
Author: Daniel Gryniewicz <dang(a)redhat.com>
CMake - Let ntirpc find it's modules
commit 8240d790c7392024b4b4e1ecd152d15d8af9af29
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Man page clarifications
commit a20da9706d70ebc4800c828bec95976a16ef2c47
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
NFSv4: If lock offset plus length > max file size return
NFS4ERR_BAD_RANGE
commit 5119feaee639def54b4908f459204369b2fa6a10
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
NLM: Adjust lock length if lock end would be > max file size
commit cf9edd841ae704b9ff74dd1f5c9c29a3e17ceb00
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Limit max file size to INT64_MAX
commit bd1191a7f5a86dc4c735eca2545a753b9c219cc5
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
NFSv4.1: Use slot mutex to serialize use of the slot
commit c2e9d4da48da020e4aa70be49c95c2861cbb1b8b
Author: Kaleb S. KEITHLEY <kkeithle(a)redhat.com>
python: prepare for python2->python3, explicit python2 in shebang
commit 672f918f553627817f97efed32641a3c81f69211
Author: Ramana Raja <ramanakrisna(a)gmail.com>
fix 'Bind_Addr' config option documentation
commit c8fb98f22b1263bcf50d26ac026387e1d6b63cc1
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Move expire_time_attr into export_perms
commit c4f7036efe4e70dd27f691a583a50f0905534295
Author: Daniel Gryniewicz <dang(a)redhat.com>
FSAL_MEM - close2() should check state FD
commit 1486be3dc28d9416d973cd4f8338abf02eab6c68
Author: Kinglong Mee <mijinlong(a)open-fs.com>
nfs: fix missing fill of the wcc_data->before in reply
commit fa34f49d647eb6553efba3e4a2c5011dd67e5a0f
Author: Kinglong Mee <mijinlong(a)open-fs.com>
MDCACHE: Calculate the new thread wait more reasonable
commit cee884f545a222aabac04b41f06d3b7e07d7bc49
Author: Jeff Layton <jlayton(a)redhat.com>
cmake: fix FindWBclient.cmake
commit 32cff612ec322ecff6c35356f39877808e14485f
Author: Supriti Singh <supriti.singh(a)suse.com>
Make code compatible for python 2 and 3.
commit b5a9f5b6a5c04b96f02cf486ca792223998f13a2
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Replace cache_fds parameter and handling with better logic
commit e16e7721dc7649fca2c892901fe370f3101e593a
Author: Matt Benjamin <mbenjamin(a)redhat.com>
rados urls: permit pool and object names containing '.'
commit 39bb05c997724eb556cef7f76ea98806a0dfb7e2
Author: Ramana Raja <ramanakrisna(a)gmail.com>
config_samples: fix FSAL_CEPH sample conf
commit d2dbdb2bb57ac634a17bb75559f5198e879c9fed
Author: Jeff Layton <jlayton(a)redhat.com>
cmake: add USE_FSAL_CEPH_LL_SYNC_INODE to config-h.in.cmake
commit 20fa4e3133ee9bd28accdf70088e6bd5f589c705
Author: Jeff Layton <jlayton(a)redhat.com>
configs: fix sample config reference for RecoveryBackend section
commit ba3055c82a029af954eb3125e3ffe7787e8d3ff1
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Fix maxread/maxwrite/prefread/prefwrite defaults in man page
commit 57908cc8203bdced28083ff3a40f73bc584af517
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
GLUSTER: Use telldir result from previous dirent as cookie
commit e52b213d7b97b6967198fb873a9472135e5cd298
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
VFS: Use d_off from previous dirent as cookie
commit d9b4f270f428d50bff231d72ecbdfc353eb526ee
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Allow NLM_SHARE access none, deny something (deny read for example)
commit 1770e04ff2e019b1882ddc0fa213751f0cdf5374
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Allow for Windows use of multiple NLM_SHARE from same owner
commit cf54b5869eda45a518a1f80bb915bb2324b6f1a4
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Fix refcounting of NLM_SHARE state_t
commit 1e99ec330663f0b3196ec279a32201e0a472d04e
Author: Frank S. Filz <ffilzlnx(a)mindspring.com>
Inmprove debug of NLM_SHARE and NLM_UNSHARE
commit 962592db982edd9cd82140cc5881edabea42d42b
Author: Kaleb S. KEITHLEY <kkeithle(a)redhat.com>
doc/man: add ganesha-gluster-config(8) to top-level ganesha-config
commit 72e8adf8656fb2b55befbb97b68fb944187b9c36
Author: Jeff Layton <jlayton(a)redhat.com>
FSAL_CEPH: add check for and call to ceph_ll_sync_inode
commit 6182e9faf26554f83d389bfd03684845cf42095d
Author: Daniel Gryniewicz <dang(a)redhat.com>
Don't dec open_fd_count unless close succeeds
commit 9e77cfd9c23404e57939ab96cd944257580906e8
Author: Patrice LUCAS <patrice.lucas(a)cea.fr>
FSAL_PROXY : fix memory leak in pxy_readdir
commit c36c563915d6d24041d722ca77914cc54a4a4ad6
Author: Jeff Layton <jlayton(a)redhat.com>
Log: clean up level handling in LogAtLevel macro
commit 62c9a9bdfeb44fc46d4d486d087918d272bddbdc
Author: Jeff Layton <jlayton(a)redhat.com>
config: flesh out sample config file for FSAL_CEPH
commit 1cf9f384195160389adb28950cee7a44118d3d29
Author: Jeff Layton <jlayton(a)redhat.com>
manpage: add missing options for the RecoveryBackend section
commit 89e87bede405ef0e0662fda47472da26d2e7a8d2
Author: Jeff Layton <jlayton(a)redhat.com>
NFS: don't try to lift grace after the main thread exits
commit da3133644f3441df8b0c4f4c934aa8ab1c3be269
Author: Daniel Gryniewicz <dang(a)redhat.com>
Set op_ctx when reverting or failing exports
6 years, 7 months
Change in ffilz/nfs-ganesha[next]: exports: allow all protocols for export 0
by GerritHub
From Paul Emmerich <emmericp(a)net.in.tum.de>:
Paul Emmerich has uploaded this change for review. ( https://review.gerrithub.io/410999
Change subject: exports: allow all protocols for export 0
......................................................................
exports: allow all protocols for export 0
This patch allows specifying other protocols than NFSv4 for
the pseudo root. Previously only NFSv4 was allowed.
The log message indicates that this is the intended behavior
and the check for exactly NFSv4 was a bug.
Change-Id: Idf2c8704f64d8b0f36aa4839c921ae42f5a71a87
Signed-off-by: Paul Emmerich <paul.emmerich(a)croit.io>
---
M src/support/exports.c
1 file changed, 1 insertion(+), 2 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/99/410999/1
--
To view, visit https://review.gerrithub.io/410999
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: Idf2c8704f64d8b0f36aa4839c921ae42f5a71a87
Gerrit-Change-Number: 410999
Gerrit-PatchSet: 1
Gerrit-Owner: Paul Emmerich <emmericp(a)net.in.tum.de>
6 years, 7 months
Change in ffilz/nfs-ganesha[next]: FSAL_PROXY : multi-export
by GerritHub
From Patrice LUCAS <patrice.lucas(a)cea.fr>:
Patrice LUCAS has uploaded this change for review. ( https://review.gerrithub.io/410897
Change subject: FSAL_PROXY : multi-export
......................................................................
FSAL_PROXY : multi-export
This patch allows several Proxy exports for one
ganesha server.
Move backend nfs server conf from module to export.
One RPC connection is set by export.
Change-Id: I8ccd723d93d5521864061e759d0a1cabcc7d1914
Signed-off-by: Patrice LUCAS <patrice.lucas(a)cea.fr>
---
M src/FSAL/FSAL_PROXY/export.c
M src/FSAL/FSAL_PROXY/handle.c
M src/FSAL/FSAL_PROXY/main.c
M src/FSAL/FSAL_PROXY/pxy_fsal_methods.h
M src/config_samples/config.txt
5 files changed, 476 insertions(+), 397 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/97/410897/1
--
To view, visit https://review.gerrithub.io/410897
To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I8ccd723d93d5521864061e759d0a1cabcc7d1914
Gerrit-Change-Number: 410897
Gerrit-PatchSet: 1
Gerrit-Owner: Patrice LUCAS <patrice.lucas(a)cea.fr>
6 years, 7 months
Announce Push of V2.7-dev.12
by Frank Filz
Branch next
Tag:V2.7-dev.12
Release Highlights
* specfile: add build dependency on libnsl2 for tirpc build
* MDCACHE - Change and lower futility message
* gtest/test_reopen2_latency: reopen2 latency microbenchmark
* mdcache : print proper address for an entry in mdcache_find_keyed()
Signed-off-by: Frank S. Filz <ffilzlnx(a)mindspring.com>
Contents:
12f352e Frank S. Filz V2.7-dev.12
9010394 Jiffin Tony Thottan mdcache : print proper address for an entry in
mdcache_find_keyed()
1a94c7f Girjesh Rajoria gtest/test_reopen2_latency: reopen2 latency
microbenchmark
7e1ed81 Daniel Gryniewicz MDCACHE - Change and lower futility message
43f4b14 Jeff Layton specfile: add build dependency on libnsl2 for tirpc
build
6 years, 7 months