Re: Problem registering interrupt

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



So the crash is happening because the handler pointer is null in the irq_desc for interrupt 49. Is there something that I was supposed to do to setup that handler before registering my interrupt? This was working fine under 2.4, is it a change in 2.6 or just in the alchemy port specifically?

Thanks for the help and happy new years,
Sébastien


Le 04-12-22, à 03:44, Jan-Benedict Glaw a écrit :

On Wed, 2004-12-22 11:19:06 +0100, moreau francis <francis_moreau2000@xxxxxxxx>
wrote in message <20041222101906.27137.qmail@xxxxxxxxxxxxxxxxxxxxxxxxxxx>:

CPU 0 Unable to handle kernel paging request at
virtual address 00000004, epc =4

Well it suggests me that your driver is trying to access a really nasty pointer: 0x00000004... How did you get this address ? From user space ?

Accesses to nearly NULL are normally structure accesses where a pointer to a given struct was supplied as a NULL pointer.

So an access to 0x00000004 is most probably an access to the second
element of a struct, given/expected that all fields are usually 4-byte
aligned.

From looking at ./kernel/irq/manage.c:setup_irq(), I guess that you
supply NULL as the "struct irqaction *", which is the 2nd argument of
setup_irq(). It's 2nd structure element is "flags" then... This is the
first thing accessed by the "new" pointer in setup_irq().

MfG, JBG

--
Jan-Benedict Glaw jbglaw@xxxxxxxxxx . +49-172-7608481 _ O _
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux