David Gilbert previously suggested a memory access interface. I guess it would look something like this:
typedef struct {
void (*memset)(void *s, int c, size_t n);
void (*memcpy)(void *dest, const void *src, size_t n);
} MemoryOperations;
That way code doesn't need if (pmem) A else B. It can just do
mem_ops->foo(). Have you looked into this idea?
Also, there was a discussion about leaving the code unchanged but adding
an nvdimm_flush() call at the very end of migration. I think someone
benchmarked it but can't find the email. Please post a link or
summarize the results, because that approach would be much less
invasive. Thanks!
Stefan
signature.asc
Description: PGP signature
