tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

zero-filed page on VOP_PUTPAGES



Hello

I am tracking what I suspect to be a bug in PUFFS kernel code. After a
fsync, sometimes I have the beginning of a page filled with zeros. On
the next write, the correct new data will be appended to the page, and
it will be written with the zeros to the file.

To give an example, when writing to the file through VOP_STRATEGY, the
kernel sends me this:
foo
foobar
foobarbuz
Here a VOP_FSYNC kicks in, and then the kernel sends corrupted data:
\0\0\0\0\0\0buz
\0\0\0\0\0\0buzluz...

Of course that does not happen on each VOP_FSYNC. 

I suspect that the kernel incorrectly thinks it is done with a page, and
fill it with zeros so that it can be reused. Anyone know the VM subsytem
well enough to tell me where the page is cleared with zeros?


-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index