pinpointed: PANIC caused by dequeue_signal() in current Linus

Anton Altaparmakov (aia21@cantab.net)
Mon, 09 Sep 2002 00:21:10 +0100


Hi,

I had a look and the panic actually happens in collect_signal() in here:

static inline int collect_signal(int sig, struct sigpending *list,
siginfo_t *info)
{
if (sigismember(&list->signal, sig)) {
/* Collect the siginfo appropriate to this signal. */
struct sigqueue *q, **pp;
pp = &list->head;
while ((q = *pp) != NULL) {
q becomes 0x5a5a5a5a ^^^^^^^^^
if (q->info.si_signo == sig)
0x5a5a5a5a is dereferenced ^^^^^^^^^^^^^^^^
goto found_it;
pp = &q->next;
}

Hope this helps.

Best regards,

Anton

-- 
   "I've not lost my mind. It's backed up on tape somewhere." - Unknown
-- 
Anton Altaparmakov <aia21 at cantab.net> (replace at with @)
Linux NTFS Maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/