From mboxrd@z Thu Jan 1 00:00:00 1970 Message-Id: <200007181518.RAA00977@copernicus.cs.utwente.nl> To: 9fans@cse.psu.edu, "Russ Cox" Subject: Re: [9fans] dossrv: I/O error: dev 3 sector ..., read: 0, should be 4608 In-reply-to: Your message of "Mon, 17 Jul 2000 17:03:35 -0400." <200007172103.RAA17759@smtp4.fas.harvard.edu> References: <200007172103.RAA17759@smtp4.fas.harvard.edu> From: Axel Belinfante Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 18 Jul 2000 17:18:47 +0200 Topicbox-Message-UUID: e2192162-eac8-11e9-9e20-41e7f4b1d025 > The first thing to do is see if the sector > numbers make any sense. First, > multiply them by 512 and see if they're > still 31-bit numbers. If not, you need > to change devio.c thusly: > > g% diff /n/dump/2000/0601/sys/src/cmd/dossrv/devio.c devio.c > 38c38 > < seek(xf->dev, xf->offset+addr*Sectorsize, 0); > --- > > seek(xf->dev, xf->offset+(vlong)addr*Sectorsize, 0); > 57c57 > < seek(xf->dev, xf->offset+addr*Sectorsize, 0); > --- > > seek(xf->dev, xf->offset+(vlong)addr*Sectorsize, 0); > g% Without first checking the sector numbers (sorry! :-) I immediately applied this change, with good success: it now seems to work ok. Thanks! Axel.