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 63B78C54E60 for ; Tue, 12 Mar 2024 15:56:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D03778D005C; Tue, 12 Mar 2024 11:56:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C33AC8D0057; Tue, 12 Mar 2024 11:56:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A3A1C8D005C; Tue, 12 Mar 2024 11:56:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 88A788D0057 for ; Tue, 12 Mar 2024 11:56:57 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 54094807B3 for ; Tue, 12 Mar 2024 15:56:57 +0000 (UTC) X-FDA: 81888840474.08.C810AA3 Received: from mail-yb1-f201.google.com (mail-yb1-f201.google.com [209.85.219.201]) by imf20.hostedemail.com (Postfix) with ESMTP id 6F67F1C000D for ; Tue, 12 Mar 2024 15:56:55 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=RkzKdPtb; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf20.hostedemail.com: domain of 3RnvwZQoKCDUpfjipRYdVUXffXcV.TfdcZelo-ddbmRTb.fiX@flex--yosryahmed.bounces.google.com designates 209.85.219.201 as permitted sender) smtp.mailfrom=3RnvwZQoKCDUpfjipRYdVUXffXcV.TfdcZelo-ddbmRTb.fiX@flex--yosryahmed.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710259015; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=zlk+aNCie6HXTjVy40lS6l4zYMw7smybyoWxAq6T2Xk=; b=4uddBqNcl2b8qzTG0io2R+xLtQezKIYM+liXDZ1pnxWt24IN7XAphG0PWCjQ/WSUO3OMkv 40anaC1P0iNqX5G0EjqNQ4V5ijFFbB7JJYnwwicxOuTIWNUX3ypxg31GfWNT5bT4gG6gwe +LFH0kiiNKZz/HbJ/yl9JN3xg9ShXcw= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=RkzKdPtb; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf20.hostedemail.com: domain of 3RnvwZQoKCDUpfjipRYdVUXffXcV.TfdcZelo-ddbmRTb.fiX@flex--yosryahmed.bounces.google.com designates 209.85.219.201 as permitted sender) smtp.mailfrom=3RnvwZQoKCDUpfjipRYdVUXffXcV.TfdcZelo-ddbmRTb.fiX@flex--yosryahmed.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710259015; a=rsa-sha256; cv=none; b=b8cfdU29dD59i4AaKcuv5QQlDA3zjAxMVrLPaO+e03s2HKcH/9vax32uY9rJ+ObHXt1lgO DwL6U5XEEiylMtfgIgOFMq9WhtCkUGhxbKffGU8e+e5owsz03r0VuDz1Apr7Rydpa2BEMb P5tVFfdAzD/C2dv7xs1If4EfVU01m+8= Received: by mail-yb1-f201.google.com with SMTP id 3f1490d57ef6-dc3645a6790so10054947276.0 for ; Tue, 12 Mar 2024 08:56:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1710259014; x=1710863814; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=zlk+aNCie6HXTjVy40lS6l4zYMw7smybyoWxAq6T2Xk=; b=RkzKdPtbyPpKXxoOBm4xbtpC4K7/e5fJV7+zKVgdPVJd+UxZJtJotIjxPBOUR6C16/ WWVc9Lt0e4jHvNz/rJxfPQukIK2ogiHXsCRp8trOxlYo4joBTObcGpz6OGXkF1TU2s6h 9rfhrpjVtM2FQpakBubjrcL0+NlR54nwneQ1u/OugDlJ4ViDdmcekH85OBnOnsPr5OIE 3Bdu3NV7YsMDB7nUbwEfl5Hlb44XdisJCoK6WSHjI2Kf1OGZvCwgkESLQTCw3pTfp0ly PL85rr32nodlnjv/AE2gf/XDtQSSgTK5rxtdiQb/QPoPyU48T9q9pXrQnTxZMus3Ucpc 5p9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710259014; x=1710863814; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=zlk+aNCie6HXTjVy40lS6l4zYMw7smybyoWxAq6T2Xk=; b=qhDG48IeW8pI0zD0uiBuVnsizxhfXvPBKh/tar7k8Zn7qJawYEuZ2novYAed4Lzw21 u0GHz6F5qKYCK5slNijdkXvTeBfwmgYX/wNiA8i0flnnOhnpmITw0uQQVfFCMahhVdiL Z+cDjKy9VnBeP4Vjc0QB91AktI3YHHZ+HldDpIu/Xx9AqeJ4POeeDVhxic0UG530/IBY T6zTBQn8Hji90eTxBKVaMf+xAiRq7NsQBnoZO06sBTLrAaFcp0h21g63zbruQhjwWm/U yiz4vFE+mx+cV60EM6vjfA8NbLJskQWym/GMhUI+8abA8aDxML9iFacBy8y6lJFyqcXi TKNw== X-Forwarded-Encrypted: i=1; AJvYcCUvpbZckHLjwvXjsuSubUfOiCNV19pLeBOdotZoTwKOUkaSh1aXnSf4ZuW02SjQbW4h360m1k2sHTB5vL/oUXP23jE= X-Gm-Message-State: AOJu0YzFo0mZAi6lCnx95xVI5GWYTv14r6RhD2eKVkvYjyNwbMb3buNG HBr8he5hJTRqyX3T9dfKOzRbQj3HR8a5y2R/6X+dlJJmvyDUfV0HtmN7herUNWErfxrLzaVmP78 YZmOE/CWaA7AeURvQGQ== X-Google-Smtp-Source: AGHT+IHyJoqCC0NaihyP5D4D/Ot3zHwDly5rqaMSbNaNRucYa8YyWEm+aw8zRYzIK3OVa86EMuwxIXsQ2czaLmfd X-Received: from yosry.c.googlers.com ([fda3:e722:ac3:cc00:20:ed76:c0a8:29b4]) (user=yosryahmed job=sendgmr) by 2002:a05:6902:110a:b0:dcc:50ca:e153 with SMTP id o10-20020a056902110a00b00dcc50cae153mr2676138ybu.7.1710259014520; Tue, 12 Mar 2024 08:56:54 -0700 (PDT) Date: Tue, 12 Mar 2024 15:56:41 +0000 In-Reply-To: <20240312155641.4003683-1-yosryahmed@google.com> Mime-Version: 1.0 References: <20240312155641.4003683-1-yosryahmed@google.com> X-Mailer: git-send-email 2.44.0.278.ge034bb2e1d-goog Message-ID: <20240312155641.4003683-3-yosryahmed@google.com> Subject: [PATCH v2 3/3] x86/mm: Cleanup prctl_enable_tagged_addr() nr_bits error checking From: Yosry Ahmed To: x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Andy Lutomirski , Peter Zijlstra , "Kirill A. Shutemov" , Rick Edgecombe , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yosry Ahmed Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 6F67F1C000D X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: qk7dm9whj8kmfcw7zbf8zx9psdi9bo6w X-HE-Tag: 1710259015-356599 X-HE-Meta: U2FsdGVkX18StIGXI3PB8HH9q9IUl4caF6GYHR5lfurWn169pFeylGGAfsRV6UfSBlE2epozpreOGp86zi99QGyKkTx/5CmCDEEhvdhKI6RgvSxYRlvQNHjZ7Td2cPiD0bGOMrwci71uxrUTFL8uFZockaFvjkGytMOBFd6+MeBPtZyE4TUPp3DtpHrK/0SX83OKh+StZdJ9uIhxuf6e52itlgPbQ5X3wpxYayy+K0JVTrzw1uU6qaojV4Rp9R71yGdYmJ2jlNifSje30DL40tXLh7OF8C2OF+/uPpgtQeKS3/SCGsmdQESgw4pNMFhwAd3q8Pw1qgVxOeEzT93cU+BsIdhG0uj+nrZeIorPq80T00GjSm15Pz48+oOLtjGpf4Cj3Xl4mtyaXxS4Ys1wI0ImcFdzPJuZVj85NZuAWA6DVynYRVRJTg8t/h+hn1mgtx2qGL839DgArnaIcP9qIiSy4XCS7IzhFyX83xzof2D2S//qV/p6EtZ1KffWCurp4vEj2/a288godMk40hT9sI0MkMv2UDtW/+LhGmegpTY3u9dgfaU1WD2FLTHXWK+T2wL0IcmCTQeHujY7jm864SiXhAqXVAm/hbbaK0IAZK3QkRqI3MHibZTZOJUw7o5LWRqTvFOTyFlaW9odmJJ20zF/ELAxsV0GD3f0NYXNiaMjmX0VumwNrv2EOZJqt4JgDLq5SfTNMU8E4uLmjSBqdpR/H0q1heNYYZWq45vQM0XtacQH3NnKXaB1EqCsnh3Dw6bqT2BqRNkp8rnHEsd9UtRgSJUJgEn/uGQj0991ZKq23GEr0chJqNI4pPsdmpzvhEAZE/rvpUz/oNq2xoqC0/4j6ruvy1Uzv0g761Wk42/oIoETVp3esl8BKi5tP1F2mXYWy6jKiwuVAC6gwNwOSfpct/GNN6PCT3bhb6JQNM4BGqOtVWORDBnysENMVECbAfesYPFSTWA3Dgnamvq 3qSj12PS 8YW1gX4bH/XymZtCGGIS5G64QjL3Vy/J3w2rzvRGFBZ/7zTOrH+QOYU33vq3N6bNhd7dybvnyeAEfxt+NMJEkClXa+0vwgg4TPb2ii9WcD43iGpFvvCwKwKwlZJ1AiCAGh51qtlm8Qu6oiyOwxDLYJDWWYxfifOdUE1alh/8wpWInd6uK7BZG1R8G7siKxKE/gQ5SaWXkX4Fh4uke3BaGmQ3g8DOt8B1MhWFlXQ/tqunnYivyAxnDDbPPwieQKWHARLy6YhopLz9UGwVWvf9s795A240F0IZYr6mnu62qAPsoua2HQKJjOp7RXIsAyPz/SG92wzTfveoFqQp+ftbjTf2n1T5gTumDVhYqpeyYAzg6V3sQ3Uhh9PJY+VNdRcg0asDaQsJNYyPqPYExIRMYKSUXmOetpL+hkfylBLYSSBOkebSr5QE3GNuY7GvOYPUXIdO6SK/jUfq7dwSIaUZOmegrXlPyKKu9j2IhoCwaDIZawITECAGtplBaqJFrKd4J0cOiBc3k5Scuq/UrqXSsr9kikg+xPJqlcTU7y+DENuUpd74zhZiFGJkGvoqe29ZwMI7cagrtqfTWv37IYODZOmQLQvtVYQ4vBl7o7oXhlWMxNiKM2KTSTGXfqmFydzY2Titi9kA9Bzb0ibcXQe3Hi6C2nUJvtHBjvQkb+GMW7WFbWptQTLGS7iMJ5WvcqTBOsZ/bvZFrxeIiZJ3OacgXR1y/qA== 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: There are two separate checks in prctl_enable_tagged_addr() that nr_bits is in the correct range. The checks are arranged such the correct case is sandwiched between both error cases, which do exactly the same thing. Simplify the if condition and pull the correct case outside with the rest of the success code path. Signed-off-by: Yosry Ahmed Reviewed-by: Kirill A. Shutemov --- arch/x86/kernel/process_64.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c index 3dd8c1f51e45c..8349431136530 100644 --- a/arch/x86/kernel/process_64.c +++ b/arch/x86/kernel/process_64.c @@ -783,17 +783,13 @@ static int prctl_enable_tagged_addr(struct mm_struct *mm, unsigned long nr_bits) return -EBUSY; } - if (!nr_bits) { - mmap_write_unlock(mm); - return -EINVAL; - } else if (nr_bits <= LAM_U57_BITS) { - mm->context.lam_cr3_mask = X86_CR3_LAM_U57; - mm->context.untag_mask = ~GENMASK(62, 57); - } else { + if (!nr_bits || nr_bits > LAM_U57_BITS) { mmap_write_unlock(mm); return -EINVAL; } + mm->context.lam_cr3_mask = X86_CR3_LAM_U57; + mm->context.untag_mask = ~GENMASK(62, 57); on_each_cpu_mask(mm_cpumask(mm), enable_lam_func, mm, true); set_bit(MM_CONTEXT_LOCK_LAM, &mm->context.flags); -- 2.44.0.278.ge034bb2e1d-goog