From owner-freebsd-scsi Fri Aug 22 08:30:55 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id IAA14120 for freebsd-scsi-outgoing; Fri, 22 Aug 1997 08:30:55 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id IAA14114 for ; Fri, 22 Aug 1997 08:30:50 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.5/8.6.9) id BAA30318; Sat, 23 Aug 1997 01:28:25 +1000 Date: Sat, 23 Aug 1997 01:28:25 +1000 From: Bruce Evans Message-Id: <199708221528.BAA30318@godzilla.zeta.org.au> To: freebsd-scsi@FreeBSD.ORG, j@uriah.heep.sax.de Subject: Re: newfs on Fujitsu R640 (2k sector media) Cc: andrew@zeta.org.au Sender: owner-freebsd-scsi@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >> Won't this be foiled when newfs attempts to write the last sector, to >> verify that it can, and uses a 512-byte write? It should write in multiples of the fs block size or maybe the fragment size. If not, (ab)using the buffered device might work. >Newfs doesn't write to a last sector to verify something. That's not >a PC BIOS... Newfs just creates the required filesystem structures >only. Nope, UTSL, newfs/mkfs.c has full support for PC BIOSes ;-): /* * Validate the given file system size. * Verify that its last block can actually be accessed. */ if (fssize <= 0) printf("preposterous size %d\n", fssize), exit(13); wtfs(fssize - (realsectorsize / DEV_BSIZE), realsectorsize, (char *)&sblock); Bruce