Subject: Re: "Bad address" reading files (was Re: Problems with very large files?)
To: None <current-users@netbsd.org>
From: Bernd Ernesti <netbsd@arresum.inka.de>
List: current-users
Date: 02/26/2001 09:08:37
On Mon Feb 26 02:10:34 2001, Dave Huang wrote:
> 
> On Sun, 25 Feb 2001, Jaromír Dolecek wrote:
> > This is one of remaining issues with UBC on -current IIRC.
> > It's definitely a known bug.
> 
> Oh, okay :) Not a big problem... a mostly unrelated question though: The

I thought that the 4GB problem was fixed in the last 1-2 weeks. So maybe a
kernel update would fix this problem.

> file is an image of a friend's hard drive that Windows (or something)
> managed to corrupt. I fixed up the BPB in the boot sector, vnconfiged
> it, and mounted the partition (it's a FAT32 partition), then copied what
> I could off of it. Most of the files copied fine, but a few give me a
> "Bad address" error. For example:
> 
> yerfable /tmp# ktrace cat /mnt/SLSLO
> cat: /mnt/SLSLO: Bad address
> yerfable /tmp# kdump
> [ stuff deleted ]
>  14609 cat      CALL  read(0x3,0x120118000,0x10000)
>  14609 cat      RET   read -1 errno 14 Bad address

I get the same problem when I mount a nfs filesystem from a remote machine via amd.

 11593 cat      CALL  open(0xbfbfd72c,0,0)
 11593 cat      NAMI  "traceroute.c"
 11593 cat      RET   open 3
 11593 cat      CALL  __fstat13(0x1,0xbfbfd530)
 11593 cat      RET   __fstat13 0
 11593 cat      CALL  break(0x8060000)
 11593 cat      RET   break 0
 11593 cat      CALL  break(0x8070000)
 11593 cat      RET   break 0
 11593 cat      CALL  read(0x3,0x8060000,0x10000)
 11593 cat      RET   read -1 errno 14 Bad address

I have no problem to cat a smaller file or when I mount the filesystem directly
by mount_nfs and not by amd.

Hmmm, I think it works for files <3897 bytes.

> dd count=1 if=/dev/zero of=t bs=3897
1+0 records in
1+0 records out
3897 bytes transferred in 1 secs (3897 bytes/sec)
> cat t
cat: t: Bad address
> dd count=1 if=/dev/zero of=t bs=3896
1+0 records in
1+0 records out
3896 bytes transferred in 1 secs (3896 bytes/sec)
> cat t                             
>

I use at the moment a kernel based on current sources from the 19th February 2001.

Bernd