Skip site navigation (1)Skip section navigation (2)
Date:      26 Sep 1998 23:36:04 -0400
From:      "Robert V. Baron" <rvb@cs.cmu.edu>
To:        current@FreeBSD.ORG
Subject:   VM question
Message-ID:  <yzsiuiamdln.fsf@sicily.odyssey.cs.cmu.edu>
In-Reply-To: George Michaelson's message of Sun, 27 Sep 1998 11:50:44 %2B1000 (EST)

next in thread | raw e-mail | index | archive | help
I have a file system (Coda) in FreeBSD -current that needs to be able
to map/exec files.  There are a couple ways of doing this.  One way is
to have coda_bmap() return an error which will then force,
vnode_pager_generic_getpages() to call vnode_pager_input_old().  The
latter function does a simple VOP_READ to get the data.  It looks like
it pretty much does the right thing.  BUT it looks like it fails to
set the m->valid flag in the page it just read.  (So later when
exec_map_first_page checks for m->valid == 0; it's sad and the exec
aborts.)  It looks like if you do the more complicated
vnode_pager_generic_getpage() function, it will set valid.  On the
otherhand, it looks like that vm_fault() which also calls
vm_pager_get_pages() does its own setting of m->valid.  So my
questions is:
	Should vnode_pager_input_old set m->valid and if not who
	should.

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



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