Date: Fri, 30 Jan 1998 02:44:28 +1100 From: Bruce Evans <bde@zeta.org.au> To: bde@zeta.org.au, mike@smith.net.au Cc: cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: Re: cvs commit: src/sys/i386/isa wfd.c Message-ID: <199801291544.CAA01875@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> >> Only for raw i/o. bread() and bwrite() don't even look at b_resid. >> > >> >Then it strikes me that you're suggesting a non-solution. Any other >> >ideas? >> >> It's good enough for SCSI drivers. > >You just previously said that it wasn't adequate. Please make up your >mind. 8) I already did. It's buggy and inadequate, but good enough for SCSI drivers. There's no point in making it work right in only one floppy driver. You lose only support for filesystem block sizes > 32K and <= 64K. >So far you have suggested that I should do the second, because that's >what SCSI adapters do, even though they never do because they can all >handle MAXPHYS-sized transfers, and not all the calling code will >honour the returned value in b_resid. Some of them can only can only handle 16 scatter-gather segments, so they can only handle transfer sizes <= 64K, which is currently MAXPHYS/2. They are never asked to handle > 64K because filesystem block sizes are limited to MAXBSIZE = 64K and raw i/o sizes are limited to DFLTPHYS = 64K. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199801291544.CAA01875>