From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965199AbbBBVer (ORCPT ); Mon, 2 Feb 2015 16:34:47 -0500 Received: from mga03.intel.com ([134.134.136.65]:7160 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754190AbbBBVbY (ORCPT ); Mon, 2 Feb 2015 16:31:24 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,508,1418112000"; d="scan'208";a="521533834" Subject: [PATCH 0/9] x86, mpx: Support 32-bit binaries on 64-bit kernels To: linux-kernel@vger.kernel.org Cc: x86@kernel.org, tglx@linutronix.de, Dave Hansen From: Dave Hansen Date: Mon, 02 Feb 2015 13:31:27 -0800 Message-Id: <20150202213127.0171DBC1@viggo.jf.intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The MPX hardware structures differ in layout in 32 and 64-bit mode. A 32-bit binary running on a 64-bit kernel needs the 32-bit structures, so we need code which switches between the two modes. x86: make is_64bit_mm() widely available x86: make __VIRTUAL_MASK safe to use on 32 bit x86, mpx: we do not allocate the bounds directory x86, mpx: remove redundant MPX_BNDCFG_ADDR_MASK x86, mpx: Add temporary variable to reduce masking x86, mpx: new directory entry to addr helper x86, mpx: do 32-bit-only cmpxchg for 32-bit apps x86, mpx: support 32bit binaries on 64bit kernel include/asm/mmu_context.h | 13 ++ include/asm/mpx.h | 66 ++++++------ include/asm/page_types.h | 8 + kernel/uprobes.c | 10 - mm/mpx.c | 241 ++++++++++++++++++++++++++++++++++++++-------- 5 files changed, 255 insertions(+), 83 deletions(-)