Alpha arch development list
 help / color / mirror / Atom feed
* Re: [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask()
       [not found]   ` <20100929010738.GJ19804@ZenIV.linux.org.uk>
@ 2010-09-30  7:39     ` Michael Cree
  2010-09-30 11:50       ` Al Viro
  2010-09-30 11:56       ` Ivan Kokshaysky
  0 siblings, 2 replies; 3+ messages in thread
From: Michael Cree @ 2010-09-30  7:39 UTC (permalink / raw)
  To: Al Viro; +Cc: Al Viro, linux-kernel, mattst88, torvalds, linux-alpha

On 29/09/10 14:07, Al Viro wrote:
> On Tue, Sep 28, 2010 at 10:39:43PM +1300, Michael Cree wrote:
>> On 27/09/10 07:28, Al Viro wrote:
>>>
>>> get rid of a useless wrapper, while we are at it
>>>
>>> Signed-off-by: Al Viro<viro@zeniv.linux.org.uk>
>>
>> Compiling this leads to the following errors:
 >
> Grrrr....   My apologies - cherry-pick from the wrong branch ;-/
>
> Al "nothing like seeing the errors one has fixed show up in what's sent" Viro

It appears to be worse than that.  It introduces a regression.  On boot 
up on a Compaq Alpha XP1000 the system appears to freeze at the point of 
mounting swap.  It eventually resumes after almost three minutes and 
continues to boot.  A bisection returned this very commit as the first 
bad commit.  With a kernel without this commit the (truncated) bootup 
log is:

[   19.904286] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
[   20.133778] PCI: Setting latency timer of device 0000:01:00.1 to 64
[   20.900379] ieee1394: Host added: ID:BUS[0-00:1023] 
GUID[0000303c0009c6d0]
[   23.142566] hda-intel: azx_get_response timeout, switching to polling 
mode: last cmd=0x000f0001
[   24.162097] Adding 1999992k swap on /dev/sda2.  Priority:-1 extents:1 
across:1999992k
[   24.495104] EXT3-fs (sda4): using internal journal

With the commit the log becomes:

[   19.970692] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
[   20.207020] PCI: Setting latency timer of device 0000:01:00.1 to 64
[   21.052723] ieee1394: Host added: ID:BUS[0-00:1023] 
GUID[0000303c0009c6d0]
[   23.215808] hda-intel: azx_get_response timeout, switching to polling 
mode: last cmd=0x000f0001
[  189.828027] Adding 1999992k swap on /dev/sda2.  Priority:-1 extents:1 
across:1999992k
[  190.162012] EXT3-fs (sda4): using internal journal

Otherwise the system seems to come up okay.

Cheers
Michael.

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

* Re: [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask()
  2010-09-30  7:39     ` [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask() Michael Cree
@ 2010-09-30 11:50       ` Al Viro
  2010-09-30 11:56       ` Ivan Kokshaysky
  1 sibling, 0 replies; 3+ messages in thread
From: Al Viro @ 2010-09-30 11:50 UTC (permalink / raw)
  To: Michael Cree; +Cc: Al Viro, linux-kernel, mattst88, torvalds, linux-alpha

On Thu, Sep 30, 2010 at 08:39:01PM +1300, Michael Cree wrote:
> It appears to be worse than that.  It introduces a regression.  On
> boot up on a Compaq Alpha XP1000 the system appears to freeze at the
> point of mounting swap.  It eventually resumes after almost three
> minutes and continues to boot.


diff --git a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c
index 779780a..f7f054d 100644
--- a/arch/alpha/kernel/signal.c
+++ b/arch/alpha/kernel/signal.c
@@ -48,7 +48,7 @@ SYSCALL_DEFINE2(osf_sigprocmask, int, how, unsigned long, newmask)
 	sigset_t mask;
 	unsigned long res;
 
-	siginitset(&mask, newmask & ~_BLOCKABLE);
+	siginitset(&mask, newmask & _BLOCKABLE);
 	res = siprocmask(how, &mask, &oldmask);
 	if (!res) {
 		force_successful_syscall_return();

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

* Re: [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask()
  2010-09-30  7:39     ` [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask() Michael Cree
  2010-09-30 11:50       ` Al Viro
@ 2010-09-30 11:56       ` Ivan Kokshaysky
  1 sibling, 0 replies; 3+ messages in thread
From: Ivan Kokshaysky @ 2010-09-30 11:56 UTC (permalink / raw)
  To: Michael Cree
  Cc: Al Viro, Al Viro, linux-kernel, mattst88, torvalds, linux-alpha

On Thu, Sep 30, 2010 at 08:39:01PM +1300, Michael Cree wrote:
> It appears to be worse than that.  It introduces a regression.  On boot up 
> on a Compaq Alpha XP1000 the system appears to freeze at the point of 
> mounting swap.  It eventually resumes after almost three minutes and 
> continues to boot.  A bisection returned this very commit as the first bad 
> commit.  With a kernel without this commit the (truncated) bootup log is:

Confirmed, I see some processes get stuck, apparently waiting for signals.

Looks like yet another typo - _BLOCKABLE is defined as
(~(sigmask(SIGKILL) | sigmask(SIGSTOP))), so (newmask & ~_BLOCKABLE)
clears everything but SIGKILL and SIGSTOP.

Ivan.

diff --git a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c
index d290845..6f7feb5 100644
--- a/arch/alpha/kernel/signal.c
+++ b/arch/alpha/kernel/signal.c
@@ -48,7 +48,7 @@ SYSCALL_DEFINE2(osf_sigprocmask, int, how, unsigned long, newmask)
 	sigset_t mask;
 	unsigned long res;
 
-	siginitset(&mask, newmask & ~_BLOCKABLE);
+	siginitset(&mask, newmask & _BLOCKABLE);
 	res = sigprocmask(how, &mask, &oldmask);
 	if (!res) {
 		force_successful_syscall_return();

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

end of thread, other threads:[~2010-09-30 11:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <E1OzvxM-0002ng-B5@ZenIV.linux.org.uk>
     [not found] ` <4CA1B7DF.10202@orcon.net.nz>
     [not found]   ` <20100929010738.GJ19804@ZenIV.linux.org.uk>
2010-09-30  7:39     ` [PATCH 1/2] alpha: switch osf_sigprocmask() to use of sigprocmask() Michael Cree
2010-09-30 11:50       ` Al Viro
2010-09-30 11:56       ` Ivan Kokshaysky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox