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 772B3C3ABCD for ; Mon, 12 May 2025 12:34:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5FBBC6B010E; Mon, 12 May 2025 08:34:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5AB236B0110; Mon, 12 May 2025 08:34:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3FCA36B0111; Mon, 12 May 2025 08:34:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 1B6356B010E for ; Mon, 12 May 2025 08:34:54 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5D57216109D for ; Mon, 12 May 2025 12:34:54 +0000 (UTC) X-FDA: 83434200108.28.8888E51 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf08.hostedemail.com (Postfix) with ESMTP id 30D9616000D for ; Mon, 12 May 2025 12:34:52 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=djUkDbye; spf=pass (imf08.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747053292; a=rsa-sha256; cv=none; b=Ii2wzHJ1AxrnX8MWaR0Mia6XQEtzRUG+KT05iAG2ti2Q6bD6WsXsfp1O+HUIkblLTPKpy9 8zIHr7/V6kXLPJr6bWjYUe/qopQxALcyBCSI+UxNL5IFW4Rxrp156FYO2SWmwz+AiC5iZs tCSPiBx7xvJmEDTxSrio4AQpX9jhejk= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=djUkDbye; spf=pass (imf08.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747053292; 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=2DrqxmiOL3McpG/dCHwH1I+FCiwsh4PlvLiMszfDdMo=; b=OEJy3ndYpAjXU8ySIBMVI9KXnFWuZhP3WbdCg/Fqm6Rutc71Zau/QJtiGp9EmmCxVLwlAO 54BtFi/mCD/E4rsk6n2OrsjogYrvnWG28s35R3uIwnPlnhzoCZKy7e+TjRAEGM/Vu6xmsN pHNcDXVRrGj6R9c4tqkWGrt1/Uhsgww= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1747053291; h=from:from: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; bh=2DrqxmiOL3McpG/dCHwH1I+FCiwsh4PlvLiMszfDdMo=; b=djUkDbyeDBBo9lu9zGXyjmFhhdvkytJChR+kZAG+dopSGwWeSEvt6Qu6lGmX8m7IQR67g3 OEdAMF46zMfXJkyGfD2r6WePSQbC+8UHS0RcG1XfXSfKKMSx1XATtf9B4R0smVsLN+aSIy R077AtUrZIrekL5u/XQLluN26NLsPfE= Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-67-6oHsWW6cPrSJpaaZJAPWEQ-1; Mon, 12 May 2025 08:34:50 -0400 X-MC-Unique: 6oHsWW6cPrSJpaaZJAPWEQ-1 X-Mimecast-MFC-AGG-ID: 6oHsWW6cPrSJpaaZJAPWEQ_1747053289 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-3a0b7124b5fso2810941f8f.2 for ; Mon, 12 May 2025 05:34:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747053289; x=1747658089; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2DrqxmiOL3McpG/dCHwH1I+FCiwsh4PlvLiMszfDdMo=; b=lnbhRwEbYwF4mfrO0e8Wj0IqgrnW++mNRPe0j33I0apR0Pcgdif9RMH0SI7ZxkpkzM JrCDImPTMCpHF7cKz/EMsOMuAk/FopHYFVWHi8huq3j/0CN/8XkKPbiTRAfjvKu9+0MJ 9Vfa4LksuAE+tmmlTU425gokK3wEd0yWBTKwBKFRQJ/oUWPSNnFHsMTXY5b094PoH7EW ZOLPTmVryTQGyIphuIQg61gFzClne+UIe1nr96JLuqs7EWSf4dve52WAhadZlSuwJHu+ M3jhMh9bNjrobwwOyDdAaw5nFJlbqE44Bck2AqPGLvZkwlXXIBxz3y6Hq7ydCd3E6wKO lCxA== X-Gm-Message-State: AOJu0Yw5P8ggbpkiPJiFnwKeqvOnaf5YQH4/ASFNZDXCjJ8qBwNzQIsg 4T5RO9tPd8cfUQcg3pm3oQA6ALkCmfaPnvm6DEgsciqp8attxL3kyQQofOndMaUhqi2msPM46Qi qMIclhs62hKt6dDgBeiyzQ7m/VyKPrCDxoGBYaprTUq8BrSZl X-Gm-Gg: ASbGncsNjenbN0zzoxKsKnC4Ri+wOT0mD3tkL8vsDTjzQazQb/8+oJmEJo/CpTiF4di N+HRWMpKZ7qrA3tyPX3LvW3zRltG5pzJu9gvnYONg7d6MX9jjqAcVX3tMA9MzVTEiNQaFhjPVTW /3MLm6v+HzmiNs4OEuznNwkBNT/VdVytpjkOjHG4snCrGfyMoyk0mWRFrD0Jf6dEiDmwiY3EYxx ux6zIarsRnWJGwx470A/fLyXIghkjfMgqZJY+p5AoE5ihWJ3qbu57QuwIl/RRziCEUTaET8s/dE mVx2QHxiFahDQpur+9XW7TbghHQ/qiSZSoES2fDvvHVM3rkRlmaoNbALx23D5TvOlo+iPP4M X-Received: by 2002:a05:6000:186e:b0:3a0:830d:ec58 with SMTP id ffacd0b85a97d-3a1f6446e78mr9882908f8f.28.1747053289232; Mon, 12 May 2025 05:34:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IH0s3h7inHrYSooQ8NhTVln7D4g+9j4TOqzMH9jwIQneuWGNhcfmrI3NwJv0snFOVP2u3wuBw== X-Received: by 2002:a05:6000:186e:b0:3a0:830d:ec58 with SMTP id ffacd0b85a97d-3a1f6446e78mr9882884f8f.28.1747053288844; Mon, 12 May 2025 05:34:48 -0700 (PDT) Received: from localhost (p200300d82f4a5800f1ae8e20d7f451b0.dip0.t-ipconnect.de. [2003:d8:2f4a:5800:f1ae:8e20:d7f4:51b0]) by smtp.gmail.com with UTF8SMTPSA id ffacd0b85a97d-3a1f5a4c583sm12120673f8f.84.2025.05.12.05.34.47 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 12 May 2025 05:34:48 -0700 (PDT) From: David Hildenbrand To: linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org, x86@kernel.org, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-trace-kernel@vger.kernel.org, David Hildenbrand , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Simona Vetter , Andrew Morton , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , "Liam R. Howlett" , Lorenzo Stoakes , Vlastimil Babka , Jann Horn , Pedro Falcato , Peter Xu Subject: [PATCH v2 09/11] x86/mm/pat: inline memtype_match() into memtype_erase() Date: Mon, 12 May 2025 14:34:22 +0200 Message-ID: <20250512123424.637989-10-david@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250512123424.637989-1-david@redhat.com> References: <20250512123424.637989-1-david@redhat.com> MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 8fwnSwi4bF1a0VN4LSHeh8M-uCl961TtY1i19HwSnEU_1747053289 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-Rspam-User: X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 30D9616000D X-Stat-Signature: 1rdeugb3xzd8tkse4z8itjktu5y5e5ga X-HE-Tag: 1747053292-405513 X-HE-Meta: U2FsdGVkX18fR/6pQELmtIB30vDauvwHl72KfOnbtqUQj6v4X9NLrWhfCH546by50r0hxCwOGfvJjWmPdWtIVLiYAwdL/TnCFRV2EQYRBQfDnrgxj6poia5H5ecK8gUgHCgYzgjB1NJMQgT79BXHxnmOqyjShAXbz5B5Tfuij3G+b8CNJgDizdkIthhkVMIU/bPe3qkPeoVRGfDQGShXLABzF8ha6dq8G3iVYxtaFjgLIRExMoRNZ30f7/r3MHKh3ykLOwvlWjRodAImkMLyPZgatSDop//AeKQ5JXtYmyRLgGiHIZ/HDDlcQNUOFDHuyljHxNSBWTwzsqCVoZ79gnnb1YV3B+xMb0xxltK+C62BS2koBdyabUB1qkbU6TiiyiAybpsPA/xgHN/Qe+76cwCzaXeU+iVssdyggROKImjOTtdZ2rDCLXDclk1CSMfCyNreeZX6ughdQje7Z8Dsz1HisgS5zhmu3UbHAQmLIH51XMTmXetaA7R0iVeU8ybKP7qKE0aV+38pGlPza42KdYX6jmTJD+6KjbxBRml9mYeCEBWMhqbXQsVxCMpFYFFeFL/yzG43kQsw1qvZkC/2Q9esRl47UK3E5Sqp0zklgbPyzGZ6a9xbKL8WaCmzH7PrrJqv1lsK84Z3kLA0z6YTJM5z1EGUZVhlrhAsdhDkGwGPJcftzcsns/TVNj56oqd73vzVKUepZEWqLDcPNwmTvRzr3R4QYd+j1dIIkrojAwHLkCXqjgzbj4CHdj/EXx3HKgN4lKVn8hY7gB8JLfGeA36kOg49oeSbzzLel00jGA5LpPIJYolZIdr8C4GhR/c/v67lOqvhe7MkSop8TmYN8SzPj/O8OxbowW0CalYP0xoPv6mxJLjU2Zhtbj2vgJiz9WpXGLgyLz9Z4yjPG0z88fFvEFCzxL2kbG8coVbIXDNyLJaqvp0UZmT4wSPPVGN18pPuSvllkZeniK7cEYe h0iuckN6 ByYbr8A6rzjnbzQSdiyI+FuoMhKhvcGk8MIj2LnXFKz4f3Sg7lQYnT0yfE1bBC3e/QVt0Aiu96LZwqjTLkvpVIsIJKs8ScZM2ow6W3c6OSkKdcBhb0FTUqcdD5/TYXmXr1BarRpgLzHtPONmgW7/mWyhkIP+72r0SbP7Wtb/pNpMUXcFxidTcL0S0ytz3dxC5YiBMeWxIwQLF4eBXcurLafGcUYvlflkQK0odUkffXZdo3uzyH7UPJVk1uoyUkHmSM0MhisdxdoSygUCN4wFaG0JiYO6F/8B2tUHH38hw0lwQyKQzphyevsc8V/ta22+GfVmvVfWzJhDnx8UbLcdez8f+Acb2pE4CeHGSOoMA02ph2SUbDupJQyRwUl36Tm/zTT1Lf0xpqitF+dYSmjpgJsCCBnWUYn+DmRA5Ox9hXYMox0t8GAP8L/LA56iQHSkf0NvTKwfU1l0CoZPVjnQ53j+WE/aFVaAXFau3nVpaklkBw09KOcPAi3rBSVLNNwCDuTvTYVw74NKlZwJ9CXO9Ot6+5DCGqZ8/wmA34LLoBM8pb6N+CGGufhh2j1+fx47q/9WVKTXK69zLDgsQIkwPJg7ZaAphFECpjMTz6EX7JxhWleflauLZ3GC7uxvaph4hzj3cSvQrjA+T4EqimHB6dASqCw== 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: Let's just have it in a single function. The resulting function is certainly small enough and readable. Signed-off-by: David Hildenbrand --- arch/x86/mm/pat/memtype_interval.c | 33 +++++++++--------------------- 1 file changed, 10 insertions(+), 23 deletions(-) diff --git a/arch/x86/mm/pat/memtype_interval.c b/arch/x86/mm/pat/memtype_interval.c index 9d03f0dbc4715..e5844ed1311ed 100644 --- a/arch/x86/mm/pat/memtype_interval.c +++ b/arch/x86/mm/pat/memtype_interval.c @@ -49,21 +49,6 @@ INTERVAL_TREE_DEFINE(struct memtype, rb, u64, subtree_max_end, static struct rb_root_cached memtype_rbroot = RB_ROOT_CACHED; -static struct memtype *memtype_match(u64 start, u64 end) -{ - struct memtype *entry_match; - - entry_match = interval_iter_first(&memtype_rbroot, start, end-1); - - while (entry_match != NULL && entry_match->start < end) { - if (entry_match->start == start && entry_match->end == end) - return entry_match; - entry_match = interval_iter_next(entry_match, start, end-1); - } - - return NULL; /* Returns NULL if there is no match */ -} - static int memtype_check_conflict(u64 start, u64 end, enum page_cache_mode reqtype, enum page_cache_mode *newtype) @@ -119,14 +104,16 @@ int memtype_check_insert(struct memtype *entry_new, enum page_cache_mode *ret_ty struct memtype *memtype_erase(u64 start, u64 end) { - struct memtype *entry_old; - - entry_old = memtype_match(start, end); - if (!entry_old) - return ERR_PTR(-EINVAL); - - interval_remove(entry_old, &memtype_rbroot); - return entry_old; + struct memtype *entry = interval_iter_first(&memtype_rbroot, start, end - 1); + + while (entry && entry->start < end) { + if (entry->start == start && entry->end == end) { + interval_remove(entry, &memtype_rbroot); + return entry; + } + entry = interval_iter_next(entry, start, end - 1); + } + return ERR_PTR(-EINVAL); } struct memtype *memtype_lookup(u64 addr) -- 2.49.0