Received: by 10.192.165.148 with SMTP id m20csp4230393imm; Tue, 8 May 2018 05:18:00 -0700 (PDT) X-Google-Smtp-Source: AB8JxZozbzdSXNE1p0jWrnKAD+35e0RRjSb2nT2bk1VxfdvrRG43cE6qh/y95d2GwDlBsxQdzHsA X-Received: by 2002:a17:902:bb83:: with SMTP id m3-v6mr16725806pls.236.1525781880392; Tue, 08 May 2018 05:18:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525781880; cv=none; d=google.com; s=arc-20160816; b=wGXFcyFLeiRwny7xv69oa6xqiZBCS92dXI7bBI5RsnetHljeB+N1iNvS32sxnvvqa2 gNFKGX+3PhSYpUs++tF/7Ck5BZY+g6/HjscuEeZjsuzFIxb50PUBpgvvVHYOFSsiX74R e92U81V52JegE08FCK9oMahyBR6glXbIMCmh9dtpLj7Xqr2k9CPTShZC0I1A3TfsNwMl N4kGuHjQubXCwqVxtOrOS1o832Aad/rma0DbTAwFMBVeAzcF/5f+l25e1BHKjcbl1Ofb FzFaUxqug9w7lqpZfrD2OGNiz5DE4ISUKulZ5ZLlUeraex0fKMCqqmWD9HonQHglrq2z kQWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=Dm5vK2TyQeBKYovPXgvyw+ZGv+lHdZayI75pIoiwkh0=; b=wwIfKcRa8xtce3a3gPYqk2X+6W0kQByB+riU/mhm8QSsprQdDK2zywvdIm25aShN1w 3ia6w2jaO7UO/tsw2B8mnH3PO3NUotVneTfkRqwlgvEQt0f/waC8/fekopoY3xSOj7y9 13UIZPg4pTDHo1mejFPK9f9xOWgw33szI0xErg87Rbic2C6j5Mahh31ZlDU4moUbzzkE UJdBorpjqU51jNVJby/RYnVTLItwxcrMwSnmjveya7nK+o9XrOLud5XxXIp2sYN4jHE9 DkAyJLbXvPgKy7XIyCRznS9WlKoEPE+780/TEEBIDqkbRWW8iSmzSyt1uaZ3FQNI94SS hG2Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=MvIL6jpk; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j84si24180908pfk.203.2018.05.08.05.17.46; Tue, 08 May 2018 05:18:00 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=MvIL6jpk; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754968AbeEHMQv (ORCPT + 99 others); Tue, 8 May 2018 08:16:51 -0400 Received: from mail-wm0-f65.google.com ([74.125.82.65]:35123 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754950AbeEHMQt (ORCPT ); Tue, 8 May 2018 08:16:49 -0400 Received: by mail-wm0-f65.google.com with SMTP id o78-v6so21198118wmg.0 for ; Tue, 08 May 2018 05:16:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Dm5vK2TyQeBKYovPXgvyw+ZGv+lHdZayI75pIoiwkh0=; b=MvIL6jpkjidVliyvUSm3hkskstvUlh4lJvSqNaGa1A5BjXpv8Rr1Xly7xqd8sxJnVM RU3mrS4ZeONR/FS8CyqQJU6fxy+GnYjygo2g87SgYQJEKHvVkGZEhfeOXWNDwy8+kxrG 5fzJ0plUTwQ0b1iSK4X7zPD/lnPflGo02duNRJX9gtIXj/+GVX2MTxL7trX+Uf903p/l wSsr290QjX7x9Kcgx0nI2DB1Z108lrV/3qauP06enG+2FGCU+5NS+u6ugBcHB3WDDm5p LXqu+UnsVt1ZvTVV3Y8gEDwPNC6CFlz0S1xCgmtaTh/k+GFLOJEuFkAH1JqO4/QT2b1z 1zUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Dm5vK2TyQeBKYovPXgvyw+ZGv+lHdZayI75pIoiwkh0=; b=jOhXbbMyTDF9q2VZ/NyUbgDVZp5a9Kq5Ym7DEslkM+SM1BGdJMtC5gj0W7P1Qaxx+W 7BZA4zyLy7Qgzd8QiqUBDOskSzbHr2hcSdsYRriRTuCnvusdCc2skCIyyMFkVZtTEd8G fUv/s8viSDU9CANn9mDGvUnD12e2xx8LVhaNQHEV5AzFYsPUUa9tZVqulSEuXVM4x5jK CzTM8EEG1xeluZou/JuaqTjqaOLAPuqWwH/KaAeNjjRYCnMCYqIEDHpuF7QqN0SK5A+Y ry4mPUuUtrTOnZY7Wtw0pBHF2JMhwu/eTsf7JY6hT1KoK/bZukDoZ7zohot2hR4g79Ou OM7A== X-Gm-Message-State: ALKqPwdZnsi9ITLsxiuO5ZPDa8LOZTyurEjrRb4wU0idyQWDL74mihpM l1wncflr/AeZ82TMK9Fl1vWaug== X-Received: by 2002:a1c:eb0e:: with SMTP id j14-v6mr2986495wmh.87.1525781807919; Tue, 08 May 2018 05:16:47 -0700 (PDT) Received: from glider0.muc.corp.google.com ([2a00:79e0:15:10:e0c7:92b9:c022:f69b]) by smtp.gmail.com with ESMTPSA id k28-v6sm37350084wrk.46.2018.05.08.05.16.46 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 08 May 2018 05:16:47 -0700 (PDT) From: Alexander Potapenko To: dave.hansen@linux.intel.com, mingo@kernel.org, kirill.shutemov@linux.intel.com Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, mka@chromium.org, dvyukov@google.com, md@google.com Subject: [PATCH] x86/boot/64/clang: Use fixup_pointer() to access '__supported_pte_mask' Date: Tue, 8 May 2018 14:16:38 +0200 Message-Id: <20180508121638.174022-1-glider@google.com> X-Mailer: git-send-email 2.17.0.441.gb46fe60e1d-goog Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Similarly to commit 187e91fe5e91 ("x86/boot/64/clang: Use fixup_pointer() to access 'next_early_pgt'"), '__supported_pte_mask' must be also accessed using fixup_pointer() to avoid position-dependent relocations. Signed-off-by: Alexander Potapenko Fixes: fb43d6cb91ef ("x86/mm: Do not auto-massage page protections") --- arch/x86/kernel/head64.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c index 0c408f8c4ed4..1b36ae4d0035 100644 --- a/arch/x86/kernel/head64.c +++ b/arch/x86/kernel/head64.c @@ -113,6 +113,7 @@ unsigned long __head __startup_64(unsigned long physaddr, p4dval_t *p4d; pudval_t *pud; pmdval_t *pmd, pmd_entry; + pteval_t *mask_ptr; bool la57; int i; unsigned int *next_pgt_ptr; @@ -196,7 +197,8 @@ unsigned long __head __startup_64(unsigned long physaddr, pmd_entry = __PAGE_KERNEL_LARGE_EXEC & ~_PAGE_GLOBAL; /* Filter out unsupported __PAGE_KERNEL_* bits: */ - pmd_entry &= __supported_pte_mask; + mask_ptr = (pteval_t *)fixup_pointer(&__supported_pte_mask, physaddr); + pmd_entry &= *mask_ptr; pmd_entry += sme_get_me_mask(); pmd_entry += physaddr; -- 2.17.0.441.gb46fe60e1d-goog