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
Thanks for the help and happy new years,
Le 04-12-22, à 03:44, Jan-Benedict Glaw a écrit :
On Wed, 2004-12-22 11:19:06 +0100, moreau francis
wrote in message
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
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().
Jan-Benedict Glaw firstname.lastname@example.org . +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 |