linux-hexagon.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled
       [not found] <1337983476-22081-1-git-send-email-richard@nod.at>
@ 2012-05-25 22:04 ` Richard Weinberger
  2012-06-01 17:54   ` Richard Kuo
  2012-06-01 19:02   ` Richard Kuo
  2012-05-25 22:04 ` [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal() Richard Weinberger
  1 sibling, 2 replies; 8+ messages in thread
From: Richard Weinberger @ 2012-05-25 22:04 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arch, Richard Weinberger, Richard Kuo, linux-hexagon

get_signal_to_deliver() calls try_to_freeze() which might sleep.

Cc: Richard Kuo <rkuo@codeaurora.org>
Cc: linux-hexagon@vger.kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
---
 arch/hexagon/kernel/signal.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
index 434866e..8403bfd 100644
--- a/arch/hexagon/kernel/signal.c
+++ b/arch/hexagon/kernel/signal.c
@@ -22,6 +22,7 @@
 #include <linux/syscalls.h>
 #include <linux/freezer.h>
 #include <linux/tracehook.h>
+#include <linux/irqflags.h>
 #include <asm/registers.h>
 #include <asm/thread_info.h>
 #include <asm/unistd.h>
@@ -267,6 +268,8 @@ no_restart:
 
 void do_notify_resume(struct pt_regs *regs, unsigned long thread_info_flags)
 {
+	local_irq_enable();
+
 	if (thread_info_flags & _TIF_SIGPENDING)
 		do_signal(regs);
 
-- 
1.7.7.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal()
       [not found] <1337983476-22081-1-git-send-email-richard@nod.at>
  2012-05-25 22:04 ` [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled Richard Weinberger
@ 2012-05-25 22:04 ` Richard Weinberger
  2012-06-01 17:55   ` Richard Kuo
  2012-06-01 19:02   ` Richard Kuo
  1 sibling, 2 replies; 8+ messages in thread
From: Richard Weinberger @ 2012-05-25 22:04 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-arch, Richard Weinberger, Richard Kuo, linux-hexagon

get_signal_to_deliver() already calls try_to_freeze(), there is no
need to call it directly.

Cc: Richard Kuo <rkuo@codeaurora.org>
Cc: linux-hexagon@vger.kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
---
 arch/hexagon/kernel/signal.c |    5 -----
 1 files changed, 0 insertions(+), 5 deletions(-)

diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
index 8403bfd..9783cfa 100644
--- a/arch/hexagon/kernel/signal.c
+++ b/arch/hexagon/kernel/signal.c
@@ -20,7 +20,6 @@
 
 #include <linux/linkage.h>
 #include <linux/syscalls.h>
-#include <linux/freezer.h>
 #include <linux/tracehook.h>
 #include <linux/irqflags.h>
 #include <asm/registers.h>
@@ -210,9 +209,6 @@ static void do_signal(struct pt_regs *regs)
 	if (!user_mode(regs))
 		return;
 
-	if (try_to_freeze())
-		goto no_signal;
-
 	signo = get_signal_to_deliver(&info, &sigact, regs, NULL);
 
 	if (signo > 0) {
@@ -237,7 +233,6 @@ static void do_signal(struct pt_regs *regs)
 		return;
 	}
 
-no_signal:
 	/*
 	 * If we came from a system call, handle the restart.
 	 */
-- 
1.7.7.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled
  2012-05-25 22:04 ` [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled Richard Weinberger
@ 2012-06-01 17:54   ` Richard Kuo
  2012-06-01 18:42     ` David Brown
  2012-06-01 19:02   ` Richard Kuo
  1 sibling, 1 reply; 8+ messages in thread
From: Richard Kuo @ 2012-06-01 17:54 UTC (permalink / raw)
  To: Richard Weinberger; +Cc: linux-kernel, linux-arch, linux-hexagon

On Sat, May 26, 2012 at 12:04:21AM +0200, Richard Weinberger wrote:
> get_signal_to_deliver() calls try_to_freeze() which might sleep.
> 
> Cc: Richard Kuo <rkuo@codeaurora.org>
> Cc: linux-hexagon@vger.kernel.org
> Signed-off-by: Richard Weinberger <richard@nod.at>
> ---
>  arch/hexagon/kernel/signal.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> index 434866e..8403bfd 100644
> --- a/arch/hexagon/kernel/signal.c
> +++ b/arch/hexagon/kernel/signal.c
> @@ -22,6 +22,7 @@
>  #include <linux/syscalls.h>
>  #include <linux/freezer.h>
>  #include <linux/tracehook.h>
> +#include <linux/irqflags.h>
>  #include <asm/registers.h>
>  #include <asm/thread_info.h>
>  #include <asm/unistd.h>
> @@ -267,6 +268,8 @@ no_restart:
>  
>  void do_notify_resume(struct pt_regs *regs, unsigned long thread_info_flags)
>  {
> +	local_irq_enable();
> +
>  	if (thread_info_flags & _TIF_SIGPENDING)
>  		do_signal(regs);
>  
> -- 
> 1.7.7.3
> 

Signed-off-by: Richard Kuo <rkuo@codeaurora.org>


-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal()
  2012-05-25 22:04 ` [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal() Richard Weinberger
@ 2012-06-01 17:55   ` Richard Kuo
  2012-06-01 19:02   ` Richard Kuo
  1 sibling, 0 replies; 8+ messages in thread
From: Richard Kuo @ 2012-06-01 17:55 UTC (permalink / raw)
  To: Richard Weinberger; +Cc: linux-kernel, linux-arch, linux-hexagon

On Sat, May 26, 2012 at 12:04:33AM +0200, Richard Weinberger wrote:
> get_signal_to_deliver() already calls try_to_freeze(), there is no
> need to call it directly.
> 
> Cc: Richard Kuo <rkuo@codeaurora.org>
> Cc: linux-hexagon@vger.kernel.org
> Signed-off-by: Richard Weinberger <richard@nod.at>
> ---
>  arch/hexagon/kernel/signal.c |    5 -----
>  1 files changed, 0 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> index 8403bfd..9783cfa 100644
> --- a/arch/hexagon/kernel/signal.c
> +++ b/arch/hexagon/kernel/signal.c
> @@ -20,7 +20,6 @@
>  
>  #include <linux/linkage.h>
>  #include <linux/syscalls.h>
> -#include <linux/freezer.h>
>  #include <linux/tracehook.h>
>  #include <linux/irqflags.h>
>  #include <asm/registers.h>
> @@ -210,9 +209,6 @@ static void do_signal(struct pt_regs *regs)
>  	if (!user_mode(regs))
>  		return;
>  
> -	if (try_to_freeze())
> -		goto no_signal;
> -
>  	signo = get_signal_to_deliver(&info, &sigact, regs, NULL);
>  
>  	if (signo > 0) {
> @@ -237,7 +233,6 @@ static void do_signal(struct pt_regs *regs)
>  		return;
>  	}
>  
> -no_signal:
>  	/*
>  	 * If we came from a system call, handle the restart.
>  	 */
> -- 
> 1.7.7.3
> 

Signed-off-by: Richard Kuo <rkuo@codeaurora.org>


-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled
  2012-06-01 17:54   ` Richard Kuo
@ 2012-06-01 18:42     ` David Brown
  2012-06-01 19:01       ` Richard Kuo
  0 siblings, 1 reply; 8+ messages in thread
From: David Brown @ 2012-06-01 18:42 UTC (permalink / raw)
  To: Richard Kuo; +Cc: Richard Weinberger, linux-kernel, linux-arch, linux-hexagon

On Fri, Jun 01, 2012 at 12:54:59PM -0500, Richard Kuo wrote:
> On Sat, May 26, 2012 at 12:04:21AM +0200, Richard Weinberger wrote:
> > get_signal_to_deliver() calls try_to_freeze() which might sleep.
> > 
> > Cc: Richard Kuo <rkuo@codeaurora.org>
> > Cc: linux-hexagon@vger.kernel.org
> > Signed-off-by: Richard Weinberger <richard@nod.at>
> > ---
> >  arch/hexagon/kernel/signal.c |    3 +++
> >  1 files changed, 3 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> > index 434866e..8403bfd 100644
> > --- a/arch/hexagon/kernel/signal.c
> > +++ b/arch/hexagon/kernel/signal.c
> > @@ -22,6 +22,7 @@
> >  #include <linux/syscalls.h>
> >  #include <linux/freezer.h>
> >  #include <linux/tracehook.h>
> > +#include <linux/irqflags.h>
> >  #include <asm/registers.h>
> >  #include <asm/thread_info.h>
> >  #include <asm/unistd.h>
> > @@ -267,6 +268,8 @@ no_restart:
> >  
> >  void do_notify_resume(struct pt_regs *regs, unsigned long thread_info_flags)
> >  {
> > +	local_irq_enable();
> > +
> >  	if (thread_info_flags & _TIF_SIGPENDING)
> >  		do_signal(regs);
> >  
> > -- 
> > 1.7.7.3
> 
> Signed-off-by: Richard Kuo <rkuo@codeaurora.org>

Did you mean Acked-by?  Replying to an email with a Signed-off-by
doesn't mean anything.  If you're pulling the patch into your own
tree, add the SoB at that point.  If you want to reply that you've
accepted a patch, just say so in English.

David

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled
  2012-06-01 18:42     ` David Brown
@ 2012-06-01 19:01       ` Richard Kuo
  0 siblings, 0 replies; 8+ messages in thread
From: Richard Kuo @ 2012-06-01 19:01 UTC (permalink / raw)
  To: David Brown; +Cc: Richard Weinberger, linux-kernel, linux-arch, linux-hexagon

On Fri, Jun 01, 2012 at 11:42:12AM -0700, David Brown wrote:
> On Fri, Jun 01, 2012 at 12:54:59PM -0500, Richard Kuo wrote:
> > On Sat, May 26, 2012 at 12:04:21AM +0200, Richard Weinberger wrote:
> > > get_signal_to_deliver() calls try_to_freeze() which might sleep.
> > > 
> > > Cc: Richard Kuo <rkuo@codeaurora.org>
> > > Cc: linux-hexagon@vger.kernel.org
> > > Signed-off-by: Richard Weinberger <richard@nod.at>
> > > ---
> > >  arch/hexagon/kernel/signal.c |    3 +++
> > >  1 files changed, 3 insertions(+), 0 deletions(-)
> > > 
> > > diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> > > index 434866e..8403bfd 100644
> > > --- a/arch/hexagon/kernel/signal.c
> > > +++ b/arch/hexagon/kernel/signal.c
> > > @@ -22,6 +22,7 @@
> > >  #include <linux/syscalls.h>
> > >  #include <linux/freezer.h>
> > >  #include <linux/tracehook.h>
> > > +#include <linux/irqflags.h>
> > >  #include <asm/registers.h>
> > >  #include <asm/thread_info.h>
> > >  #include <asm/unistd.h>
> > > @@ -267,6 +268,8 @@ no_restart:
> > >  
> > >  void do_notify_resume(struct pt_regs *regs, unsigned long thread_info_flags)
> > >  {
> > > +	local_irq_enable();
> > > +
> > >  	if (thread_info_flags & _TIF_SIGPENDING)
> > >  		do_signal(regs);
> > >  
> > > -- 
> > > 1.7.7.3
> > 
> > Signed-off-by: Richard Kuo <rkuo@codeaurora.org>
> 
> Did you mean Acked-by?  Replying to an email with a Signed-off-by
> doesn't mean anything.  If you're pulling the patch into your own
> tree, add the SoB at that point.  If you want to reply that you've
> accepted a patch, just say so in English.
> 
> David

Doh, sorry, I really meant Acked-by.  Thanks for catching that.


-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled
  2012-05-25 22:04 ` [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled Richard Weinberger
  2012-06-01 17:54   ` Richard Kuo
@ 2012-06-01 19:02   ` Richard Kuo
  1 sibling, 0 replies; 8+ messages in thread
From: Richard Kuo @ 2012-06-01 19:02 UTC (permalink / raw)
  To: Richard Weinberger; +Cc: linux-kernel, linux-arch, linux-hexagon

On Sat, May 26, 2012 at 12:04:21AM +0200, Richard Weinberger wrote:
> get_signal_to_deliver() calls try_to_freeze() which might sleep.
> 
> Cc: Richard Kuo <rkuo@codeaurora.org>
> Cc: linux-hexagon@vger.kernel.org
> Signed-off-by: Richard Weinberger <richard@nod.at>
> ---
>  arch/hexagon/kernel/signal.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> index 434866e..8403bfd 100644
> --- a/arch/hexagon/kernel/signal.c
> +++ b/arch/hexagon/kernel/signal.c
> @@ -22,6 +22,7 @@
>  #include <linux/syscalls.h>
>  #include <linux/freezer.h>
>  #include <linux/tracehook.h>
> +#include <linux/irqflags.h>
>  #include <asm/registers.h>
>  #include <asm/thread_info.h>
>  #include <asm/unistd.h>
> @@ -267,6 +268,8 @@ no_restart:
>  
>  void do_notify_resume(struct pt_regs *regs, unsigned long thread_info_flags)
>  {
> +	local_irq_enable();
> +
>  	if (thread_info_flags & _TIF_SIGPENDING)
>  		do_signal(regs);
>  
> -- 
> 1.7.7.3
> 

Acked-by:  Richard Kuo <rkuo@codeaurora.org>


-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal()
  2012-05-25 22:04 ` [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal() Richard Weinberger
  2012-06-01 17:55   ` Richard Kuo
@ 2012-06-01 19:02   ` Richard Kuo
  1 sibling, 0 replies; 8+ messages in thread
From: Richard Kuo @ 2012-06-01 19:02 UTC (permalink / raw)
  To: Richard Weinberger; +Cc: linux-kernel, linux-arch, linux-hexagon

On Sat, May 26, 2012 at 12:04:33AM +0200, Richard Weinberger wrote:
> get_signal_to_deliver() already calls try_to_freeze(), there is no
> need to call it directly.
> 
> Cc: Richard Kuo <rkuo@codeaurora.org>
> Cc: linux-hexagon@vger.kernel.org
> Signed-off-by: Richard Weinberger <richard@nod.at>
> ---
>  arch/hexagon/kernel/signal.c |    5 -----
>  1 files changed, 0 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/hexagon/kernel/signal.c b/arch/hexagon/kernel/signal.c
> index 8403bfd..9783cfa 100644
> --- a/arch/hexagon/kernel/signal.c
> +++ b/arch/hexagon/kernel/signal.c
> @@ -20,7 +20,6 @@
>  
>  #include <linux/linkage.h>
>  #include <linux/syscalls.h>
> -#include <linux/freezer.h>
>  #include <linux/tracehook.h>
>  #include <linux/irqflags.h>
>  #include <asm/registers.h>
> @@ -210,9 +209,6 @@ static void do_signal(struct pt_regs *regs)
>  	if (!user_mode(regs))
>  		return;
>  
> -	if (try_to_freeze())
> -		goto no_signal;
> -
>  	signo = get_signal_to_deliver(&info, &sigact, regs, NULL);
>  
>  	if (signo > 0) {
> @@ -237,7 +233,6 @@ static void do_signal(struct pt_regs *regs)
>  		return;
>  	}
>  
> -no_signal:
>  	/*
>  	 * If we came from a system call, handle the restart.
>  	 */
> -- 
> 1.7.7.3
> 

Acked-by: Richard Kuo <rkuo@codeaurora.org>

-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-06-01 19:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1337983476-22081-1-git-send-email-richard@nod.at>
2012-05-25 22:04 ` [PATCH 05/20] hexagon: Do not call do_signal() with irqs disabled Richard Weinberger
2012-06-01 17:54   ` Richard Kuo
2012-06-01 18:42     ` David Brown
2012-06-01 19:01       ` Richard Kuo
2012-06-01 19:02   ` Richard Kuo
2012-05-25 22:04 ` [PATCH 17/20] hexagon: Do not call try_to_freeze() in do_signal() Richard Weinberger
2012-06-01 17:55   ` Richard Kuo
2012-06-01 19:02   ` Richard Kuo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).