svn commit: r283436 - in head/sys: amd64/linux32 compat/linux i386/linux

Dmitry Chagin dchagin at FreeBSD.org
Sun May 24 16:30:24 UTC 2015


Author: dchagin
Date: Sun May 24 16:30:23 2015
New Revision: 283436
URL: https://svnweb.freebsd.org/changeset/base/283436

Log:
  Use the BSD_TO_LINUX_SIGNAL() wherever there is no need
  to check the ABI as it is known.
  
  Differential Revision:	https://reviews.freebsd.org/D1086

Modified:
  head/sys/amd64/linux32/linux32_sysvec.c
  head/sys/compat/linux/linux_signal.c
  head/sys/i386/linux/linux_sysvec.c

Modified: head/sys/amd64/linux32/linux32_sysvec.c
==============================================================================
--- head/sys/amd64/linux32/linux32_sysvec.c	Sun May 24 16:28:58 2015	(r283435)
+++ head/sys/amd64/linux32/linux32_sysvec.c	Sun May 24 16:30:23 2015	(r283436)
@@ -344,9 +344,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo
 	/*
 	 * Build the argument list for the signal handler.
 	 */
-	if (p->p_sysent->sv_sigtbl)
-		if (sig <= p->p_sysent->sv_sigsize)
-			sig = p->p_sysent->sv_sigtbl[_SIG_IDX(sig)];
+	sig = BSD_TO_LINUX_SIGNAL(sig);
 
 	bzero(&frame, sizeof(frame));
 
@@ -492,9 +490,7 @@ linux_sendsig(sig_t catcher, ksiginfo_t 
 	/*
 	 * Build the argument list for the signal handler.
 	 */
-	if (p->p_sysent->sv_sigtbl)
-		if (sig <= p->p_sysent->sv_sigsize)
-			sig = p->p_sysent->sv_sigtbl[_SIG_IDX(sig)];
+	sig = BSD_TO_LINUX_SIGNAL(sig);
 
 	bzero(&frame, sizeof(frame));
 

Modified: head/sys/compat/linux/linux_signal.c
==============================================================================
--- head/sys/compat/linux/linux_signal.c	Sun May 24 16:28:58 2015	(r283435)
+++ head/sys/compat/linux/linux_signal.c	Sun May 24 16:30:23 2015	(r283436)
@@ -628,10 +628,8 @@ linux_tkill(struct thread *td, struct li
 	if (!LINUX_SIG_VALID(args->sig))
 		return (EINVAL);
 
-	if (args->sig > 0 && args->sig <= LINUX_SIGTBLSZ)
-		sig = linux_to_bsd_signal[_SIG_IDX(args->sig)];
-	else
-		sig = args->sig;
+
+	sig = BSD_TO_LINUX_SIGNAL(args->sig);
 
 	tdt = linux_tdfind(td, args->tid, -1);
 	if (tdt == NULL)
@@ -788,10 +786,7 @@ linux_rt_sigqueueinfo(struct thread *td,
 	if (linfo.lsi_code >= 0)
 		return (EPERM);
 
-	if (args->sig > 0 && args->sig <= LINUX_SIGTBLSZ)
-		sig = linux_to_bsd_signal[_SIG_IDX(args->sig)];
-	else
-		sig = args->sig;
+	sig = BSD_TO_LINUX_SIGNAL(args->sig);
 
 	error = ESRCH;
 	if ((p = pfind(args->pid)) != NULL ||

Modified: head/sys/i386/linux/linux_sysvec.c
==============================================================================
--- head/sys/i386/linux/linux_sysvec.c	Sun May 24 16:28:58 2015	(r283435)
+++ head/sys/i386/linux/linux_sysvec.c	Sun May 24 16:30:23 2015	(r283436)
@@ -480,9 +480,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo
 	/*
 	 * Build the argument list for the signal handler.
 	 */
-	if (p->p_sysent->sv_sigtbl)
-		if (sig <= p->p_sysent->sv_sigsize)
-			sig = p->p_sysent->sv_sigtbl[_SIG_IDX(sig)];
+	sig = BSD_TO_LINUX_SIGNAL(sig);
 
 	bzero(&frame, sizeof(frame));
 
@@ -623,9 +621,7 @@ linux_sendsig(sig_t catcher, ksiginfo_t 
 	/*
 	 * Build the argument list for the signal handler.
 	 */
-	if (p->p_sysent->sv_sigtbl)
-		if (sig <= p->p_sysent->sv_sigsize)
-			sig = p->p_sysent->sv_sigtbl[_SIG_IDX(sig)];
+	sig = BSD_TO_LINUX_SIGNAL(sig);
 
 	bzero(&frame, sizeof(frame));
 


More information about the svn-src-head mailing list