Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Apr 2003 12:07:38 -0400 (EDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Jeff Utter <funk@softhome.net>
Cc:        current@freebsd.org
Subject:   RE: Linux compat broken??
Message-ID:  <XFMail.20030425120738.jhb@FreeBSD.org>
In-Reply-To: <1051268728.675.2.camel@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
This message is in MIME format
--_=XFMail.1.5.4.FreeBSD:20030425110847:955=_
Content-Type: text/plain; charset=us-ascii


On 25-Apr-2003 Jeff Utter wrote:
> 
>> This is current.  People running current are expected to not do updates
>> completely blind.  That said, you can try reverting revision 1.42 of
>> sys/compat/linux/linux_signal.c and see if it fixes your problem?
> 
>       Thanks!... that fixed most of my problems, vmware works now... However
> my nvidia drivers have started to mess up (they use linux compat right?)
> When i try to start X using them, my screen flashes once and returns to
> console locking up my system. Any idea what file(s) could have changed
> to do this?

Can you try putting revision 1.42 back and trying the attached patch
instead?

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

--_=XFMail.1.5.4.FreeBSD:20030425110847:955=_
Content-Disposition: attachment; filename="linux_signal.patch"
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
 charset=us-ascii; name=linux_signal.patch; SizeOnDisk=938

Index: linux_signal.c
===================================================================
RCS file: /usr/cvs/src/sys/compat/linux/linux_signal.c,v
retrieving revision 1.42
diff -u -r1.42 linux_signal.c
--- linux_signal.c	22 Apr 2003 18:23:47 -0000	1.42
+++ linux_signal.c	25 Apr 2003 15:03:02 -0000
@@ -233,14 +233,25 @@
 
 	td->td_retval[0] = 0;
 
+	switch (how) {
+	case LINUX_SIG_BLOCK:
+		how = SIG_BLOCK;
+		break;
+	case LINUX_SIG_UNBLOCK:
+		how = SIG_UNBLOCK;
+		break;
+	case LINUX_SIG_SETMASK:
+		how = SIG_SETMASK;
+		break;
+	default:
+		return (EINVAL);
+	}
 	if (new != NULL) {
 		linux_to_bsd_sigset(new, &nmask);
 		nmaskp = &nmask;
 	} else
 		nmaskp = NULL;
-
-	/* Linux sigprocmask flag values are one less than FreeBSD values. */
-	error = kern_sigprocmask(td, how + 1, nmaskp, &omask, 0);
+	error = kern_sigprocmask(td, how, nmaskp, &omask, 0);
 	if (error != 0 && old != NULL)
 		bsd_to_linux_sigset(&omask, old);
 

--_=XFMail.1.5.4.FreeBSD:20030425110847:955=_--
End of MIME message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20030425120738.jhb>