From 0933418a1625da62d7ba79d5ee33ee2c256999a5 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Tue, 4 Feb 2025 22:40:01 +0100 Subject: mach-defpager: comment on improving on lost data Instead of killing the whole object. --- mach-defpager/default_pager.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mach-defpager/default_pager.c b/mach-defpager/default_pager.c index aef700d0..9a477615 100644 --- a/mach-defpager/default_pager.c +++ b/mach-defpager/default_pager.c @@ -2470,6 +2470,9 @@ ddprintf ("seqnos_memory_object_data_request <%p>: pager_port_unlock: <%p>[s:%d, pager_port_unlock(ds); if (errors) { + /* TODO: we could instead add an ERROR along NO_BLOCK + to singlify returned errors to the pages actually lost instead + of killing the whole object. */ static int warned = 0; if (!warned) { printf("(default pager): previous write error for object, killing it\n"); @@ -2588,6 +2591,7 @@ ddprintf ("seqnos_memory_object_data_initialize <%p>: pager_port_unlock: <%p>[s: printf("(default pager): data_initialize write error, losing data\n"); } dstruct_lock(ds); + /* TODO: mark page as lost instead. */ ds->errors++; dstruct_unlock(ds); } @@ -2675,6 +2679,7 @@ seqnos_memory_object_data_return(default_pager_t ds, warned = 1; } dstruct_lock(ds); + /* TODO: mark page as lost instead. */ ds->errors++; dstruct_unlock(ds); } -- cgit v1.2.3