From owner-svn-src-all@freebsd.org Thu Jan 25 12:13:42 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8BBB4ED40E4; Thu, 25 Jan 2018 12:13:42 +0000 (UTC) (envelope-from wma@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3A17D791DF; Thu, 25 Jan 2018 12:13:42 +0000 (UTC) (envelope-from wma@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 350144B99; Thu, 25 Jan 2018 12:13:42 +0000 (UTC) (envelope-from wma@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w0PCDg6j016307; Thu, 25 Jan 2018 12:13:42 GMT (envelope-from wma@FreeBSD.org) Received: (from wma@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w0PCDgxg016306; Thu, 25 Jan 2018 12:13:42 GMT (envelope-from wma@FreeBSD.org) Message-Id: <201801251213.w0PCDgxg016306@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wma set sender to wma@FreeBSD.org using -f From: Wojciech Macek Date: Thu, 25 Jan 2018 12:13:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r328394 - head/sys/net X-SVN-Group: head X-SVN-Commit-Author: wma X-SVN-Commit-Paths: head/sys/net X-SVN-Commit-Revision: 328394 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Jan 2018 12:13:42 -0000 Author: wma Date: Thu Jan 25 12:13:41 2018 New Revision: 328394 URL: https://svnweb.freebsd.org/changeset/base/328394 Log: BPF: Switch to 32 bit compatible mode only when thread is 32 bit Sometimes 32 bit and 64 bit ioctls are represented by the same number. It causes unnecessary switch to 32 bit commpatible mode. This patch prevents switching when we are dealing with 64 bit executable. It fixes issue mentioned here Authored by: Patryk Duda Submitted by: Wojciech Macek Reviewed by: andrew, wma Obtained from: Semihalf Sponsored by: IBM, QCM Technologies Differential revision: https://reviews.freebsd.org/D14023 Modified: head/sys/net/bpf.c Modified: head/sys/net/bpf.c ============================================================================== --- head/sys/net/bpf.c Thu Jan 25 08:36:19 2018 (r328393) +++ head/sys/net/bpf.c Thu Jan 25 12:13:41 2018 (r328394) @@ -62,6 +62,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -1321,9 +1322,11 @@ bpfioctl(struct cdev *dev, u_long cmd, caddr_t addr, i case BIOCGDLTLIST32: case BIOCGRTIMEOUT32: case BIOCSRTIMEOUT32: - BPFD_LOCK(d); - d->bd_compat32 = 1; - BPFD_UNLOCK(d); + if (SV_PROC_FLAG(td->td_proc, SV_ILP32)) { + BPFD_LOCK(d); + d->bd_compat32 = 1; + BPFD_UNLOCK(d); + } } #endif