From: Marc Kleine-Budde <mkl@pengutronix.de>
To: "Harrington, Sean M." <harrington.234@buckeyemail.osu.edu>,
"linux-can@vger.kernel.org" <linux-can@vger.kernel.org>
Subject: Re: C-Can or Other SocketCAN Issue
Date: Mon, 03 Mar 2014 17:36:15 +0100 [thread overview]
Message-ID: <5314AF7F.3010701@pengutronix.de> (raw)
In-Reply-To: <d634b30117cf40dfb954c723bef01b65@BN1PR01MB071.prod.exchangelabs.com>
[-- Attachment #1: Type: text/plain, Size: 6370 bytes --]
On 03/03/2014 05:26 PM, Harrington, Sean M. wrote:
> I'm having some fairly odd issues with can-utils and SocketCAN and
> could use some help if anyone has a bit of time to spare.
> Specifically, I'm trying to use SocketCAN on a Beaglebone Black to
> read in and write CAN messages to a CAN bus using similar methods to
> how the can-utils' "candump" works. My issues do not seem to occur
> when using the cangen tool to load a bus but instead when I use a
> different method of generating messages and loading the bus (mainly
> a Kvaser Eagle). Although messages are intercepted with no issues for
> a short amount of time, a system crash will then occur soon after
> when using the Beaglebone Black. This crash happens with running
> both the can-utils "candump" tool and when running my personal CAN
> reading software. The issue can usually be replicated easily by
> generating enough messages to fill the entire bus. However, I do not
> think the issue is caused by bus load alone since sometimes
> everything will run well at full bus load and at other times it will
> crash with only half the bus being filled. Using a serial connection,
> I am able to get the following system message before the entire
> Beaglebone freezes up:
>
> [ 864.029581] BUG: soft lockup - CPU#0 stuck for 22s! [main:1119]
> [ 864.036222] BUG: scheduling while atomic: main/1119/0x40010100
> [ 864.045930] Kernel panic - not syncing: softlockup: hung tasks
> [ 864.052066] [<c0013598>] (unwind_backtrace+0x0/0xe0) from [<c061b230>] (panic+0x84/0x1e0)
> [ 864.060643] [<c061b230>] (panic+0x84/0x1e0) from [<c0093200>] (watchdog_timer_fn+0x120/0x164)
> [ 864.069587] [<c0093200>] (watchdog_timer_fn+0x120/0x164) from [<c005cf2c>] (__run_hrtimer+0xec/0x1e4)
> [ 864.079253] [<c005cf2c>] (__run_hrtimer+0xec/0x1e4) from [<c005d960>] (hrtimer_interrupt+0x108/0x25c)
> [ 864.088924] [<c005d960>] (hrtimer_interrupt+0x108/0x25c) from [<c00247c0>] (omap2_gp_timer_interrupt+0x20/0x30)
> [ 864.099501] [<c00247c0>] (omap2_gp_timer_interrupt+0x20/0x30) from [<c0093c20>] (handle_irq_event_percpu+0x60/0x214)
> [ 864.110530] [<c0093c20>] (handle_irq_event_percpu+0x60/0x214) from [<c0093e10>] (handle_irq_event+0x3c/0x5c)
> [ 864.120832] [<c0093e10>] (handle_irq_event+0x3c/0x5c) from [<c0096810>] (handle_level_irq+0xd4/0xec)
> [ 864.130405] [<c0096810>] (handle_level_irq+0xd4/0xec) from [<c0093658>] (generic_handle_irq+0x20/0x30)
> [ 864.140158] [<c0093658>] (generic_handle_irq+0x20/0x30) from [<c000e15c>] (handle_IRQ+0x64/0x8c)
> [ 864.149366] [<c000e15c>] (handle_IRQ+0x64/0x8c) from [<c0008760>] (omap3_intc_handle_irq+0x60/0x74)
> [ 864.158847] [<c0008760>] (omap3_intc_handle_irq+0x60/0x74) from [<c0623280>] (__irq_svc+0x40/0x50)
> [ 864.168230] Exception stack(0xde29fd40 to 0xde29fd88)
> [ 864.173524] fd40: 00008000 00000044 fa1d0000 fa1d00b0 de31d540 00000010 00000022 c099c3e4
> [ 864.182094] fd60: de31d000 c09cb80c c09cd640 c094c0c0 00745a2f de29fd88 bf007014 bf00e018
> [ 864.190658] fd80: 40000113 ffffffff
> [ 864.194320] [<c0623280>] (__irq_svc+0x40/0x50) from [<bf00e018>] (c_can_plat_read_reg_aligned_to_16bit+0x18/0x24 [c_can_platform])
> [ 864.206628] [<bf00e018>] (c_can_plat_read_reg_aligned_to_16bit+0x18/0x24 [c_can_platform]) from [<bf007014>] (c_can_read_reg32+0x14/0x30 [c_can])
> [ 864.220299] [<bf007014>] (c_can_read_reg32+0x14/0x30 [c_can]) from [<bf008158>] (c_can_poll+0x66c/0x818 [c_can])
> [ 864.230970] [<bf008158>] (c_can_poll+0x66c/0x818 [c_can]) from [<c053b780>] (net_rx_action+0x6c/0x1bc)
> [ 864.240727] [<c053b780>] (net_rx_action+0x6c/0x1bc) from [<c0042d30>] (__do_softirq+0xfc/0x22c)
> [ 864.249845] [<c0042d30>] (__do_softirq+0xfc/0x22c) from [<c0043120>] (irq_exit+0x44/0x84)
> [ 864.258417] [<c0043120>] (irq_exit+0x44/0x84) from [<c000e160>] (handle_IRQ+0x68/0x8c)
> [ 864.266715] [<c000e160>] (handle_IRQ+0x68/0x8c) from [<c0008760>] (omap3_intc_handle_irq+0x60/0x74)
> [ 864.276195] [<c0008760>] (omap3_intc_handle_irq+0x60/0x74) from [<c0623280>] (__irq_svc+0x40/0x50)
> [ 864.285578] Exception stack(0xde29fe70 to 0xde29feb8)
> [ 864.290869] fe60: df259010 df259010 04e404e3 00000001
> [ 864.299438] fe80: 60000013 00000000 00000007 00000000 de698407 df259010 de5b8800 a0000013
> [ 864.308006] fea0: 00000c1b de29feb8 c0622f70 c0622f74 60000013 ffffffff
> [ 864.314940] [<c0623280>] (__irq_svc+0x40/0x50) from [<c0622f74>] (_raw_spin_unlock_irqrestore+0x10/0x14)
> [ 864.324877] [<c0622f74>] (_raw_spin_unlock_irqrestore+0x10/0x14) from [<c035a3b4>] (uart_write+0xc8/0xd4)
> [ 864.334906] [<c035a3b4>] (uart_write+0xc8/0xd4) from [<c0344e2c>] (n_tty_write+0x238/0x394)
> [ 864.343660] [<c0344e2c>] (n_tty_write+0x238/0x394) from [<c034236c>] (tty_write+0x184/0x214)
> [ 864.352505] [<c034236c>] (tty_write+0x184/0x214) from [<c00f5c00>] (vfs_write+0xa8/0x178)
> [ 864.361077] [<c00f5c00>] (vfs_write+0xa8/0x178) from [<c00f5ee0>] (sys_write+0x38/0x64)
> [ 864.369466] [<c00f5ee0>] (sys_write+0x38/0x64) from [<c000d880>] (ret_fast_syscall+0x0/0x30)
> [ 864.378309] drm_kms_helper: panic occurred, switching back to text console
>
> I'm thinking this might be a kernel or driver issue but this problem
> reaches far beyond my knowledge. Any feedback would be greatly
> appreciated. I wouldn't mind trying to sort through and fix this
> problem myself if I can get a bit of guidance on what needs to be
> done. I can't be the only one using a Beaglebone Black to do CAN
> work so I must have something set up wrong.
It's probably a driver issue. From the above backtrace it might be the
problem that the driver loops in the c_can_poll() function.
> The Beaglebone Black should be running Ubuntu 13.04. I'm willing to
> rebuild the kernel and install the latest distribution if I can some
> feedback on the proper method to get SocketCAN functional and if it
> would most likely resolve the issue.
Which Kernel version are you using?
Marc
--
Pengutronix e.K. | Marc Kleine-Budde |
Industrial Linux Solutions | Phone: +49-231-2826-924 |
Vertretung West/Dortmund | Fax: +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686 | http://www.pengutronix.de |
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 242 bytes --]
next prev parent reply other threads:[~2014-03-03 16:36 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-03 16:26 C-Can or Other SocketCAN Issue Harrington, Sean M.
2014-03-03 16:36 ` Marc Kleine-Budde [this message]
[not found] ` <4179fe0897d74eccba72d6c9ba63694c@BN1PR01MB071.prod.exchangelabs.com>
2014-03-03 17:31 ` Harrington, Sean M.
2014-03-03 19:16 ` Marc Kleine-Budde
2014-03-03 19:37 ` Oliver Hartkopp
2014-03-03 20:48 ` Harrington, Sean M.
2014-03-04 6:53 ` Oliver Hartkopp
2014-03-05 1:10 ` Harrington, Sean M.
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=5314AF7F.3010701@pengutronix.de \
--to=mkl@pengutronix.de \
--cc=harrington.234@buckeyemail.osu.edu \
--cc=linux-can@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.