lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20061130151405.d7e2dd08.randy.dunlap@oracle.com>
Date:	Thu, 30 Nov 2006 15:14:05 -0800
From:	Randy Dunlap <randy.dunlap@...cle.com>
To:	Andrew Morton <akpm@...l.org>
Cc:	Ingo Molnar <mingo@...hat.com>,
	lkml <linux-kernel@...r.kernel.org>, ak@...e.de
Subject: Re: [PATCH -mm] x86_64 UP needs smp_call_function_single

On Thu, 30 Nov 2006 14:27:19 -0800 Andrew Morton wrote:

> On Thu, 30 Nov 2006 14:11:40 -0800
> Randy Dunlap <randy.dunlap@...cle.com> wrote:
> 
> > On Thu, 30 Nov 2006 08:00:00 +0100 Ingo Molnar wrote:
> > 
> > > On Wed, 2006-11-29 at 17:45 -0800, Andrew Morton wrote:
> > > > No, I think this patch is right - the declaration of the CONFIG_SMP
> > > > smp_call_function_single() is in linux/smp.h so the !CONFIG_SMP
> > > > declaration
> > > > or definition should be there too.
> > > > 
> > > > It's still buggy though.  It should disable local interrupts around
> > > > the
> > > > call to match the SMP version.  I'll fix that separately. 
> > > 
> > > hm, didnt i send an updated patch for that already? See the patch below,
> > > from many days ago. I sent it after the tsc-sync-rewrite patch.
> > 
> > Hi Ingo,
> > 
> > Has there been a patch for this one?  (UP again, not SMP)
> > 
> > drivers/input/ff-memless.c:384: warning: implicit declaration of function 'local_bh_disable'
> > drivers/input/ff-memless.c:393: warning: implicit declaration of function 'local_bh_enable'
> > 
> > Thanks,
> > ---
> > ~Randy
> > config:  http://oss.oracle.com/~rdunlap/configs/config-input-up-header
> 
> eww..  I guess linux/spinlock.h should really include linux/interrupt.h. 
> But interrupt.h includes stuff like sched.h which will want spinlock.h.
> 
> This, maybe?

Ack.  Tested on UP and SMP x86_64.

>  include/linux/bottom_half.h |    5 +++++
>  include/linux/interrupt.h   |    7 +------
>  include/linux/spinlock.h    |    1 +
>  3 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff -puN /dev/null include/linux/bottom_half.h
> --- /dev/null
> +++ a/include/linux/bottom_half.h
> @@ -0,0 +1,5 @@
> +extern void local_bh_disable(void);
> +extern void __local_bh_enable(void);
> +extern void _local_bh_enable(void);
> +extern void local_bh_enable(void);
> +extern void local_bh_enable_ip(unsigned long ip);
> diff -puN include/linux/interrupt.h~add-bottom_half.h include/linux/interrupt.h
> --- a/include/linux/interrupt.h~add-bottom_half.h
> +++ a/include/linux/interrupt.h
> @@ -11,6 +11,7 @@
>  #include <linux/hardirq.h>
>  #include <linux/sched.h>
>  #include <linux/irqflags.h>
> +#include <linux/bottom_half.h>
>  #include <asm/atomic.h>
>  #include <asm/ptrace.h>
>  #include <asm/system.h>
> @@ -217,12 +218,6 @@ static inline void __deprecated save_and
>  #define save_and_cli(x)	save_and_cli(&x)
>  #endif /* CONFIG_SMP */
>  
> -extern void local_bh_disable(void);
> -extern void __local_bh_enable(void);
> -extern void _local_bh_enable(void);
> -extern void local_bh_enable(void);
> -extern void local_bh_enable_ip(unsigned long ip);
> -
>  /* PLEASE, avoid to allocate new softirqs, if you need not _really_ high
>     frequency threaded job scheduling. For almost all the purposes
>     tasklets are more than enough. F.e. all serial device BHs et
> diff -puN include/linux/spinlock.h~add-bottom_half.h include/linux/spinlock.h
> --- a/include/linux/spinlock.h~add-bottom_half.h
> +++ a/include/linux/spinlock.h
> @@ -52,6 +52,7 @@
>  #include <linux/thread_info.h>
>  #include <linux/kernel.h>
>  #include <linux/stringify.h>
> +#include <linux/bottom_half.h>
>  
>  #include <asm/system.h>

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ