Commit 3cd6d1ba authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 6cbd0f02
...@@ -54,6 +54,11 @@ ...@@ -54,6 +54,11 @@
// Such requests originate from regular client threads - not pinner - via entry // Such requests originate from regular client threads - not pinner - via entry
// points like Conn.open, Conn.resync and FileH.close. // points like Conn.open, Conn.resync and FileH.close.
// //
// Every FileH maintains fileh._pinned {} with currently pinned blk -> rev. The
// dict is updated by pinner driven by pin messages, and is used used when
// either new fileh Mapping is created (FileH.mmap) or refreshed due to request
// from virtmem (Mapping.remmap_blk, see below).
//
// In wendelin.core a bigfile has semantic that it is infinite in size and // In wendelin.core a bigfile has semantic that it is infinite in size and
// reads as all zeros beyond region initialized with data. Memory-mapping of // reads as all zeros beyond region initialized with data. Memory-mapping of
// OS-level files can also go beyond file size, however accessing memory // OS-level files can also go beyond file size, however accessing memory
...@@ -63,14 +68,8 @@ ...@@ -63,14 +68,8 @@
// never shrink. It is indeed currently so, but will have to be revisited // never shrink. It is indeed currently so, but will have to be revisited
// if/when wendelin.core adds bigfile truncation. Wcfs client restats // if/when wendelin.core adds bigfile truncation. Wcfs client restats
// wcfs/head/f at every transaction boundary (Conn.resync) and remembers f.size // wcfs/head/f at every transaction boundary (Conn.resync) and remembers f.size
// in FileH.headfsize for use during one transaction. // in FileH._headfsize for use during one transaction.
//
// Every FileH maintains
// //
// XXX fh.pinned
// used on:
// - FileH.mmap (create new mapping)
// - Mapping.remmap_blk (call from virtmem after RW -> RO)
// //
// //
// //
...@@ -95,6 +94,7 @@ ...@@ -95,6 +94,7 @@
// //
// RW -> Uptodate: Virtmem calls pinner to remmap the page RO after commit or // RW -> Uptodate: Virtmem calls pinner to remmap the page RO after commit or
// abort. // abort.
// - Mapping.remmap_blk (call from virtmem after RW -> RO)
// //
// //
// VMA -> fileh -> file // VMA -> fileh -> file
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment