Linux module for causing a system hard lock-up

limp johnkyr83 at hotmail.com
Tue Jun 14 16:23:40 EDT 2011


> Hi!
>
> I am not sure whether my version works on smp. If it does not, maybe try
> something like this:
>
> #include <linux/stop_machine.h>
>
> int func(void *)
> {
>        while (1) {
>        }
>        return 0;
> }
>
> int init_module(void)
> {
>        stop_machine(func, 0, 0);
>        return 0;
> }
>

Thanks very much for that, it worked great! Would it be possible to give me
a brief explanation on how this achieves the hard lockup (i.e. what does it
actually do that leads to a lockup)?

The first version that you've sent didn't work for me. 

> int init_module(void)
>	unsigned long iflags;
>
>	local_irq_save(iflags);
>	while (1) {
>	}
>	local_irq_restore(iflags);
>
>	return 0;
>}

The fact that my processor has a LAPIC considers it as an SMP (it has 2
logical cores but not 2 physical ones)? It's not a multicore processor
(Intel Celeron M 440) and I haven't configured my kernel with SMP.

Regards,

John K.




More information about the Kernelnewbies mailing list