Project

General

Profile

Actions

Subtask #4401

closed

Feature #3761: kernel messenger: need to support multiple ops per request

Subtask #4125: kernel messenger: support multiple sources of data

libceph: record bytes not page count fore requests

Added by Alex Elder about 11 years ago. Updated about 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
% Done:

0%

Source:
Development
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

In working through implementing a cursor to traverse
multiple hunks of data for a message I discovered that
while a page count was recorded for osd requests, but
it wasn't really what I needed for walking through a
page array correctly. So instead I made the size in
bytes of the data in a page array get recorded. From
that, and from the alignment, it's possible to derive
the number of pages in the array.

I just posted two patches for review connected to this.
I'm only now getting around to documenting this in an
issue (sorry Ian).

[PATCH 2/7] libceph: set page info with byte length

When setting page array information for message data, provide the
byte length rather than the page count ceph_msg_data_set_pages().

Signed-off-by: Alex Elder <>

[PATCH 5/7] libceph: record message data byte length

Record the number of bytes of data in a page array rather than the
number of pages in the array. It can be assumed that the page array
is of sufficient size to hold the number of bytes indicated (and
offset by the indicated alignment).

Signed-off-by: Alex Elder <>

Actions #1

Updated by Alex Elder about 11 years ago

  • Status changed from Fix Under Review to Resolved
  • Translation missing: en.field_remaining_hours set to 0.00

Josh reviewed these and they have now been committed
to the testing branch:
c9582368 libceph: record byte count not page count
e7817c8 libceph: set page info with byte length
1ec4a63 libceph: record message data byte length

Actions

Also available in: Atom PDF