From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 03:20:14 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DA88587E; Fri, 2 Jan 2015 03:20:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C6E7C14B0; Fri, 2 Jan 2015 03:20:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t023KEmG029725; Fri, 2 Jan 2015 03:20:14 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t023KESc029724; Fri, 2 Jan 2015 03:20:14 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501020320.t023KESc029724@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Fri, 2 Jan 2015 03:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276525 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 03:20:15 -0000 Author: ian Date: Fri Jan 2 03:20:13 2015 New Revision: 276525 URL: https://svnweb.freebsd.org/changeset/base/276525 Log: Put in a workaround for bug 196407 (arm modules cause crashes & panics). When we started compiling the kernel with -march=armv7 the compiler started emitting new types of relocation info which are incompatible with the shared-lib file format used by .ko modules. This workaround prevents the compiler from emitting the instruction sequences that require the new relocs. This amounts to using an undocumented internal compiler flag, so this is just a temporary workaround while we look for a good fix. PR: 196407 Modified: head/sys/conf/kmod.mk Modified: head/sys/conf/kmod.mk ============================================================================== --- head/sys/conf/kmod.mk Fri Jan 2 02:47:47 2015 (r276524) +++ head/sys/conf/kmod.mk Fri Jan 2 03:20:13 2015 (r276525) @@ -118,6 +118,11 @@ CFLAGS+= ${DEBUG_FLAGS} CFLAGS+= -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer .endif +# Temporary workaround for PR 196407, which contains the fascinating details. +.if ${MACHINE_CPUARCH} == arm +CFLAGS.clang+= -mllvm -arm-use-movt=0 +.endif + .if ${MACHINE_CPUARCH} == powerpc CFLAGS+= -mlongcall -fno-omit-frame-pointer .endif