All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Elder <elder@inktank.com>
To: ceph-devel@vger.kernel.org
Subject: OSD Data Read/Write Separation Patches
Date: Mon, 04 Mar 2013 12:05:18 -0600	[thread overview]
Message-ID: <5134E25E.4030701@inktank.com> (raw)

What follows are four series of patches that lead up to making
it clear exactly which data in an osd operation is outgoing
(being sent to an osd) and which is incoming (the result of
a read or object method call operation).  They build on each
other, with the results of one making the subsequent ones
possible (or at least easier to understand and verify).

The four series are:

[PATCH 0/3] libceph: a few cleanups
[PATCH 1/3] libceph: use (void *) for untyped data in osd ops
[PATCH 2/3] libceph: kill ceph_msg->pagelist_count
[PATCH 3/3] libceph: rename ceph_calc_object_layout()
    These are sort of miscellaneous cleanup, not directly
    related but fixed while I was working with nearby code.

[PATCH 0/3] libceph: simplify incoming message allocation
[PATCH 1/3] libceph: drop mutex while allocating a message
[PATCH 2/3] libceph: define mds_alloc_msg() method
[PATCH 3/3] libceph: no need for alignment for mds message
    This simplifies and localizes the code that allocates
    messages for incoming data.

[PATCH 0/3] ceph: assign message data fields consistently
[PATCH 1/3] ceph: use calc_pages_for() in start_read()
[PATCH 2/3] ceph: simplify ceph_sync_write() page_align calculation
[PATCH 3/3] libceph: don't assign page info in ceph_osdc_new_request()
    This allows the assignment of everything about the pages
    for holding data in an osd request to happen in consecutive
    lines of code, and such that it's done the same way throughout
    the ceph code.

[PATCH 0/3] libceph: distinguish osd request read and write data
[PATCH 1/3] libceph: separate osd request data info
[PATCH 2/3] libceph: distinguish page and bio requests
[PATCH 3/3] libceph: separate read and write data
    This encapsulates information about osd request data into a
    separate data structure, then defines separate instances
    of that structure for incoming and outgoing data.

These patches are available in branch "review/wip-rwsep" on
the ceph-client git repository.  Included before them are two
others I posted recently:

[PATCH] libceph: fix wrong opcode use in osd_req_encode_op()
[PATCH] libceph: complete lingering requests only once

					-Alex

             reply	other threads:[~2013-03-04 18:05 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-04 18:05 Alex Elder [this message]
2013-03-04 18:08 ` [PATCH 0/3] libceph: a few cleanups Alex Elder
2013-03-04 18:09   ` [PATCH 1/3] libceph: use (void *) for untyped data in osd ops Alex Elder
2013-03-04 18:09   ` [PATCH 2/3] libceph: kill ceph_msg->pagelist_count Alex Elder
2013-03-04 18:09   ` [PATCH 3/3] libceph: rename ceph_calc_object_layout() Alex Elder
2013-03-05  1:49   ` [PATCH 0/3] libceph: a few cleanups Josh Durgin
2013-03-04 18:10 ` [PATCH 0/3] libceph: simplify incoming message allocation Alex Elder
2013-03-04 18:12   ` [PATCH 1/3] libceph: drop mutex while allocating a message Alex Elder
2013-03-04 19:07     ` Gregory Farnum
2013-03-04 19:25       ` Alex Elder
2013-03-04 19:39         ` Gregory Farnum
2013-03-04 19:52           ` Alex Elder
2013-03-04 18:12   ` [PATCH 2/3] libceph: define mds_alloc_msg() method Alex Elder
2013-03-04 19:05     ` Gregory Farnum
2013-03-04 19:37       ` Alex Elder
2013-03-04 18:12   ` [PATCH 3/3] libceph: no need for alignment for mds message Alex Elder
2013-03-04 19:09     ` Gregory Farnum
2013-03-04 18:14 ` [PATCH 0/3] ceph: assign message data fields consistently Alex Elder
2013-03-04 18:15   ` [PATCH 1/3] ceph: use calc_pages_for() in start_read() Alex Elder
2013-03-04 18:15   ` [PATCH 2/3] ceph: simplify ceph_sync_write() page_align calculation Alex Elder
2013-03-04 18:15   ` [PATCH 3/3] libceph: don't assign page info in ceph_osdc_new_request() Alex Elder
2013-03-05  1:55   ` [PATCH 0/3] ceph: assign message data fields consistently Josh Durgin
2013-03-04 18:16 ` [PATCH 0/3] libceph: distinguish osd request read and write data Alex Elder
2013-03-04 18:17   ` [PATCH 1/3] libceph: separate osd request data info Alex Elder
2013-03-05  2:13     ` Josh Durgin
2013-03-04 18:18   ` [PATCH 2/3] libceph: distinguish page and bio requests Alex Elder
2013-03-05  2:14     ` Josh Durgin
2013-03-04 18:18   ` [PATCH 3/3] libceph: separate read and write data Alex Elder
2013-03-05  2:15     ` Josh Durgin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5134E25E.4030701@inktank.com \
    --to=elder@inktank.com \
    --cc=ceph-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.