Re: [PATCH REPOST] alpha: Replace bogus in_interrupt()

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

 



On Sat, 14 Nov 2020 11:05:08 +0300 Serge Belyshev <belyshev@xxxxxxxxxxxxxxxxx> wrote:

> Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> writes:
> 
> > On Fri, 13 Nov 2020 14:58:32 +0100 Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> wrote:
> >
> >> From: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> >> 
> >> in_interrupt() is true for a variety of things including bottom half
> >> disabled regions. Deducing hard interrupt context from it is dubious at
> >> best.
> >> 
> >> Use in_irq() which is true if called in hard interrupt context. Otherwise
> >> calling irq_exit() would do more harm than good.
> >> 
> >
> > Gee, how to test it.  Does anyone run current kernels on alpha?
> 
> Hold my beer:
> 
> --- a/arch/alpha/kernel/process.c
> +++ b/arch/alpha/kernel/process.c
> @@ -134,8 +134,10 @@ common_shutdown_1(void *generic_ptr)
>  #ifdef CONFIG_DUMMY_CONSOLE
>                 /* If we've gotten here after SysRq-b, leave interrupt
>                    context before taking over the console. */
> -               if (in_irq())
> +               if (in_irq()) {
> +                       printk ("in_irq(): true\n");
>                         irq_exit();
> +               }
>                 /* This has the effect of resetting the VGA video origin.  */
>                 console_lock();
>                 do_take_over_console(&dummy_con, 0, MAX_NR_CONSOLES-1, 1);
> 
> 
> and then sysrq-b over serial console:
> 
> [   56.531250] sysrq: Resetting
> [   56.531250] in_irq(): true
> [   56.531250] Console: switching to colour dummy device 80x25
> 
> halted CPU 0
> 
> halt code = 5
> HALT instruction executed
> PC = fffffc0000310040
> Resetting I/O buses...
> >>>
> 
> Tested-by: Serge Belyshev <belyshev@xxxxxxxxxxxxxxxxx>

Thanks ;)

Here, have that beer back - I kept some for you.




[Index of Archives]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux