Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jul 2008 15:14:06 -0400
From:      "Bob Johnson" <fbsdlists@gmail.com>
To:        "Jan Henrik Sylvester" <me@janh.de>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: 250GB hd: Can FreeBSD use >137GB (bios) as Linux or Windows do?
Message-ID:  <54db43990807311214g6d6bc1bbm92bf660b10bfbb18@mail.gmail.com>
In-Reply-To: <29825939.312031217523061419.JavaMail.servlet@kundenserver>
References:  <29825939.312031217523061419.JavaMail.servlet@kundenserver>

next in thread | previous in thread | raw e-mail | index | archive | help
On 7/31/08, Jan Henrik Sylvester <me@janh.de> wrote:
>>On 7/31/08, me@janh.de <me@janh.de> wrote:
>>> Yesterday, I wrote about "CANNOT READ BLK" from my new hd that I
>>> filled via firewire:
>>> http://lists.freebsd.org/pipermail/freebsd-questions/2008-July/179646.html
>>> The response suggested to check for faulty hardware, which I am still
>>> trying to do.
>>>
>>> I found FreeBSD reporting the drive to have 128GB instead of 232GB as
>>> FreeBSD did when the drive was connected via firewire. Searching the
>>> web, I found one reference of someone else having problems with
>>>>128/137GB using the same (latest) bios on this five year old
>>> (Centrino) laptop (Acer TM800).
>>

I don't know how long ago the ATA-6 specification was adopted, but
prior to that ATA-5 had a 128 GB limit on disk size. I suspect your
BIOS is old enough to have adopted that limit. Perhaps if a BIOS
update for your system is available, it will solve your problem. BUT,
my understanding is that after the initial boot, FreeBSD reads the
size directly from the drive, so it seems strange that you are
encountering this problem if the drive itself is correctly reporting
its size.

Anyway, the fundamental answer to your question is "this should not be
happening." The challenge is to figure out where the problem is and
what to do about it.

>>FreeBSD has no such limit, at least not in recent versions (I'm using
>>a 200 GB drive at this moment, and at home I have a system with a 500
>>GB and a 750 GB drive). Your problem is caused either by the BIOS
>
> I never said FreeBSD had a limit. With ddo, it works. (I am on 7.0.)
>
>>lying to it (which is unlikely, because FreeBSD uses the BIOS value
>
> Yes, it is the bios. With ddo, the full disk is available; ddo supposingly
> does nothing but change the bios interrupt handlers.
>
>>only for initial booting), or the hard drive itself lying. Does your
>
> Are you sure about "only for initial booting"? If that was the case, I would
> not understand why it shows "ad0: 238475MB" with ddo and "ad0: 131072MB"
> without. Moreover, I tried writing to a sector beyond 128GB unsuccessfully
> without ddo and successfully with ddo (using dd).
>

I am quite certain, although I don't know the details. Like any modern
operating system (and since before some of them), FreeBSD asks the
drive for its size.

>>drive have a jumper that causes it to report its capacity as 128GB for
>>compatibility with older BIOSes? If so, remove the jumper and try
>>again.
>
> These is no such jumper. With Linux and Windows seeing the correct size
> (without ddo), the drive must report it somehow correctly.
>
> Either your claim that FreeBSD is not relying on the bios is wrong, or I
> understand even less about the interaction of bios, drive, ddo handler, and
> os than I thought I would. (Please, enlighten me, if you know more.)
>

I think it would be informative to do as someone suggested after your
first post, and re-install FreeBSD on the partition from scratch, to
see if it that solves the behavior problems. It could be an artifact
of your transfer method, although I don't have a specific theory to
explain it.

By the way, what version of FreeBSD is on the system? Any chance it is
old enough that it didn't support drives larger than 128 GB (I don't
know how old that would have to be)?  That might include a bug in an
IDE driver that has since been fixed, or an obscure default
configuration option that changes FreeBSD's idea of how to address a
drive.

Another thought is that if you aren't using the FreeBSD loader (MBR),
then your problems may be caused by the loader. You could test this by
installing the FreeBSD disk loader (I think that would be "boot0cfg -B
ad0", but I might not have that right).

Is there any chance the MS-DOS partition table got changed at some
point to tell FreeBSD the partition is smaller than the BSD label says
it is?

> Thanks for your input!

Good luck.

- Bob



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