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=-9.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=unavailable 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 AE8B1C388F7 for ; Fri, 13 Nov 2020 07:06:59 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 3153020B80 for ; Fri, 13 Nov 2020 07:06:59 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="gH5zY4eg"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="BkXLBtxo" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3153020B80 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+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=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=NA2iSv+RO6XDQuEuVow03LatlPM1D9jQ95NhxiUfE20=; b=gH5zY4egM602aQ322k4m0u7L8 sJtKr/SPkY9MXPcroSsF3h1jozqTSty3bXmmJN0tl2wW/f02NU6wBW5YQhjt4/RiVTpc1iwAUHSCe QUlK7HGdquClMjRoQlmMX179rhMfZGGxEA2kFkeAsPGALbikIxOSySm/aRd9HirNoBD88C1+d9Bo6 S8YFy7oxwKi29qVplHMebjajudJExOfJ9uZyj7K2RpXx2NPlOnH+i8oU3w8rPeHvp97Oa/8oiOazX SU2VdSQO+m8KSKyTHYcMLn6FsfidehTk6vrhtGZ7e/48kAE0BRJBzM81PNp9G92GlhcfdLP4K2kbd VrehaRAPA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kdTAF-0003Mu-Q0; Fri, 13 Nov 2020 07:06:31 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kdTAC-0003MA-QM for linux-arm-kernel@lists.infradead.org; Fri, 13 Nov 2020 07:06:29 +0000 Received: from mail-oi1-f170.google.com (mail-oi1-f170.google.com [209.85.167.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 607BC221E9 for ; Fri, 13 Nov 2020 07:06:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1605251187; bh=WbJxdX7i65iGGj/6JCfUwtS00InwXWVNH2dZ9vBzjzA=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=BkXLBtxos2+dHXQKR73xsRhlNE/ZBRkb8xI71J38UxTAr6a88WPHgg5lIHl36Bnyv iWZ2s85aHkIzRr+J2YJvyzXEeKJytTKxMX3ZWxW91kEeO42AfAMJd7rNuopfexmQ72 sBHhr3rCXARFX1MypejNSy8Yr+Hkcu20oVDitjJk= Received: by mail-oi1-f170.google.com with SMTP id m13so9401014oih.8 for ; Thu, 12 Nov 2020 23:06:27 -0800 (PST) X-Gm-Message-State: AOAM5309KPkfhowrAcqahpg7WFbsUpdrg89C7p/Tl7Os2YAB8z4sUeev gnR4+ZU9iH7Y3xHMb0DP+55b/PygbzWrgIucp1s= X-Google-Smtp-Source: ABdhPJzEAFrL833vXXI/5kawhAcABgyWROXiFnbyR8XMw9mygPbwEZ+qGU6FZYqPVTU6pFU6ws0nE8vnDdjAw5T9vVg= X-Received: by 2002:aca:c60c:: with SMTP id w12mr589488oif.174.1605251186667; Thu, 12 Nov 2020 23:06:26 -0800 (PST) MIME-Version: 1.0 References: <20201014081857.3288-1-ardb@kernel.org> <160503561804.1015659.16599672230432576934.b4-ty@arm.com> <20201112092558.GC29613@gaia> <2f0d9bc5-6288-7388-ff10-97198dabac6f@arm.com> In-Reply-To: From: Ard Biesheuvel Date: Fri, 13 Nov 2020 08:06:13 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] arm64: mm: account for hotplug memory when randomizing the linear region To: Anshuman Khandual X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201113_020628_994537_B13C596E X-CRM114-Status: GOOD ( 36.72 ) 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: Mark Rutland , gshan@redhat.com, Steve Capper , Catalin Marinas , David Hildenbrand , Linux Kernel Mailing List , Steven Price , Mark Brown , Marc Zyngier , Will Deacon , Linux ARM , Robin Murphy Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Fri, 13 Nov 2020 at 08:03, Anshuman Khandual wrote: > > > > On 11/13/20 11:44 AM, Ard Biesheuvel wrote: > > On Fri, 13 Nov 2020 at 04:16, Anshuman Khandual > > wrote: > >> > >> > >> > >> On 11/12/20 2:55 PM, Catalin Marinas wrote: > >>> Hi Anshuman, > >>> > >>> On Wed, Nov 11, 2020 at 09:18:56AM +0530, Anshuman Khandual wrote: > >>>> On 11/11/20 12:44 AM, Catalin Marinas wrote: > >>>>> On Wed, 14 Oct 2020 10:18:57 +0200, Ard Biesheuvel wrote: > >>>>>> As a hardening measure, we currently randomize the placement of > >>>>>> physical memory inside the linear region when KASLR is in effect. > >>>>>> Since the random offset at which to place the available physical > >>>>>> memory inside the linear region is chosen early at boot, it is > >>>>>> based on the memblock description of memory, which does not cover > >>>>>> hotplug memory. The consequence of this is that the randomization > >>>>>> offset may be chosen such that any hotplugged memory located above > >>>>>> memblock_end_of_DRAM() that appears later is pushed off the end of > >>>>>> the linear region, where it cannot be accessed. > >>>>>> > >>>>>> [...] > >>>>> > >>>>> Applied to arm64 (for-next/mem-hotplug), thanks! > >>>>> > >>>>> [1/1] arm64: mm: account for hotplug memory when randomizing the linear region > >>>>> https://git.kernel.org/arm64/c/97d6786e0669 > >>>> > >>>> Got delayed and never made here in time, sorry about that. Nonetheless, > >>>> I have got something working with respect to the generic mechanism that > >>>> David Hildenbrand had asked for earlier. > >>>> > >>>> https://patchwork.kernel.org/project/linux-arm-kernel/patch/1600332402-30123-1-git-send-email-anshuman.khandual@arm.com/ > >>> > >>> There was a lot of discussion around this patch but I haven't seen any > >>> new version posted. > >> > >> Just posted before some time. > >> > >> https://lore.kernel.org/linux-arm-kernel/1605236574-14636-1-git-send-email-anshuman.khandual@arm.com/ > >> > > > > You failed to cc me on that patch. > > I could see 'ardb@kernel.org' marked as a copy on the patch. You > did not receive the email ? The CC list is in the commit message > itself. Even the lore.kernel.org based URL does list you email > as well. Not sure what might have happened. > > Cc: Catalin Marinas > Cc: Will Deacon > Cc: Mark Rutland > Cc: Ard Biesheuvel > Cc: Steven Price > Cc: Robin Murphy > Cc: David Hildenbrand > Cc: Andrew Morton > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-kernel@vger.kernel.org > Right. Not sure what happened there, I may have deleted it by accident. Apologies. > > > > The logic looks correct but please fix up the comment block: > > - PAGE_END is no longer defined in terms of vabits_actual > > - bits [51..48] are not ignored by the MMU > > > > Actually, I think the entire second paragraph of that comment block > > can be dropped. > > And from the commit message as well, had reused it in both places. > > > > > Please also fix up the coding style: > > - put && at the end of the first line > > - drop the redundant parens > > - fix the indentation > > Does this look okay ? > > static bool inside_linear_region(u64 start, u64 size) > { > /* > * Linear mapping region is the range [PAGE_OFFSET..(PAGE_END - 1)] > * accommodating both its ends but excluding PAGE_END. Max physical > * range which can be mapped inside this linear mapping range, must > * also be derived from its end points. > */ > return start >= __pa(_PAGE_OFFSET(vabits_actual)) && > (start + size - 1) <= __pa(PAGE_END - 1); > } Not sure whether the whitespace has been mangled by the email client, but the first ( on the second line should align vertically with the 's' of 'start' on the first line _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel