Received: by 2002:a05:6512:3d0e:0:0:0:0 with SMTP id d14csp337775lfv; Wed, 13 Apr 2022 05:11:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwD8otbMiCoBCkTc+ugLBQhTfYS0/kW9eFppWAWexIewuthuRH6sPgYnlFvhG0I4F41gdY3 X-Received: by 2002:a17:907:3e98:b0:6e8:b572:f376 with SMTP id hs24-20020a1709073e9800b006e8b572f376mr6197363ejc.609.1649851869922; Wed, 13 Apr 2022 05:11:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649851869; cv=none; d=google.com; s=arc-20160816; b=d2j63gze4dB7rTHiJYW7PbAA01XHzadtvWK3Cv6O/ftJnLktQRlSzPLe7jkKpmdPhF q0P4Rc5Yh7XvPiXIOpCHeJoqZ6qTUow7xNq1Hvh8rACpikTPkwY/c2j/1F5sN2OwksV7 G2+8JjNxgk4q4Sn1MoMzf9Fp0a1W3BO8rbjIIsePJZoqQbRJ/UtUOgo6f41aelMqgPfx UkWFTsAhxQ1JLWxsMemiGwbtvxSOD4WosBNmtgEY9Ng+a0T7RUbl8PLbYfUwLj/i8vpF 34V6zycKXPpfi6LQWPWU+QbEkgN5DjCtE2IY8nH5dFOkE6yTHgS0E9xHF76+K32eyW2Z PuDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=98UsXQix7jmh2cjHZ+lRGQpOdqdEegIRaK/uMV/eJ28=; b=0/bcw97l7TOQWx1CLrLoHhjyS7lSR421LnmwX6Ba6iyovknFJOE4NyT9YkYv2A7wWr mcU8jhVWClC4Mxu3kNW+pSAvRdc02gBx+8XnHL9czDsxdawN8AGkG48D7KtZqVqS8UvZ DODPK777xsv2tBsGPkuK85eHDtJJk3j6a5yoEWzB1K3x8gB+yt58G91GpsTNksnmN+/d HSqV/tGOExJjlgkZv7VrF7YbQ5Am7aP7dd95ovdlQ8rJXPf/+eMz3NBdA1DBwtlz8Ls9 bnXXRxCkFI1NaPuShEn6AKtBFTeyuJnhsir42icdccJ5EgQVlbFXc0oxL7DXoA6KmwNd RyVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@vrull.eu header.s=google header.b=iVK5UmVv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t6-20020a50d706000000b00418d8824de6si1530600edi.252.2022.04.13.05.10.37; Wed, 13 Apr 2022 05:11:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@vrull.eu header.s=google header.b=iVK5UmVv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232098AbiDMJOI (ORCPT + 99 others); Wed, 13 Apr 2022 05:14:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52912 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234326AbiDMJNu (ORCPT ); Wed, 13 Apr 2022 05:13:50 -0400 Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 11DC92ED6B for ; Wed, 13 Apr 2022 02:11:23 -0700 (PDT) Received: by mail-wr1-x436.google.com with SMTP id e21so1645619wrc.8 for ; Wed, 13 Apr 2022 02:11:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vrull.eu; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=98UsXQix7jmh2cjHZ+lRGQpOdqdEegIRaK/uMV/eJ28=; b=iVK5UmVvCHhETfmtz2Qc+ZHtQcwLys6z2ZXcKFnORfL+TAUKnWFCasQFj4X/XBAtUu MTxinFP+6r4X88OLlV/7jz/M6eaqdHncUrrLxNBQIo6zEaqjn1RcdzhSGbNxOvU2uioP s68RG0sX988OCW6p/Go3qeRNJmWMGflCB/pulvnjJZSqvyRVd6NdBvPqYpmqctvPDtbw BgsVrFxGYWGdJQz6vrBt1+oRgZPcAZ32bAnkfALV4SKxNxC7i5taGxb/dAWT+jr4GmvP EmnO4/lWNUrzNApzvN+z4h7Fscw4G8hoDErt4ieBR5BTiGwR4jMcTLn9O4vSG8731rUo bnaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=98UsXQix7jmh2cjHZ+lRGQpOdqdEegIRaK/uMV/eJ28=; b=TqQbp8OpaZUZthSSe8vUrPe8XRI7oFph90ViY29PxkiGgqs3gFkWAX9x5IunjFu7pq WuyxntKld3aZgRjjovXlym0UKdc3ZQqWH/sQ6xlDPEeyWyfRvmILOAasqbsoZt3BkdlT ryjd9zVCt4odca1YjC1KU4LCV+/xn9dJWW4NlnNvTaoC3ySdBna4W/LwLXNV4s8/vLoj L0OLkfBGzXW2Z3PHZEpiSIihvxNjP1HGt7s1FzVR1Ccyh3XsoCl6Muwy3vGuaKtB41HB Ybe8Wk2zvS3k1RiigOn0w8UF05Lub+TY5oUxUVPMPzCvRyccQFZxoVhIhibfRk3cQznH 2KsQ== X-Gm-Message-State: AOAM533PdAHsQM8bpqPQXKozgpHHn4Hlif93Ni8DFhqYIIBroQfXWthZ D7s0Zi7UlE00/D/hSsHJ9/l82jspdmyg3mdymnY0BA== X-Received: by 2002:adf:e84a:0:b0:207:a697:462c with SMTP id d10-20020adfe84a000000b00207a697462cmr11096993wrn.312.1649841081615; Wed, 13 Apr 2022 02:11:21 -0700 (PDT) MIME-Version: 1.0 References: <20220413030307.133807-1-heiko@sntech.de> <20220413030307.133807-10-heiko@sntech.de> In-Reply-To: <20220413030307.133807-10-heiko@sntech.de> From: Philipp Tomsich Date: Wed, 13 Apr 2022 11:11:09 +0200 Message-ID: Subject: Re: [PATCH v9 09/12] riscv: add RISC-V Svpbmt extension support To: Heiko Stuebner Cc: palmer@dabbelt.com, paul.walmsley@sifive.com, aou@eecs.berkeley.edu, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, wefu@redhat.com, liush@allwinnertech.com, guoren@kernel.org, atishp@atishpatra.org, anup@brainfault.org, drew@beagleboard.org, hch@lst.de, arnd@arndb.de, wens@csie.org, maxime@cerno.tech, gfavor@ventanamicro.com, andrea.mondelli@huawei.com, behrensj@mit.edu, xinhaoqu@huawei.com, mick@ics.forth.gr, allen.baum@esperantotech.com, jscheid@ventanamicro.com, rtrauben@gmail.com, samuel@sholland.org, cmuellner@linux.com, Wei Wu , Daniel Lustig , Bill Huffman Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 13 Apr 2022 at 05:03, Heiko Stuebner wrote: > > Svpbmt (the S should be capitalized) is the > "Supervisor-mode: page-based memory types" extension > that specifies attributes for cacheability, idempotency > and ordering. > > The relevant settings are done in special bits in PTEs: > > Here is the svpbmt PTE format: > | 63 | 62-61 | 60-8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 > N MT RSW D A G U X W R V > ^ > > Of the Reserved bits [63:54] in a leaf PTE, the high bit is already > allocated (as the N bit), so bits [62:61] are used as the MT (aka > MemType) field. This field specifies one of three memory types that > are close equivalents (or equivalent in effect) to the three main x86 > and ARMv8 memory types - as shown in the following table. > > RISC-V > Encoding & > MemType RISC-V Description > ---------- ------------------------------------------------ > 00 - PMA Normal Cacheable, No change to implied PMA memory type > 01 - NC Non-cacheable, idempotent, weakly-ordered Main Memory > 10 - IO Non-cacheable, non-idempotent, strongly-ordered I/O memory > 11 - Rsvd Reserved for future standard use > > As the extension will not be present on all implementations, > implement a method to handle cpufeatures via alternatives > to not incur runtime penalties on cpu variants not supporting > specific extensions and patch relevant code parts at runtime. > > Co-developed-by: Wei Fu > Signed-off-by: Wei Fu > Co-developed-by: Liu Shaohua > Signed-off-by: Liu Shaohua > Co-developed-by: Guo Ren > Signed-off-by: Guo Ren > [moved to use the alternatives mechanism] > Signed-off-by: Heiko Stuebner > Cc: Christoph Hellwig > Cc: Arnd Bergmann > Cc: Drew Fustini > Cc: Wei Fu > Cc: Wei Wu > Cc: Chen-Yu Tsai > Cc: Maxime Ripard > Cc: Daniel Lustig > Cc: Greg Favor > Cc: Andrea Mondelli > Cc: Jonathan Behrens > Cc: Xinhaoqu (Freddie) > Cc: Bill Huffman > Cc: Nick Kossifidis > Cc: Allen Baum > Cc: Josh Scheid > Cc: Richard Trauben Reviewed-by: Philipp Tomsich