Messages in this thread | | | Date | Thu, 22 Apr 2010 19:13:08 +0300 | From | Avi Kivity <> | Subject | Re: Frontswap [PATCH 0/4] (was Transcendent Memory): overview |
| |
On 04/22/2010 06:48 PM, Dan Magenheimer wrote: >>> a synchronous concurrency-safe page-oriented pseudo-RAM device (such >>> : >>> conform to certain policies as follows: >>> >> How baked in is the synchronous requirement? Memory, for example, can >> be asynchronous if it is copied by a dma engine, and since there are >> hardware encryption engines, there may be hardware compression engines >> in the future. >> > Thanks for the comment! > > Synchronous is required, but likely could be simulated by ensuring all > coherency (and concurrency) requirements are met by some intermediate > "buffering driver" -- at the cost of an extra page copy into a buffer > and overhead of tracking the handles (poolid/inode/index) of pages in > the buffer that are "in flight". This is an approach we are considering > to implement an SSD backend, but hasn't been tested yet so, ahem, the > proof will be in the put'ing. ;-) >
Well, copying memory so you can use a zero-copy dma engine is counterproductive.
Much easier to simulate an asynchronous API with a synchronous backend.
-- Do not meddle in the internals of kernels, for they are subtle and quick to panic.
| |