Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Oct 2001 05:02:13 -0400 (EDT)
From:      "Ilmar S. Habibulin" <ilmar@watson.org>
To:        freebsd-hackers@freebsd.org
Subject:   how can i wipeout swap pages?
Message-ID:  <20011024044458.U45888-100000@fledge.watson.org>

next in thread | raw e-mail | index | archive | help

I'm trying to implement wiping of freed swap pages inside swap_pager.
I'm  using 2.2-branch, here is my thoughts and steps:

I have a (starting) block number of swapped page, i know page size, and i
know that i have to use some pool of buffers inside kernel. So i get
buffer with getpbuf(), then fill in b_data, b_blkno, b_bcount, b_bufsize,
b_proc and b_flags fields and call pbgetvp(swapdev_vp,bp) and
VOP_STRATEGY(bp). Then i analize error flag in b_flags and call
pbrelvp(bp) and relpbuf(bp). This code was copied from
getpages/putpages routines, but it hangs kernel and PC. So i misunderstand
something and need help. How can i successfully write down some data to
the known block number on the known device from the kernel? Or maybe
someone can point me where can i find more information on I/O in kernel?

Thank you.

PS. I've read -current manpages, but they didn't help me much. :(





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011024044458.U45888-100000>