On Tue, 4 Jan 2000, Soren Schmidt wrote:

> The problem here is that you will then do a lot of unneeded padding
> as the driver will attempt to pad to the blocksize used which is not
> wanted. You HAVE to use the right blocksize especially for audio, or
> you will get "silent" ie zero padded blocks on disk, and thats not
> what you want is it ?

I used a multiple of the blocksize, and it works fine, except for on
the very last bit of data.  The very last bit of data is what causes
an underrun, and the code that's there for overrun/underrun is
wrong right now.  For underrun, it ends up writing the underlying
blocksize length from the user buffer of _less_than_that_size_, then
it writes (blocksize - user buffer size) _more_ zeroed data!  This
promptly locks up the IDE bus with my CD-R.  That's what the patch was
about and you didn't say anything about; yes, I know that blocksizes
should be matched perfectly and padded perfectly to prevent the ATA
driver from having to handle the underrun/overrun cases, but the
current handling is/was still broken.

>  
> -Søren
> 

-- 
 Brian Fundakowski Feldman           \  FreeBSD: The Power to Serve!  /
 [EMAIL PROTECTED]                    `------------------------------'



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to