Date: Mon, 23 Feb 1998 22:46:21 -0800 From: Mike Smith <mike@smith.net.au> To: Terry Lambert <tlambert@primenet.com> Cc: mike@smith.net.au (Mike Smith), hasty@rah.star-gate.com, scrappy@hub.org, freebsd-current@FreeBSD.ORG Subject: Re: ATAPI related patch .. Message-ID: <199802240646.WAA14231@dingo.cdrom.com> In-Reply-To: Your message of "Tue, 24 Feb 1998 03:33:05 GMT." <199802240333.UAA17080@usr05.primenet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > > Pull the other one. Audio track disk blocks are not evenly divisible > > > into (or by) a page size. > > > > I'm not pulling nothing. Put an audio CD into your Win98 machine (or > > Win95 OSR2 machine for that matter), and 'cd' to the drive in a penalty > > box. > > > > Tell me what you see *there*. > > A display on a graphical exporer front-ending for an OS without a > unified VM and buffer cache. OK. Perhaps I should have said "what does the user see there". Remember that at least some of us are interested in the results as seen by the user. 8) > > Sure, this is just a case where you need a SLICE layer that understands > > non-multiple non-factor block size transforms. > > No. Julian's soloution was that you would need to aggregate partial > real blocks underneath the page abstraction. I wouldn't even bother with patial blocks, but I'm probably being too primitive about it. > Like many things, it requires a working VOP_{GET|PUT}PAGES. Do you have one? Where is it in the queue of swallowable chunks? > > Bear in mind that all you're actually doing is providing directory > > entries that someone can open. Nobody says that the files can be > > *mapped*, although they ought to be mappable. 8) > > If you are going to read them, then you are going to (effectively) > map them, because the VM objects backed by the file are hung off the > vnode. All a mapping is, is pointing a memory region at a set of > pages backed by a vnode. It doesn't matter how the pages got hung > off the vnode, so long as the contain completely valid or completely > invalid data. 8-). Sure. And below the mapping (do you ever go that far down? 8) there lives a strategy handler, and that strategy handler gets passed an offset and a length, in some agreed block size. From there, all you need is the block size transform (and as mooted, a means for dealing with the write case where you logically only write part of a physical block). All pie-in-the-sky stuff, of course. -- \\ Sometimes you're ahead, \\ Mike Smith \\ sometimes you're behind. \\ mike@smith.net.au \\ The race is long, and in the \\ msmith@freebsd.org \\ end it's only with yourself. \\ msmith@cdrom.com 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?199802240646.WAA14231>