Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Mar 2004 13:09:32 -0500
From:      John Baldwin <jhb@FreeBSD.org>
To:        freebsd-current@freebsd.org
Cc:        Jun Kuriyama <kuriyama@imgsrc.co.jp>
Subject:   Re: Expand libdisk to use 64bit size/offset
Message-ID:  <200403101309.32292.jhb@FreeBSD.org>
In-Reply-To: <7m7jxth70h.wl@black.imgsrc.co.jp>
References:  <7m7jxth70h.wl@black.imgsrc.co.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 09 March 2004 07:37 pm, Jun Kuriyama wrote:
> I found sysinstall(8) cannot handle TB class storage.  It looks
> both of libdisk and sysinstall should be fixed.
>
> I'm trying to improve this situation, but I'm not sure I'm going to
> the right direction.  Please look this patch (including my debugging
> stuff and XXX comments which should be resolved/removed).
>
> http://www.imgsrc.co.jp/~kuriyama/BSD/libdisk-20040310.diff
>
> I choose daddr_t as larger storage for offset, size and end member of
> "struct chunk".  I think offset and end is okay, but I don't know
> daddr_t for offset is correct or not.

dadd_t is a uint32_t, so it won't help.  Just use off_t for chunk 
offset/size/end.

> And, In Write_Disk() at write_i386_disk.c, over 256 is stored in
> dp_ecyl and this member is unsigned char on i386.  Is this something
> wrong?
>
> >                if (i > 1023)
> >                        i = 1023;
> >                dp[j].dp_ecyl = i;

Cylinders are encoded via magic with the lower 8 bits in one byte and 2 other 
bits stored in the sector number.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200403101309.32292.jhb>