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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B5DA7C369D7 for ; Thu, 24 Apr 2025 12:23:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D83246B00B2; Thu, 24 Apr 2025 08:23:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D09DA6B00B3; Thu, 24 Apr 2025 08:23:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B38326B00B4; Thu, 24 Apr 2025 08:23:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 8F2B96B00B2 for ; Thu, 24 Apr 2025 08:23:40 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 711F48200F for ; Thu, 24 Apr 2025 12:23:41 +0000 (UTC) X-FDA: 83368853442.19.C9D507B Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) by imf11.hostedemail.com (Postfix) with ESMTP id 7FE6040007 for ; Thu, 24 Apr 2025 12:23:39 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=ventanamicro.com header.s=google header.b=Wzli17Ge; dmarc=none; spf=pass (imf11.hostedemail.com: domain of rkrcmar@ventanamicro.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=rkrcmar@ventanamicro.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745497419; a=rsa-sha256; cv=none; b=VPWdxIoiwVyViaVvUyU3Vt2XM7vsf3MJgLAKB/A5PXa3AXBE+TzpESCzRf6C9KqWtU1B+5 kmbn/uXsaB+EOHvaf5q4bNpJaZ0lRgZ15x4IhHK8qUmX7nZW7KbTgBTBN5FAumIszK4lIb V0inBpcn6xIdA+eXPuTgOE+vEzs7TYs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745497419; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nffUUxHQRUxihyV+Es46LKx5IUoFWP6+nxUCQrf1fjs=; b=CQUmXdl7xxsYk9FkC0JazexnrCXRjKsQN/shxIIyjjvJBn+pfoUPAzpotGAfkfEKzOW+Re S9ereFQq2kS0qEbCkDPB6XR2Fruun9NYw1dh4MiAakSPXNnRWe4CnhNOzKXAeg6bo+V4Tx OFb7BA7/Py+5PgnLpQhOUkr5VTR5+f8= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=ventanamicro.com header.s=google header.b=Wzli17Ge; dmarc=none; spf=pass (imf11.hostedemail.com: domain of rkrcmar@ventanamicro.com designates 209.85.128.49 as permitted sender) smtp.mailfrom=rkrcmar@ventanamicro.com Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-44069f5f3aaso1302105e9.2 for ; Thu, 24 Apr 2025 05:23:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ventanamicro.com; s=google; t=1745497418; x=1746102218; darn=kvack.org; h=in-reply-to:references:cc:subject:from:to:message-id:date :content-transfer-encoding:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=nffUUxHQRUxihyV+Es46LKx5IUoFWP6+nxUCQrf1fjs=; b=Wzli17Ge0ooD93kXDIp2u3QQB1aCbRIpLPJz99u78LNeSsR2UYGPlkCgsTLAZsxgng BL339Srs9WyRxH7f5xbDYffwjFiR6UzExFJccu07jELOR24CQYBFmBDT4t9lKb/s7gje HUT94NqPK6XaO5pRNP0cuSjbsO5eSOC3Zaoh+efZMiYbEs65UIUMM5DyMAbBWatbAYU9 1nELTczzIylEgJBx+/0bughFWeYU2cVPt1/xyDD01gLt65LGaNk/uOrtZOegK261XQRT RSUvyJGycfYdD+3EMVeohrKRkP413AzAFXD652BAnAwkiZ+Kj0FuzXe5ajoh5HngsvDP sM4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745497418; x=1746102218; h=in-reply-to:references:cc:subject:from:to:message-id:date :content-transfer-encoding:mime-version:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=nffUUxHQRUxihyV+Es46LKx5IUoFWP6+nxUCQrf1fjs=; b=GwJZnycmHwwRbwYMOeNLeB49DkJXFSnzL29rKnvPvOd7pEe2tRotin11yYsX5kpIMa 8yoJotDI9VPcDc8NBURIXHbNhZy3xQ1LY+yf9pDQos1/KrBHHWY5+xqlJo1hz/VSyAGq dZfWP1aoqUk1NCP85iN7Al8ZqB791cNVhSp/MoDsae2C/9Eg3cQq7VQVPRA8IOItVxHt wJRRrDiphX/hmJ08qrSOR8gMnCWwgy793fZtEsTAYI9i/vu9H6YvLx1Szm6TRRsr+9cK PJ4UXOEcqpaF0ZrP3B3JFLGRMW7EHKO/Gfg5b618ysNSN8/f7EjdDVvhmdUoTyavfsFe FQ0w== X-Forwarded-Encrypted: i=1; AJvYcCWiAIOqK1DOeq61HETuy0kdNSjldLsOEoytLUc/192lBzQky9tCQEpd8aUZN9p9WrwuQiHhCFH5yQ==@kvack.org X-Gm-Message-State: AOJu0YyTN0AzvksX2CwSZOXi8iiBJIx4B4m+xuHlKwFiKAa0BqzLjm4B nCYAht/JkbKzXPGKP4Cp4HOwGC5L8TVSc9mM+vpqaoGR3QrHB/smmdKrVwpac+w= X-Gm-Gg: ASbGncu94qBDg7VucxntIizLJ9xO3GsgayDNQI5DOig+Z5XCY5xqwcNVHJzd+PVOV4M MBvCoN8FntALRKI1konLzIgNHTbEBqG6rpZH+nnKCC1uZz5Fc6nmh2HoukLG0SsMElmNRPt0sZK FPZf5hv/OZi525Icdq/kqQwv7bc/BpLsWgwebLdFQZ5LXiJKJCJz+aGukYbH59eh73yzhOyzQxC ohNB6d4apb0NFXzMTJz+9QlS+IwBL2iOW/qCa2NYDPaTzCDSJqArySNavqaGYR/SAgTgcIQKgmk s751Wz8csOhzMukVaPKMGMOEZzfh4b1v8WtqwsAeKrcsf+7DiLD6GHWK3d0= X-Google-Smtp-Source: AGHT+IFvpk8fVElfDmbD5bbQ4KBSF4oRicSe9nZGd6eQAPt/95H7RizUp5Ju8acqfaiZr/JLSD9aIA== X-Received: by 2002:a05:600c:3516:b0:440:58d1:7ec3 with SMTP id 5b1f17b1804b1-4409bda5fadmr8020715e9.6.1745497417906; Thu, 24 Apr 2025 05:23:37 -0700 (PDT) Received: from localhost ([2a02:8308:a00c:e200:b30c:ee4d:9e10:6a46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4409d29bfc4sm20203525e9.8.2025.04.24.05.23.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 24 Apr 2025 05:23:37 -0700 (PDT) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Thu, 24 Apr 2025 14:23:37 +0200 Message-Id: To: "Deepak Gupta" From: =?utf-8?q?Radim_Kr=C4=8Dm=C3=A1=C5=99?= Subject: Re: [PATCH v12 06/28] riscv/mm : ensure PROT_WRITE leads to VM_READ | VM_WRITE Cc: "Thomas Gleixner" , "Ingo Molnar" , "Borislav Petkov" , "Dave Hansen" , , "H. Peter Anvin" , "Andrew Morton" , "Liam R. Howlett" , "Vlastimil Babka" , "Lorenzo Stoakes" , "Paul Walmsley" , "Palmer Dabbelt" , "Albert Ou" , "Conor Dooley" , "Rob Herring" , "Krzysztof Kozlowski" , "Arnd Bergmann" , "Christian Brauner" , "Peter Zijlstra" , "Oleg Nesterov" , "Eric Biederman" , "Kees Cook" , "Jonathan Corbet" , "Shuah Khan" , "Jann Horn" , "Conor Dooley" , , , , , , , , , , , , , , , , , , , , , , "Zong Li" , "linux-riscv" References: <20250314-v5_user_cfi_series-v12-0-e51202b53138@rivosinc.com> <20250314-v5_user_cfi_series-v12-6-e51202b53138@rivosinc.com> In-Reply-To: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 7FE6040007 X-Stat-Signature: hn13q5qahd5nb669bk3nrzr7od4enyci X-Rspam-User: X-HE-Tag: 1745497419-272854 X-HE-Meta: U2FsdGVkX19DADdbX3n64N1qBhAra9vJE9eabg3jD71Ni/f3aLGj6DsmNegdMnguaHMNKwAItjs7dVYIybeXaTQP5klrgFi0eavyXvL3Pt20SmcgNqlY2BoNtgh5PA0qH0oIbfdBplMV1Mg3v8Ej06ePAqrjyxGaCk5Mj1iAQvmn6n1T/JV4ywCIldihyUqOHqX/Xprw5kCoRh6wFh4Usq5hDzuKnRqaW9j8kCAy8gYJOBmYvAkItNnp4dU5s36JxoCvR+kzIluAodqMdCSycMcvyukmYAlcDkM4WkgXsB0JVArffiO7Hrg63hRrSIQXqF2ti0Rd4dzCX0Ds3Xdvoix/5HUqSd0t/8CCRDB5ecIM0Mlq7e0inNuFSryW2E9bdPkAfCOeOyu5WUSznGqLno7vbdrnqsESMczKPtWVE7A63/wIaNLeJW+EVH+N2wzOisqP1Ppyr9dIWV1APLjGPiFIQI/gOjimoSIIPntZja94LPso8S1mQ1RPLv7VLJlTafzjPRco0rqpkM+piwSJtI/BM46WjZr5TK+c3/Mj4RPnCUk2QYJ+npYY4FnzPNsao+I/aydJEOHvYWn+qCbjImGhVg8j+I4gVIP28vhEgxFJ+PCYgsnihTfGDHMqeoHimXlG/qui5VmS4HUHwnxov+8Jk7lIxt5vzAJv6Sv37sdjovkZg0H4Plo6yCpBH3sU5fzWnVWVFvVui1be81Ao7ymFe8GmCpjhSq+7Rr6HLxCy2itR4bdF3khxiGqCu03UXzj+12xnXEsM1atjqOhYophqC8SGibR75RMtXmoHC30i3faFNGA6FEcg2Ioy2M1rt9pvZ1xF/0F0wfYjgVrJ4zjtVjLVSJlbryF2RHHfL9nI6xmDGoxoZiScWTBX+RG83bnfiwLA2dpzOAuQJKDVo2KJ50wciOpMwu6IOP+d5Q6pHlW9SK6ecPgK/J3NHdvS8aMntVJyQ5YAAjCpbDG dsDJVaQy YVzLFk3p2r70UXW7tBoICIcSLkape76I15sUjEVh8aB5G8IvPkBiNCptYC9QxJzMVFIADf7LLplJD1QOOwEsvqt2JUZVLylhC5uwGncJuDsJQkjjsl6v4ms+YGnOmySg5cAGuwb6TG/hlLoB9rcjCSMmn8BjTq2bLNH9GXf4oUCbZO6i+rE2mh5oTIeakSQqbbfZAPsIW6/4zMmoj9nsD6U5xpTRs23tQ7IVHV0/13LDMzKUtgfyFgEMn4zhkWeL2gBcdl0O+bvZFPcz3pjaJhVuw5gEyi3aqd7QhiX/zLLU6y4x6wQjV9TF42kEx3TuAEEK8H15EsspMgXpsqCI/jHOCsi7uMhC3fR7dWEJSBd+8mtFGKrLpb80DAW04+LvmSatrjnc3YnD8SPhlWB3hxlRej8DDBiplWP+BKGxW43bxVkbcHKlW++2XN8napd7MZ0coY8qUJ8UTI8jhjw+eWyfW+aN9fT6I1OsemUwW1B/yPpCQkEogZDVoNmgKG2noFags5y8DdW7zZFufPy6Qtnxo2b4x7XmsW/sXoxRV0ZoGhGMyrLKiZ/WOq8HiezNRVS3e+H2q1fw9oobSxvOfuZYxVsdzxHMS9oWYSqvpMfaG6XRFYqx7AuclqkXqesNDiLNqUVKthYoFeS8gGkl1dMFXo2J302AWnVDqlefwtUiBa0LmSRuP2lTlCA+5ozA2P897KJjVZ40MRxo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: 2025-04-23T17:45:53-07:00, Deepak Gupta : > On Thu, Apr 10, 2025 at 12:03:44PM +0200, Radim Kr=C4=8Dm=C3=A1=C5=99 wro= te: >>2025-03-14T14:39:25-07:00, Deepak Gupta : >>> diff --git a/arch/riscv/kernel/sys_riscv.c b/arch/riscv/kernel/sys_risc= v.c >>> @@ -16,6 +17,15 @@ static long riscv_sys_mmap(unsigned long addr, unsig= ned long len, >>> + /* >>> + * If PROT_WRITE is specified then extend that to PROT_READ >>> + * protection_map[VM_WRITE] is now going to select shadow stack encod= ings. >>> + * So specifying PROT_WRITE actually should select protection_map [VM= _WRITE | VM_READ] >>> + * If user wants to create shadow stack then they should use `map_sha= dow_stack` syscall. >>> + */ >>> + if (unlikely((prot & PROT_WRITE) && !(prot & PROT_READ))) >>> + prot |=3D PROT_READ; >> >>Why isn't the previous hunk be enough? (Or why don't we do just this?) >> >>riscv_sys_mmap() eventually calls arch_calc_vm_prot_bits(), so I'd >>rather fix each code path just once. > > You're right. Above hunk (arch/riscv/include/asm/mman.h) alone should be = enough. > I did this change in `sys_riscv.c` out of caution. If it feels like un-ne= cessary, > I'll remove it. No hard feelings either way. I think it makes the code harder to reason about. Here it is not clear why this caller of ksys_mmap_pgoff() has to do this, while others don't.