Messages in this thread | | | Date | Wed, 10 Dec 2014 23:43:46 +0900 | From | Akira Hayakawa <> | Subject | Re: [dm-devel] [PATCH] staging: writeboost: Add dm-writeboost |
| |
On 12/10/14 10:42 PM, Joe Thornber wrote: > On Wed, Dec 10, 2014 at 10:31:31PM +0900, Akira Hayakawa wrote: >> Joe, >> >>> So you copy the bio payload to a different block of ram and then >>> complete the bio? Or does the rambuf refer to the bio payload >>> directly? >> Good question. >> The answer is, copy the data (got by bio_data(bio)) to rambuf once >> and ack if it's not barrier things. >> It would be nice if data in rambuf points to bio payload but it now copies >> because bio payload can be reused after completion. Am I right? >> Is there a way of eliminate memory copying? > > You *have* to eliminate this memory copying. Remap the bios to the > relevant portion of your log, and don't complete them until you log > chunk is coherent. >
Barrier writes don't ack until the log is written on cache device. I guess treating other writes as well will do this work.
But, it will be much better if I can do this by manipulating reference count of the bio payload. I am not sure how the implementation would be.
Anyway, thanks for advice,
- Akira
| |