MINIX 3 Hard drive issues

662 views
Skip to first unread message

Lloyd J. Atkinson

unread,
Jun 1, 2010, 7:09:34 AM6/1/10
to minix3
Hello,
While trying to install MINIX 3 on a machine I have only managed to
get part way through the install. It gets as far as partitioning the
hard drive, but will then always have this error (this is exactly what
it says on screen):

Probing for disk. This may take a short while..AT-D0: timeout on
command 0xc8
Panic in AT-D0: DMA buffer too small
SYSTEM, reply to 35554 failed: -109
fs: dead driver 35554
FS: remounting dev 3/8
Warning: couldn't verify opencount, continuing
.......
Found no drives - can't partition.
Autopart tool failed. Trying again.
AT-D0: multiword DMA modes supported: 0 1 2
AT-D0: multiword DMA mode selected: 2
AT-D0: Ultra DMA modes supported: 0 1 2 3 4
/dev/ is not a block device.

I am using a machine with a AMD-K6 processor.

I have tried disabling DMA in the BIOS to see if it would make any
difference, but the only difference it makes is that with DMA disabled
it gets as far as showing what partitions already exist on the hard
drive, when I select a parition to use, I get the same error messages.
I have also tried using different hard drives in the machine but this
does not seem to make any difference.

Is there anything I can do to install MINIX 3 on the hard drive?

Thanks,
Lloyd

Antoine LECA

unread,
Jun 1, 2010, 7:39:18 AM6/1/10
to min...@googlegroups.com
Lloyd J. Atkinson wrote:
> While trying to install MINIX 3 on a machine I have only managed to
> get part way through the install.
<...>

> I am using a machine with a AMD-K6 processor.

Hmmm. For information only, can you tell us the version you are trying
to install? Thanks in advance.


> I have tried disabling DMA in the BIOS to see if it would make any
> difference,

It won't (but see below). The DMA setting in the BIOS affects only the
BIOS :^) and Minix normally uses its own setting; so while you might
enable or disable DMA use with MINIX, it won't be done with BIOS.


> Is there anything I can do to install MINIX 3 on the hard drive?

Try the "Universal" a.k.a. "bios_wini" driver, instead of "at_wini". At
the boot monitor prompt (typing Esc to stop the countdown), enter
bios_wini=yes
menu
and retry to install that way. Of course you have to redo it while
rebooting.
If it works for you, you can force this setting in the boot monitor
installed on your harddisk: after installation, when you reboot, after
stopping the countdown, enter
bios_wini=yes
save
menu


Antoine

Lloyd J. Atkinson

unread,
Jun 1, 2010, 8:36:16 AM6/1/10
to minix3
Hello,

Thanks for the reply :)

The version.txt file on the CD says: "This is Minix version 3.1.2a
prepared Thu May 4 01:40:40 CEST 2006."

(Hmm, thinking about it, that seems pretty old?)

I tried "bios_wini=yes" and then "menu". But it says CD not found.

Thanks,
Lloyd

Antoine LECA

unread,
Jun 1, 2010, 9:26:03 AM6/1/10
to min...@googlegroups.com
Lloyd J. Atkinson wrote:
> The version.txt file on the CD says: "This is Minix version 3.1.2a
> prepared Thu May 4 01:40:40 CEST 2006."
>
> (Hmm, thinking about it, that seems pretty old?)

It is old, but OTOH it is a stable version, with less of the problematic
stuff (like VM) which is currently under heavy development.


>>> I am using a machine with a AMD-K6 processor.

Can you give a bit more details about your hardware (particularly around
the southbridge and the "chipset")? And how the drives are connected to
the motherboard.


Anyway, as I said it is possible to disable DMA use in Minix' at_bios
driver: instead to using bios_wini, you should try
ata_no_dma=1
menu

(and similarly, doing it on every reboot, and using save to make it
permanent on the disk when you have it installed.)

Antoine

Lloyd J. Atkinson

unread,
Jun 1, 2010, 10:36:22 AM6/1/10
to minix3
Well, I believe the chipset is Via VT8501 (http://www.via.com.tw/en/
products/apollo/mvp4.jsp).

The hard drive is set as the primary master and the CD drive is set as
the primary slave.

Thanks! It has now managed to install after I followed your suggestion
of disabling DMA :-)
However, now that is has installed and I have rebooted it, the machine
will not boot from the hard drive, which I assume is because it is
still using DMA? So my guess is that I need to boot from the CD and
edit a file that the boot monitor reads the settings from?

Thanks
Lloyd

Lloyd J. Atkinson

unread,
Jun 1, 2010, 10:40:23 AM6/1/10
to minix3
P.S. By the machine will not boot it, I mean that not even the boot
monitor appears, it just hangs.

Antoine LECA

unread,
Jun 1, 2010, 11:55:24 AM6/1/10
to min...@googlegroups.com
Lloyd J. Atkinson wrote:
> Well, I believe the chipset is Via VT8501
> (http://www.via.com.tw/en/products/apollo/mvp4.jsp).

Information to be passed to the hardware specialists (and meanwhile,
Google's memory will keep it here ;-))

> The hard drive is set as the primary master and the CD drive is set as
> the primary slave.

I remember there were problems years ago (which is congruent with this
hardware) when ATA and ATAPI commands were mixed on the same channel
while using DMA. Perhaps it is the case which is hurting you.
Unfortunately, I assume there is no way to test otherwise, since
disconnecting the CD will makes your computer unable to install from CD


> Thanks! It has now managed to install after I followed your suggestion
> of disabling DMA :-)

You are welcome.


> However, now that is has installed and I have rebooted it, the machine
> will not boot from the hard drive, which I assume is because it is
> still using DMA?

I do not believe so. DMA (or the opposite, PIO) is just a way to use the
disk driver; each driver does it its own way; you are using two drivers
(first the BIOS, in order to load the boot monitor and then to load the
OS proper; second Minix acting on its own), but there is no real reason
they have to use the same protocol.

What might be a problem could be that for whatever hardware reason DMA
does not work (bad chip, bad cable, bad mood between the two devices as
I said above, etc); in this case your only solution is to stick to
no-dma for both BIOS booting _and_ Minix.


> P.S. By the machine will not boot it, I mean that not even the boot
> monitor appears, it just hangs.

Well, the most probable cause by far is because of your multiple tries,
Minix setup did not properly installed the booting infrastructure
(I was bitten by this one fairly recently ;-) )


> So my guess is that I need to boot from the CD and
> edit a file that the boot monitor reads the settings from?

Quite. My guess is that the problem is not with the "file" where the
settings are (in fact it is not a file, rather 512 bytes of storage in
the second sector of the booting file system, between the boot sector
and the superblock), but rather with either the masterboot or the
partition boot code.

Please take some time to understand what is happenning while booting
(http://wiki.minix3.org/en/DevelopersGuide/FromPowerOnToLoginPrompt has
a short introduction, http://www.os-forum.com/minix/boot/ is good and
specific to Minix, and much more details are available on the web); your
main tool will be installboot, particularly -m and -d
http://www.minix3.org/manpages/ man8/installboot.8.html; as it read,
make sure you understand it before proceeding.

-m installs the masterboot code: it just jumps to the code in the active
(sub)partition; in a normal Minix setup, it might be installed twice:
once to jump from /dev/c0d0 to /dev/c0d0p0, and the second to jump from
/dev/c0d0p0 to /dev/c0d0p0s0; from the CD prompt, it will look like
installboot -m /dev/c0d0 /usr/mdec/masterboot
installboot -m /dev/c0d0p0 /usr/mdec/masterboot
Warning: NOTE THIS WILL ERASE ANY MBR CODE YOU HAVE ON THE DISK.
Also make sure that both partition (p0 and s0 inside p0) are active, or
it will not work.

-d installs the bootblock, which is loading the boot monitor (in fact,
it also install the boot monitor as well):
installboot -d /dev/c0d0p0s0 /usr/mdec/bootblock /boot/boot

After that, booting should be restored: do sync then shutdown then force
the reboot without CD, you should end at the boot monitor prompt.


Antoine

Lloyd J. Atkinson

unread,
Jun 1, 2010, 7:04:55 PM6/1/10
to minix3
I read through the links you provided, thank you :-)

I have managed to run the first two steps:
installboot -m /dev/c0d0 /usr/mdec/masterboot
installboot -m /dev/c0d0p0 /usr/mdec/masterboot

And I encountered no errors with either of these commands, so thank
you once again! However, I have not managed to successfully run the
third command, when I type: "installboot -d /dev/c0d0p0s0 /usr/mdec/
bootblock /boot/boot" it simply says: "installboot: /usr/mdec/
bootlock: No such file or directory".

Thanks
Lloyd

Antoine LECA

unread,
Jun 2, 2010, 3:30:34 AM6/2/10
to min...@googlegroups.com
Lloyd J. Atkinson wrote:
> I have not managed to successfully run the
> third command, when I type: "installboot -d /dev/c0d0p0s0 /usr/mdec/
> bootblock /boot/boot" it simply says: "installboot: /usr/mdec/
^

> bootlock: No such file or directory".
^
Is it just a typo?

If not, check what is within that directory /usr/mdec.
The best way to avoid typing problems is to use filename completion:
after typing /usr/mdec/bo, hit the tabulation key, and the shell should
complete the filename automatically, without possibility for error.


Antoine

Lloyd J. Atkinson

unread,
Jun 2, 2010, 6:10:22 AM6/2/10
to minix3
Oops, yes it was a typo :-)

The contents of /usr/mdec are: boot, bootblock, jumpboot, masterboot

I ran the third command again, but the machine still hangs when
booting from the hard drive.

Thanks
Lloyd

Lloyd J. Atkinson

unread,
Jun 2, 2010, 8:52:36 AM6/2/10
to minix3
PS: To confirm that the bootblock code is being written to the first
512 bytes of the hard drive, I did a hex dump of the first 512 bytes
of the hard drive and then compared that data with the first 512 bytes
of a hard drive with an already working MINIX installation on it. The
data was exactly the same, so for some reason it just will not boot on
this machine.

Thanks
Lloyd

Antoine LECA

unread,
Jun 2, 2010, 10:22:19 AM6/2/10
to min...@googlegroups.com

Hmmm, if the datas are the same for the whole 512-byte sector, it means
the informations about the partitions are the same... (and also there
are no Windows NT signature which would randomize somewhat the bytes at
offsets 01b8-01bb.)

You should also double-check that the first sector of the active
partition (corresponding to /dev/c0d0p0, assuming p0 is active) also is
correct, and then that the content of the first sector of the root
filesystem (corresponding to /dev/c0d0p0s0) has the code from
/usr/mdec/bootblock. Also, you should double check that the s0
subpartition is indeed active.
Assuming both disks are partionned the same way as said above, this
boils down to check that in addition to the MBR sector, the first
sectors of the Minix partitions are also identical on both disks.


Note that the next sector (which is normally the first sector of the
subpartition, ie the first sector of the root file system) could be
different, since it records the position on disk of /boot/boot:
depending on how the filesystem is actually written, the physical
position of a file could be different between two systems which
otherwise look identical.


Antoine

Lloyd J. Atkinson

unread,
Jun 2, 2010, 12:00:30 PM6/2/10
to minix3
I decided to try plugging the hard drive into another machine, just to
see if it will boot, and it did, it seems to be a fully working MINIX
installation on the hard drive. So this means that the data on the
hard drive must be OK if it can boot...

This means that it the original machine I tried to boot it on must
have some odd problem with booting, maybe it is an issue with the
chipset like you said?

Thanks
Lloyd

Lloyd J. Atkinson

unread,
Jun 2, 2010, 12:01:51 PM6/2/10
to minix3
> This means that it the original machine I tried to boot it on must
> have some odd problem with booting, maybe it is an issue with the
> chipset like you said?


PS: Either that or some odd problem to do with the motherboard or the
hard drive.

Ben Gras

unread,
Jun 2, 2010, 6:28:10 PM6/2/10
to minix3
About at_wini with DMA: I think that that 'DMA buffer' error (which
has multiple causes, but..) has been fixed in since-3.1.2a versions of
minix. How about trying a recent development snapshot (see
http://www.minix3.org/download/)? If you still have problems, make
sure the drive is in IDE mode in BIOS. These together cover the major
cases of disk problems.

About booting: Minix can clearly talk to the drive (without dma), so
it seems the motherboard etc is fine. Although it doesn't explain the
fact that it boots on another machine, your observation (doesn't
display boot monitor) suggest that e.g. the MBR wasn't installed with
proper bootcode; Minix won't do that if it thinks there's already a
valid MBR there. Or perhaps that boot monitor does something your
machine doesn't like.

I'd suggest zeroing the drive (there was nothing else on it right?)
using "cp /dev/zero /dev/c0d0" (let it run for a second and press ^C
to abort it, you just have to zero the first sector, but remember,
this will effectively wipe the whole disk so make sure there's no disk
in the machine of which you want to keep the contents), and then
reinstalling with a recent version. That'll give you a new MBR with
bootcode and an active-marked Minix partition and will solve most
booting problems that look like this.

Lloyd J. Atkinson

unread,
Jun 2, 2010, 9:01:04 PM6/2/10
to minix3
I will try wiping the hard drive and then reinstalling it.


Thank you for all the help and suggestions from both of you :-)

Lloyd

Antoine LECA

unread,
Jun 3, 2010, 3:37:49 AM6/3/10
to min...@googlegroups.com
Lloyd J. Atkinson wrote:
> I decided to try plugging the hard drive into another machine, just to
> see if it will boot, and it did,

Well, does the faulty machine actually boots that harddisk?

I mean, is it enable in the BIOS? (no intervening extension card like
SSCI, intervening disk, incorrect geometry, inexistant floppy etc.)
Also, perhaps you can try the reverse way, ie put the disk of the
known-working station in the suspect one, and give it a try? As long as
you stop at the boot monitor, Minix does not write anything to the disk,
so it is completely safe.


Antoine

Reply all
Reply to author
Forward
0 new messages