ganesha libcephfs changes (do not merge)#318
Closed
liewegas wants to merge 1772 commits intocuttlefishfrom
Closed
Conversation
Member
Author
There was a problem hiding this comment.
this should be in terms of a sockaddr_storage, not a uint32_t, so that it works for ipv6 and whatever else comes along. it should probably also return an error if !is_up()?
Member
Author
|
overall this looks pretty good.
|
When we drop the request inode refs, we need to use put_inode() to ensure they get cleaned up properly (removed from inode_map, caps released, etc.). Do this explicitly here (as we do with all other inode put() paths that matter). Fixes: #5381 Backport: cuttlefish Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
If we get ENXIO, buflen will be 0. Signed-off-by: Sage Weil <sage@inktank.com>
…p-rgw-geo-2 Conflicts: src/Makefile.am src/rgw/rgw_admin.cc src/rgw/rgw_common.h Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
…vate Not sure I can make this actually private and make Client::put_inode() a friend method (making all of Client a friend would defeat the purpose). This works well enough, though! Signed-off-by: Sage Weil <sage@inktank.com>
Make sure all MetaRequest reference put's go through the same path that releases inode references, including all of the error paths. Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
Call into an MDS method so that we can write to the log. Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Make a well-defined maximum size of an object attribute. Since Linus has a 64KB limit, and that is what we normally use to back this, use that as the limit. This means that even when leveldb is backing large xattrs (as ext4 users must do) we will return EFBIG on >64KB setxattr attempts. Signed-off-by: Sage Weil <sage@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
The field is not used or useful since the monitor does not even look at it (in Monitor::handle_command()). Avoid populating it and the subsequent confusion for poor developers. Signed-off-by: Sage Weil <sage@inktank.com>
We should not send an unbounded number of inc maps to our peers or clients. In particular, if a peer is not contacted for a while, we may think they have a very old map (say, 10000 epochs ago) and send thousands of inc maps when the distribution shifts and we need to peer. Note that if we do not send enough maps, the peers will make do by requesting the map from somewhere else (currently the mon). Regardless of the source, however, we must limit the amount that we speculatively share as it usually is not needed. Backport: cuttlefish, bobtail Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Samuel Just <sam.just@inktank.com>
From 653e04a Backport: cuttlefish, bobtail Signed-off-by: Sage Weil <sage@inktank.com>
Fixes bug 5528 Since it returns all xattrs, it does not take an xattr_name. Also, add unit tests for the Object xattrs methods. Signed-off-by: Johannes Erdfelt <johannes@erdfelt.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
It's only present in very recent versions of nose, and doesn't provide much beyond a simple assert. Signed-off-by: Josh Durgin <josh.durgin@inktank.com> Reviewed-by: Dan Mick <dan.mick@inktank.com>
On some systems (virtual machines so far) the device-by-path entry from udevadm is not always in the same spot so instead actually look for the right output instead of blindy assuming that its a specific field in the output. Signed-off-by: Sandon Van Ness <sandon@inktank.com> Reviewed-by: Gary Lowell <gary.lowell@inktank.com>
Signed-off-by: Samuel Just <sam.just@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
radosgw-admin help command naming and text improvements Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
Signed-off-by: Sage Weil <sage@inktank.com> Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This gives us a framework to implement commit operations that are guaranteed to terminate even if unstable writes come in after commit is called. Adapted to use Boost interval classes by Adam Emerson <aemerson@linuxbox.com>. Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This appears to save us a bit of extra work trying to fill up the buffer further than it can be filled. Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This is more natural for both FUSE and Ganesha. Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This commit implements a set of API changes proposed by "David Zafman" <david.zafman@inktank.com>. The principle change is consistently use Ceph Inode pointers as context for inode operations, in place of materialized snapid, inode# (vinodeno_t) tuples. This provides a strictly handle-based interface to users. They can either do lookups themselves, or call a lookup method to get an Inode* from a vinodeno_t. (Build fixed in later commits, e.g., SyntheticClient.cc.) Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This allows us to construct pNFS layouts and DS filehandles that match the Ceph clustering, placement, and striping structure. (Includes pieces of API v2 by Matt.) Signed-off-by: Matt Benjamin <matt@linuxbox.com> Conflicts: src/client/Client.cc Signed-off-by: Matt Benjamin <matt@linuxbox.com>
These methods were created to implement pNFS data server support, bypassing cap checks since the pNFS MDS holds a cap on behalf of the client, realized in the recallable layout. (Includes pieces of API v2 by Matt.) Signed-off-by: Matt Benjamin <matt@linuxbox.com>
(Includes pieces of NFS interface widening by Adam.) Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This adapts the FUSE client to David Zafman's proposed interface changes. (Includes pieces of NFS interface widening by Adam.) Signed-off-by: Matt Benjamin <matt@linuxbox.com> Conflicts: src/client/fuse_ll.cc Signed-off-by: Matt Benjamin <matt@linuxbox.com>
This patch exposes all changes made for interfacing with Ganesha and layout support and David Zafman's proposed modifications to the low-level API. Signed-off-by: Adam Emerson <aemerson@linuxbox.com> Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Signed-off-by: Andrey Kuznetsov <Andrey_Kuznetsov@epam.com>
Signed-off-by: Andrey Kuznetsov <Andrey_Kuznetsov@epam.com>
Signed-off-by: Andrey Kuznetsov <Andrey_Kuznetsov@epam.com>
For xattrs, we only include them in the reply if we are issuing caps on them. However, in the getattr case, we need to include the snapshot of the current state. The original problem is reproduced by LibCephFS.Xattrs_ll (a simple set then get). Signed-off-by: Sage Weil <sage@inktank.com>
Supply a buffer and copy the data into it. Do not ever expose internal pointers from libcephfs's own cache. Signed-off-by: Sage Weil <sage@inktank.com>
Build issues have been fixed
andriytk
pushed a commit
to andriytk/cortx-rgw
that referenced
this pull request
Jun 22, 2022
Problem: In PR ceph#316 we commented IPPolicyTest unittest as IPPolicyTest unittests were crashing. Solution: Uncommented IPPolicyTest unittests. A new story will be creating for fixing this crash. Signed-off-by: Parayya Vastrad <parayya.vastrad@seagate.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
this is just to capture review comments