On 14/02/18 19:44, Alexander Boettcher wrote:
After following the hint in the vm_vfs.c file, that the code is
similar/based on src/sys/uvm/uvm_pager.c, I extended vm_vfs.c
accordingly properly (at least I hope so) by the error handling part.

It seems, correct me if I'm wrong, that pages got freed which hold not
yet written data (indicated by b_error member of struct buf).

With the error handling change we finally could avoid the rarely
corruption. (original Genode issue [1], just the patch [2])


The bug, its rare manifestation, and fix all seem plausible. Good work tracking it down! Please submit it to NetBSD (*) so that all serious users pulling the from the tap for the latest {bug,security} fixes (and additions ;) will benefit from your patch.

*) https://netbsd.org/cgi-bin/sendpr.cgi?gndb=netbsd


Reply via email to