[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-amd64/48142: i8254 timer stop working during boot - system lockup during boot
The following reply was made to PR port-amd64/48142; it has been noted by GNATS.
From: Wolfgang Stukenbrock <wolfgang.stukenbrock%nagler-company.com@localhost>
Subject: Re: port-amd64/48142: i8254 timer stop working during boot - system
lockup during boot
Date: Thu, 22 Aug 2013 11:52:25 +0200
I've enabled it to see if it will be found or not.
This is the only way known to me to detect "all" suported ISA-hardware
(sensors in most cases) of a motherboard. Even the HW-manuals for many
motherboards don't say anything about the available hardware and the
addresses where they are located.
Of cause, the problem will go away if finsio is disabled.
And of case it is no good idea to have useless parts configured in a
kernel - especialy parts, without any type indication that need to be
accessed in order to find out if they are present or not. (ISA,
But I think it would be very nice to either have a workaround if the
timer has died or at least run into a panic.
It is no good idea that the system silently lock up during boot.
I can't see any warnings about potential problems in the finsio man page
I've just tested "the problem" on an Intel S3000 board and it will also
lockup if finsio is enabled.
So either the 8257 has 16 or more register, or it is common to have
access on multiple addresses for the chip - some adress lines not
decoded to keep the HW tiny... (No manual for 8257 available to me at
the moment to check this ...)
If it would be possible for the finsio-driver to test for this situation
first, it would be a very good idea - and perhaps a warning message
during boot if the mapping problem is detected.
Also a warning/comment in the kernel config file, that the finsio-driver
may blow up something would be nice. This may warn "normal" users that
there are potential problems and they should try deactivating the driver
again if the system runs into problems.
If the problem is (or will be fixed) in next update and/or next release
of finsio-driver, I think you can close this PR.
David Laight wrote:
> The following reply was made to PR port-amd64/48142; it has been noted by
> From: David Laight <david%l8s.co.uk@localhost>
> To: gnats-bugs%NetBSD.org@localhost
> Subject: Re: port-amd64/48142: i8254 timer stop working during boot - system
> lockup during boot
> Date: Thu, 22 Aug 2013 08:30:04 +0100
> On Wed, Aug 21, 2013 at 01:00:01PM +0000,
> Wolfgang.Stukenbrock%nagler-company.com@localhost wrote:
> > >Number: 48142
> > >Category: port-amd64
> > >Synopsis: i8254 timer stop working during boot - system lockup
> during boot
> > The problem is triggered by the finsio driver on port 0x4e,
> > but I'm not shure if it is the fault of this driver or
> > if the timer registers are visible on other ports than 0x40 and
> > 0x43 on this board too.
> Why are you enabling the finsio driver?
> Enabling 'random' ISA drivers will always cause grief, the 'grope'
> code can easily destroy other hardware.
> The finsio grope is very nasty - it does io-writes - so you really shouldn't
> enable it unless you really need it and expect the grope to succeed.
> Restoring the origanl value might help.
> I'd certainly add some debug to read the 8254 timer ports during the
> finsio grop code - so work out exactly when they are clobbered.
> IIRC reads from the timer registers are always ok.
> Might be worth doing byte reads of ports 0x40 through 0x4f just to
> see it the timer registers are aliased.
> David Laight: david%l8s.co.uk@localhost
Main Index |
Thread Index |