Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site decvax.UUCP
Path: utzoo!watmath!clyde!floyd!harpo!decvax!jmcg
From: jmcg@decvax.UUCP (Jim McGinness)
Newsgroups: net.unix-wizards
Subject: Re: Question on strategy() routines for 4.1BSD drivers
Message-ID: <415@decvax.UUCP>
Date: Thu, 22-Mar-84 15:59:52 EST
Article-I.D.: decvax.415
Posted: Thu Mar 22 15:59:52 1984
Date-Received: Fri, 23-Mar-84 21:17:24 EST
References: <222@hou2d.UUCP>
Organization: DEC UNIX Engineering Group
Lines: 18

The invalid fill-on-demand-from-inode pages are made valid in uba or
mba maps by the other drivers before the transfer occurrs, then
validated by `pagein'.  Your driver should just validate the pages in
place and move the bytes.  It is probably necessary to raise your
priority while you do it, since another process running that image
might sneak in and find the valid page and try to execute the old
bytes.  Better would be to invert the sense of the `copyseg' routine
to move from physical address to user virtual address.

If you have memory to burn, however, I've found that it makes sense to
increase your number of buffers (and on 4.2 to increase bufpages).
This has the effect of keeping more of the disk in memory, but is not
as direct as targeting a particular file system to actually reside in
memory.
						Jim McGinness
	decvax!jmcg				Digital Equipment Corp.
	(603)844-5703				MKO2-1/H10
						Merrimack, NH, 03054