On Sat, 2 Sep 2000, Mohammad A. Haque wrote:
> replace current->signal with current->pending.signal
>
> can anyone verify?
I think so, both from reading what the test8-pre2 patch does and from
looking at what smbfs does with current->signal. But it's late so you may
be better off trying the opposite of what I think. :)
Untested patch below for smbfs. Well, it compiles ...
/Urban
--- linux-2.4.0-test8-pre2-orig/fs/smbfs/sock.c Sun Aug 27 13:10:49 2000
+++ linux/fs/smbfs/sock.c Sun Sep 3 00:58:54 2000
@@ -641,7 +641,7 @@
DEBUG1("len = %d cmd = 0x%X\n", len, buffer[8]);
spin_lock_irqsave(¤t->sigmask_lock, flags);
- sigpipe = sigismember(¤t->signal, SIGPIPE);
+ sigpipe = sigismember(¤t->pending.signal, SIGPIPE);
old_set = current->blocked;
siginitsetinv(¤t->blocked, sigmask(SIGKILL)|sigmask(SIGSTOP));
recalc_sigpending(current);
@@ -659,7 +659,7 @@
/* read/write errors are handled by errno */
spin_lock_irqsave(¤t->sigmask_lock, flags);
if (result == -EPIPE && !sigpipe)
- sigdelset(¤t->signal, SIGPIPE);
+ sigdelset(¤t->pending.signal, SIGPIPE);
current->blocked = old_set;
recalc_sigpending(current);
spin_unlock_irqrestore(¤t->sigmask_lock, flags);
@@ -821,7 +821,7 @@
goto bad_conn;
spin_lock_irqsave(¤t->sigmask_lock, flags);
- sigpipe = sigismember(¤t->signal, SIGPIPE);
+ sigpipe = sigismember(¤t->pending.signal, SIGPIPE);
old_set = current->blocked;
siginitsetinv(¤t->blocked, sigmask(SIGKILL)|sigmask(SIGSTOP));
recalc_sigpending(current);
@@ -841,7 +841,7 @@
/* read/write errors are handled by errno */
spin_lock_irqsave(¤t->sigmask_lock, flags);
if (result == -EPIPE && !sigpipe)
- sigdelset(¤t->signal, SIGPIPE);
+ sigdelset(¤t->pending.signal, SIGPIPE);
current->blocked = old_set;
recalc_sigpending(current);
spin_unlock_irqrestore(¤t->sigmask_lock, flags);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/