*(int*)0 = 0 & variations

Manfred Spraul (masp0008@stud.uni-sb.de)
Tue, 22 Jun 1999 23:16:47 +0200


I think that Linux needs some debugging aid functions & macros
(the windows 2000 driver verifier just found a missing -EMEM handler in my
NT driver, IMHO there must be more debugging support (on an CONFIG_?? basis)
in the main kernel) :

* show_stack():
print the call chain.
currently, either nothing is printed ("alloc_skb called nonatomically"), or
an oops is forced (kmem_free()).

* assert()

* a central dbg_printk().

* test macros for ownership of spinlocks/semaphores/kernel_flag.
They don't need to be reliable, they should catch missing down() and
lock_kernel() calls, so even 10 % detection would ok.

--
    Manfred
P.S.: I'm not sure, but I think that
do_lo_request()
->create_missing_block()
->file->f_op->write();
-> ext2_file_write()
could be running without the kernel lock.

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