diff --git a/sys/src/9/port/segment.c b/sys/src/9/port/segment.c index 83b723eb8..bc3e61cb7 100644 --- a/sys/src/9/port/segment.c +++ b/sys/src/9/port/segment.c @@ -704,6 +704,8 @@ segflush(void *va, uintptr len) error(Ebadarg); s->flushme = 1; + if(s->ref > 1) + procflushseg(s); more: len = (s->top < to ? s->top : to) - from; if(s->mapsize > 0){