NetBSD-Bugs archive

[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>
To: gnats-bugs%NetBSD.org@localhost
Cc: port-amd64-maintainer%NetBSD.org@localhost, 
gnats-admin%NetBSD.org@localhost,
        netbsd-bugs%NetBSD.org@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

 Hi,
 
 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, 
 VMEbus-devices, ...)
 
 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 
 too.
 
 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.
 
 best regards
 
 W. Stukenbrock
 
 David Laight wrote:
 
 > The following reply was made to PR port-amd64/48142; it has been noted by 
 > GNATS.
 > 
 > From: David Laight <david%l8s.co.uk@localhost>
 > To: gnats-bugs%NetBSD.org@localhost
 > Cc: 
 > 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
 >  
 >  -- 
 >  David Laight: david%l8s.co.uk@localhost
 >  
 > 
 > 
 
 


Home | Main Index | Thread Index | Old Index