Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Feb 1998 02:35:06 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        mike@smith.net.au (Mike Smith)
Cc:        hasty@rah.star-gate.com, mike@smith.net.au, scrappy@hub.org, freebsd-current@FreeBSD.ORG
Subject:   Re: ATAPI related patch ..
Message-ID:  <199802240235.TAA13911@usr05.primenet.com>
In-Reply-To: <199802232218.OAA12635@dingo.cdrom.com> from "Mike Smith" at Feb 23, 98 02:18:42 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> Luigi's hack is for CDDA (sucking audio off the CD) acccess; this is 
> basically bulk data transfer.  Being a read-like operation, it's better 
> handled as such.
> 
> With a little more work, once you support audio accesses in the driver 
> properly, you become able to produce a "cdrom audio FS", where tracks 
> on the disk appear as files when the disk is mounted.

Pull the other one.  Audio track disk blocks are not evenly divisible
into (or by) a page size.

There are all *sorts* of nice coherency problems that you run into from
this.

Effectively, you would need the LCM of the non-factors which are not
LCF, to be read at one time.  Otherwise you won't get a "page not
present" error when you have a page that is partially valid.

This problem gets worse if you want to *write* audio tracks.

Talk to Julian; we hashed this all out over a whiteboard one night
when I wanted to start using the 8-bit field, take the page mapping
hit, and either go with the page that was there or read partial
pages from disk for the MSDOSFS case where the 1k "blocks" began
at a one block offset (possible on some older geometry drives).  I
was being less ambitious, in that I only wanted to handle runs of
blocks in 512b multiples at (possible) multiple minus 1 non-zero
offsets.  Just the 1k disk/2k optical media/msdosfs non-even
cylinder boundry cases...

Julian's soloution is more correct, but it's a lot of work to support
arbitrary block sizes (*especially* if the block size happens to be
prime(!)...).


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.

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?199802240235.TAA13911>