All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Pringle <chris.pringle@miranda.com>
To: linux-kernel@vger.kernel.org
Subject: Re: Serial driver 8250 hangs the kernel with the VIA Nehemiah...
Date: Fri, 11 Aug 2006 12:08:20 +0100	[thread overview]
Message-ID: <44DC6524.4000401@miranda.com> (raw)

Alan Cox wrote:
> Ar Gwe, 2006-08-11 am 09:52 +0100, ysgrifennodd Chris Pringle:
>  
>> on it. However, when the port is receiving a lot of data, it has the
>> tendency to either get corrupted data, or to crash the kernel.
>>     
>
> What do the crash traces look like
>   

Sorry - the kernel hangs, not crashes. There is no output whatsoever 
after the hang - SysRq doesn't work, but Numlock does.
>  
>> The "inb" as it is will sometimes return bad data - I'm guessing this
>> is due to ISA bus instability... Anyway I changed it to "inb_p" which
>> cured the corruption problem, but has introduced another issue - it
>> hangs the kernel.
>>     
>
> Maybe you need to have a chat with your hardware guys. Certainly if
> inb_p makes a difference you've got hardware not software side problems.
>   
Perhaps - I'm in discussion with them at the moment, but neither our, 
nor their department have managed to come up with an answer yet.
>  
>> Interestingly, it only hangs on systems with a VIA Nehemiah CPU, the
>> Intel Celerons seem to work fine. Could this be a problem with writing
>> to that dreaded port 0x080 within inb_p?
>>     
>
> Unlikely as it would affect both. More likely would be that the ISA bus
> clock is generated off the PCI bus clock and you have one of the
> multipliers wrong or too high for the board.
>   
Thats interesting, but wouldn't this produce strange side affects for 
the 2.4 kernel as well? 2.4 works fine on both VIAs and Celerons.
>  
>> it only occur on the VIA chip and not the Celeron? I don't think the
>> problem is there when the low latency patches are not applied - so I'm
>> thinking it's probably a timing problem of some sort.
>>     
>
> That bit is interesting. Something really off the wall to try - disable
> interrupts around the inb_p(), especially if you are using pre-emption
> and let me know what happens.
>
> Alan
>
> -
> To unsubscribe from this list: send the line "unsubscribe 
> linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>   
I'll give the interrupt disabling a go...

Thanks Alan.
Chris.

-- 

______________________________
Chris Pringle
Software Engineer

Miranda Technologies Ltd.
Hithercroft Road
Wallingford
Oxfordshire OX10 9DG
UK

Tel. +44 1491 820206
Fax. +44 1491 820001
www.miranda.com


             reply	other threads:[~2006-08-11 11:08 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-11 11:08 Chris Pringle [this message]
2006-08-11 12:02 ` Serial driver 8250 hangs the kernel with the VIA Nehemiah Alan Cox
2006-08-11 15:45   ` Chris Pringle
  -- strict thread matches above, loose matches on Subject: below --
2006-08-11  8:52 Chris Pringle
2006-08-11 10:36 ` Alan Cox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44DC6524.4000401@miranda.com \
    --to=chris.pringle@miranda.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.