LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software > Linux - Kernel
User Name
Password
Linux - Kernel This forum is for all discussion relating to the Linux kernel.

Notices

Reply
 
LinkBack Search this Thread
Old 05-09-2012, 09:32 PM   #1
rbhsrh
LQ Newbie
 
Registered: Jan 2012
Posts: 4

Rep: Reputation: Disabled
getting kernel OOPS in SPI driver


Hi,

I am getting the OOPS in the SPI driver. In the driver, work queue (create_singlethread_workqueue) is used to transfer the data. When the SPI interface closed,that time below kernel OOPs is happening. I am assuming this is because of pending works.
So, I tried to cancel the pending work in the SPI close function by using the function cancel_delayed_work, but still not working.
Can anyone help me to solve this

Please find the log below.


kernel BUG at kernel/kernel/workqueue.c:1037!
[ 294.024018] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[ 294.032270] pgd = c0004000
[ 294.035067] [00000000] *pgd=00000000
[ 294.038828] Internal error: Oops: 817 [#1] PREEMPT SMP

[ 294.044130] last sysfs file: /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
[ 294.052118] Modules linked in: bthid
[ 294.055982] CPU: 1 Tainted: G W (2.6.39.4-dirty #3)
[ 294.062085] PC is at __bug+0x18/0x24
[ 294.065830] LR is at __bug+0x14/0x24
[ 294.069493] pc : [<c0049f1c>] lr : [<c0049f18>] psr: 600001d3
[ 294.069498] sp : cfe27e68 ip : 0000000c fp : cfe1b830
.
.
.
[ 295.100467] [<c0049f1c>] (__bug+0x18/0x24) from [<c00943e0>] (__queue_work+0x27c/0x360)
[ 295.108642] [<c00943e0>] (__queue_work+0x27c/0x360) from [<c0094524>] (queue_work_on+0x38/0x40)
[ 295.117430] [<c0094524>] (queue_work_on+0x38/0x40) from [<c0095e94>] (queue_work+0x2c/0x54)
[ 295.125955] [<c0095e94>] (queue_work+0x2c/0x54) from [<c029f454>] (my_spi_tx_rx_data+0x200/0x26c)
 
Old 05-09-2012, 11:38 PM   #2
bsat
Member
 
Registered: Feb 2009
Posts: 346

Rep: Reputation: 72
The message says it is a NULL dereference error,
Check the arguments that are being passed to the create_singlethread_worqueue.
 
Old 05-09-2012, 11:51 PM   #3
rbhsrh
LQ Newbie
 
Registered: Jan 2012
Posts: 4

Original Poster
Rep: Reputation: Disabled
getting kernel OOPS in SPI driver

Quote:
Originally Posted by bsat View Post
The message says it is a NULL dereference error,
Check the arguments that are being passed to the create_singlethread_worqueue.



Thanks for your response.
Before the kernel OOPS, the large data has been transferred/received through SPI. Getting this OOPS when SPI interface is closed.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can i register a ssc driver (a serial interface device) to be a spi driver ? 5883 Programming 0 03-04-2012 06:14 PM
Problems with SPI driver and spidev asmeti Linux - Software 2 11-11-2011 09:08 PM
Communication with SPI driver Mactub Linux - Software 2 03-16-2010 02:17 AM
kernel oops or nvidia driver problem ? SleepLess Linux - General 6 04-22-2004 08:32 PM


All times are GMT -5. The time now is 02:46 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration