Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

os/bluestore: pack a few more in-memory types #11328

Merged
merged 6 commits into from Oct 6, 2016

Conversation

liewegas
Copy link
Member

@liewegas liewegas commented Oct 5, 2016

No description provided.

272 -> 264 bytes

Signed-off-by: Sage Weil <sage@redhat.com>
224 -> 216 bytes

Signed-off-by: Sage Weil <sage@redhat.com>
Saves 24 bytes!

BufferSpace  104 -> 80 bytes
SharedBlob   216 -> 192 bytes

Signed-off-by: Sage Weil <sage@redhat.com>
160 -> 152 bytes

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
We were tracking buffers by seq.  In reality, though, we
won't have very many buffers that have in flight IO to
the same blob at the same time, so we can get by with
just a list here.  We can rely on the fact that the
list will be sorted (seq's increase, and we put new
buffers at the end).

This saves us a memory allocation.  No change in size of
BufferSpace and Blob (std::list -> intrusive::list).

Signed-off-by: Sage Weil <sage@redhat.com>
@markhpc
Copy link
Member

markhpc commented Oct 5, 2016

To build this needs the writing_map changed to writing in Blob::can_split (BlueStore.h) and Bufferspace::split (BlueStore.cc).

@liewegas liewegas merged commit 5c615be into ceph:master Oct 6, 2016
@liewegas liewegas deleted the wip-bluestore-more-types branch October 6, 2016 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants