On 24/05/2012, Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: > On Thu, May 24, 2012 at 01:41:27PM +0530, Sachin Kamat wrote: >> Hi Dmitry, >> >> Thank you for your reply. >> >> >> On 24/05/2012, Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: >> > Hi Sachin, >> > >> > On Thu, May 24, 2012 at 11:20:01AM +0530, Sachin Kamat wrote: >> >> Hi, >> >> >> >> I encountered a kernel crash while integrating Pixcir touchscreen >> >> driver with one of our hardware. The log is attached at the end of the >> >> mail (inline). >> >> >> >> The following ISR code: >> >> >> >> while (!tsdata->exiting) { >> >> pixcir_ts_poscheck(tsdata); >> >> >> >> if (tsdata->chip->attb_read_val()) >> >> break; >> >> >> >> msleep(20); >> >> } >> >> >> >> seems to run until the if condition is false. However, when it exits >> >> the loop (when the condition becomes true), it crashes saying "exiting >> >> task "irq/438-pixcir_" (1011) is an active IRQ thread". >> > >> > It actually crashes earlier, in pixcir_ts_isr() itself. The message is >> > coming from do_exit() when ISR thread dies. Did you porvide >> > attb_read_val implementation? >> >> Yes, i did provide the implementation for it. >> In fact even a simplest implementation where I return a positive >> integer (for testing) results in the above crash. > > Hmm, this is wierd... are you sure you do not discard platform data > after binding to the touchscreen? Yes, you are right. The platform data was getting freed after the binding. It now works fine. Thanks for your help. > > -- > Dmitry > -- With warm regards, Sachin -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html