From: Wolfgang Grandegger <wg@domain.hid>
To: Jan Kiszka <jan.kiszka@domain.hid>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] RT-Socket-CAN bus error handling (was CAN errors and real-time behaviour (IRQ raise forever and may lock system))
Date: Sun, 18 Mar 2007 12:33:35 +0100 [thread overview]
Message-ID: <45FD238F.2050009@domain.hid> (raw)
In-Reply-To: <45FD12D4.3070901@domain.hid>
Jan Kiszka wrote:
> Wolfgang Grandegger wrote:
>> Back to our preferred solution 1. Attached is a patch for review
>> including some other fixes and suggestions accumulated over time:
>>
>> * ksrc/drivers/can/*: To avoid unnecessary bus error interrupt
>> flooding, the option CONFIG_XENO_DRIVERS_CAN_BUS_ERR now allows to
>> enable bus error interrupts "on demand" only if an application is
>> interested in such errors. It is automatically selected for CAN
>> controllers supporting bus error interrupts like the SJA1000.
>
> Jumping into this more or less blindly: Could you explain to me (as well
> as the poor CAN users...) what the downsides of enabling
> CONFIG_XENO_DRIVERS_CAN_BUS_ERR are? If there isn't anything
> significant, I would strongly vote for keeping the switch forest as
> small as possible.
The user has not to care and cannot even enable this option. It is auto
selected for SJA1000. The purpose of this config option is to suppress
correlated code for builds without SJA1000. About the functionality: as
you know, on the SJA1000 the bus error interrupt can result in high
error interrupt rates and even hang the system on slow processors. Just
unplugging the CAN cable can cause such interrupt flooding. This problem
popped up again recently and Sebastian proposed:
> Last summer we had a discussion about the BEI issue on the
> socketcan-ML. Two additional handling policies popped up:
> 1. The interface could restart itself after an amount of BEIs, thus
> taking responsibility from the user application.
> 2. The BEI could be completely disabled if no one is interested in
> this ype of error frame.
As 2. is also my preferred solution, I have implemented it. The only
downside is that you do not see the error counter increasing when
/proc/rtcan/devices is inspected. We also discussed 1., but
RT-Socket-CAN does not restart the CAN controller by purpose and just
stoppping it requires user intervention.
Wolfgang.
next prev parent reply other threads:[~2007-03-18 11:33 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-03 14:09 [Xenomai-help] CAN errors and real-time behaviour roland Tollenaar
2007-03-05 8:49 ` Stéphane ANCELOT
2007-03-05 9:26 ` Roland Tollenaar
2007-03-05 10:39 ` [Xenomai-help] CAN errors and real-time behaviour (IRQ raise forever and may lock system) Stéphane ANCELOT
2007-03-05 11:26 ` Sebastian Smolorz
2007-03-05 11:42 ` Roland Tollenaar
2007-03-05 12:01 ` Sebastian Smolorz
2007-03-05 12:16 ` Roland Tollenaar
2007-03-05 12:48 ` Sebastian Smolorz
2007-03-05 13:13 ` Roland Tollenaar
2007-03-05 14:57 ` Stéphane ANCELOT
2007-03-05 14:42 ` Sebastian Smolorz
2007-03-05 17:02 ` Stéphane ANCELOT
2007-03-06 9:36 ` Sebastian Smolorz
2007-03-10 20:53 ` Wolfgang Grandegger
2007-03-14 11:38 ` [Xenomai-help] RT-Socket-CAN bus error handling (was CAN errors and real-time behaviour (IRQ raise forever and may lock system)) Wolfgang Grandegger
2007-03-14 12:51 ` Sebastian Smolorz
2007-03-14 13:18 ` Wolfgang Grandegger
2007-03-14 13:24 ` Sebastian Smolorz
2007-03-17 11:56 ` Wolfgang Grandegger
2007-03-18 10:22 ` Jan Kiszka
2007-03-18 11:33 ` Wolfgang Grandegger [this message]
2007-03-18 20:59 ` Jan Kiszka
2007-03-19 8:21 ` Sebastian Smolorz
2007-03-19 8:50 ` Sebastian Smolorz
2007-03-19 11:35 ` Wolfgang Grandegger
2007-03-19 11:46 ` Sebastian Smolorz
2007-03-19 13:05 ` Jan Kiszka
2007-03-19 20:44 ` Wolfgang Grandegger
2007-03-19 21:19 ` Wolfgang Grandegger
2007-03-19 22:25 ` Jan Kiszka
2007-03-20 6:53 ` Wolfgang Grandegger
2007-03-19 8:54 ` Wolfgang Grandegger
2007-03-19 16:48 ` Stéphane ANCELOT
2007-03-19 16:56 ` Sebastian Smolorz
2007-03-19 17:33 ` Jan Kiszka
2007-03-19 8:49 ` Stéphane ANCELOT
2007-03-19 8:30 ` Wolfgang Grandegger
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=45FD238F.2050009@domain.hid \
--to=wg@domain.hid \
--cc=jan.kiszka@domain.hid \
--cc=xenomai@xenomai.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.