From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.5 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 880E4C83000 for ; Wed, 29 Apr 2020 21:08:36 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5934020B1F for ; Wed, 29 Apr 2020 21:08:36 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="qQklmUKh"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="F++7d5qy" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5934020B1F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=K353fhkZg+VNZYmuS/ZxK2HM77ZamnUgBjo6gOOHcT8=; b=qQklmUKhuroG8k tPXJ1flBawktKeKHxaTb++q67MxQMjYFv9tj8RJpHsu3+SdCaf8Yfqba6jQ7+CqJ8ibOvrPIIMcmA DsoieqCrAow+zN7q/FWoidI50RL5xoTlOzNiGUwQURBTtF0YIcImJWJS0YtyfNy51UKFuWlIEbRUO VtIKVjedmSzhRkzeagp+aN5yFlomC7D01oel2vowXncXidGT5NBaHBVVyRD3IXEvr0eF9VyD5GaGV oVMH9MA16pn5Y9zP4ZoNfKCJgb9gGvreUar/RCAj7aHQwoLkWqT01rVzsCODBeNPnMp0/2bFGtBQY T3ioZZ01ztVuZYzlz5Cg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jTtwZ-0007CK-ET; Wed, 29 Apr 2020 21:08:35 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jTtwV-0007Bn-KO for linux-arm-kernel@lists.infradead.org; Wed, 29 Apr 2020 21:08:33 +0000 Received: from willie-the-truck (236.31.169.217.in-addr.arpa [217.169.31.236]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id ADAB1206F0; Wed, 29 Apr 2020 21:08:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1588194511; bh=x62MyzNSnHtWxluweM3rlMTKDx3y8gtb3BAl6RSCfp4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=F++7d5qyPnzyNp43N9DU6ZcFUUPZBTfKsEN//uUB4/kd/iWUMrMaYHnV0JJpwK241 5auA6KzDH16h3RsN8mv4ETr6dmvTq7HcWT/5WoqeNyptqkUiP8mhWVXeK4BM6e/qG7 UhoEZT32hiIRddWlEFuX7YyFjh7YF9ohk0m2SJuo= Date: Wed, 29 Apr 2020 22:08:26 +0100 From: Will Deacon To: Peter Collingbourne Subject: Re: [PATCH v3] arm64: Expose original FAR_EL1 value in sigcontext Message-ID: <20200429210826.GA8604@willie-the-truck> References: <20200325174001.234803-1-pcc@google.com> <20200327191915.257116-1-pcc@google.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200327191915.257116-1-pcc@google.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200429_140831_688644_8DDA9231 X-CRM114-Status: GOOD ( 13.75 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Catalin Marinas , Kevin Brodsky , Kostya Serebryany , Evgenii Stepanov , Andrey Konovalov , Vincenzo Frascino , Linux ARM , Richard Henderson Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Fri, Mar 27, 2020 at 12:19:15PM -0700, Peter Collingbourne wrote: > The kernel currently clears the tag bits (i.e. bits 56-63) in the fault > address exposed via siginfo.si_addr and sigcontext.fault_address. However, > the tag bits may be needed by tools in order to accurately diagnose > memory errors, such as HWASan [1] or future tools based on the Memory > Tagging Extension (MTE). > > We should not stop clearing these bits in the existing fault address > fields, because there may be existing userspace applications that are > expecting the tag bits to be cleared. Instead, create a far_context in > sigcontext (similar to the existing esr_context), and store the original > value of FAR_EL1 (including the tag bits) there. > > [1] http://clang.llvm.org/docs/HardwareAssistedAddressSanitizerDesign.html > > Signed-off-by: Peter Collingbourne > --- > v3: > - add documentation to tagged-pointers.rst > - update comments in sigcontext.h Hmm, although the code looks fine, why don't we just expose the tag in the new field, rather than duplicate the address information? I'm nervous about exposing privileged registers directly to userspace. Also, Catalin, could you elaborate on the MTE use-case please? The architecture says that FAR_EL1[63:60] are UNKNOWN on a synchronous tag check fault, so we'd have to *avoid* exposing them in that case! Will _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel