From patchwork Thu Jul 13 04:20:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hyeonggon Yoo <42.hyeyoo@gmail.com> X-Patchwork-Id: 13311272 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 6C893C001DD for ; Thu, 13 Jul 2023 04:21:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 04B3D8E0002; Thu, 13 Jul 2023 00:21:20 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F168A8E0001; Thu, 13 Jul 2023 00:21:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D93428E0002; Thu, 13 Jul 2023 00:21:19 -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 CAE0B8E0001 for ; Thu, 13 Jul 2023 00:21:19 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id A24291C7367 for ; Thu, 13 Jul 2023 04:21:19 +0000 (UTC) X-FDA: 81005289078.28.580A391 Received: from mail-oi1-f177.google.com (mail-oi1-f177.google.com [209.85.167.177]) by imf13.hostedemail.com (Postfix) with ESMTP id DC66E20005 for ; Thu, 13 Jul 2023 04:21:17 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=LBEyRpU8; spf=pass (imf13.hostedemail.com: domain of 42.hyeyoo@gmail.com designates 209.85.167.177 as permitted sender) smtp.mailfrom=42.hyeyoo@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1689222077; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=x4zzHPL0k6H0MdOKWy9H+XqQmDxwRKjupee59FsBT9w=; b=UK0jW9YZnxJTTCAuXl0RicPLp0mmb9wdkJbhoUjGnOYBQL6U+XMgRO0VIU6cpSsl/VtrA6 D0uY0AAc+pZuDMcaZJDhRkc5JaV+qMojWWBcV7n4eWvHCZQLYCc1XtGUahjAhCFWsRVRrq RFyS0VytvQEcYH+5apRLhBJ/ZYdOjnM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1689222077; a=rsa-sha256; cv=none; b=kBre+rOgvBPgPrMrU4PkJmNyJEM6xo486ZBkPLRlbViMJv9bZHaxfEDqEJfhU1AxwEEh3S lTCHxbTb9ocC+wGnVh7vyMIGMlOy+zr4YwxY2+KSyVTcwiikUioSwQqhxTguD36aqbnMtl ShgylSyhLCLCmZ8XeJRbP4Mdwbjv2iw= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=LBEyRpU8; spf=pass (imf13.hostedemail.com: domain of 42.hyeyoo@gmail.com designates 209.85.167.177 as permitted sender) smtp.mailfrom=42.hyeyoo@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-oi1-f177.google.com with SMTP id 5614622812f47-3a1d9b64837so298744b6e.0 for ; Wed, 12 Jul 2023 21:21:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689222077; x=1691814077; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=x4zzHPL0k6H0MdOKWy9H+XqQmDxwRKjupee59FsBT9w=; b=LBEyRpU8G6PNHITLYWQWY9IyEPJyBkyQ5+FvSpkPn/XDu4Dao59DBpPH/zWMmJUshw lq0kdCLAyTLvXPRb/y+83fvqbRcDI/W+LuQaPuNH3C+pY8AU4jRsRBWwzik8OP0E5MYJ PLiAqFM/MrZKLDfuQYnYD93VG+rfaatGql8SPpIviN7wELQguFKteyX1AeorHVMmxNPn Dez/e+bAAstVLLoChOoqn9Uzy/cGstHq6rZ1lRNBHeKGx45FkUpllKlYAJDdihR1tDxk aA2G7wm5jd0vkB34MMv+IA+CCV9qlxehsMStgJw+N7ZnVOnzXTdoq5hxDAEmnVkUZ8Pj TUKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689222077; x=1691814077; 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=x4zzHPL0k6H0MdOKWy9H+XqQmDxwRKjupee59FsBT9w=; b=LK/3JM7EYebjs11TMBn2eMCCohbTXQ/t+2R04QF3yXp7aHZMYq0sEEEJq7YPnXO9c5 nOWZPF8FXRGQXOgcXobhYehbrv++OYj7M0iy+VCPmUaCxG6MwxYnEjl/o1PEAp8p2ikR NxjIR1CWeBMVdY3e8NO2swdpzGl75Gx0VyfpIJ86h+S43p64weUoUqSh7S3Pibw2dRqP Kfpm3gJkde955q9iF1XbV0NVMLRwra7/fV6lmBVrch+CH7JfOkTYzLhwhHL7VuuNA/qp MYc6FYlIvboORcpZJsStaR453OD033GMiWz999/A7MntLCCf7F/Rj3HZmpzfvYOHyiXI QRYg== X-Gm-Message-State: ABy/qLY8z+SimHfqVeO1aqiC09qw+YN/7zYk69vgM7myNE8lLQVG/Y1S g5apv0S+2Of9fLiYbnBOjaE= X-Google-Smtp-Source: APBJJlFywht9zcExknT1dtSzacVpV7iePijCw8nKXr7IhX52uQwv585dT1T9ycEkrhz/WrX75xHfuw== X-Received: by 2002:a05:6808:573:b0:3a3:6536:dd89 with SMTP id j19-20020a056808057300b003a36536dd89mr525184oig.49.1689222076949; Wed, 12 Jul 2023 21:21:16 -0700 (PDT) Received: from fedora.. ([1.245.179.104]) by smtp.gmail.com with ESMTPSA id u18-20020aa78392000000b006827c26f147sm4346601pfm.138.2023.07.12.21.21.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Jul 2023 21:21:16 -0700 (PDT) From: Hyeonggon Yoo <42.hyeyoo@gmail.com> To: Minchan Kim , Sergey Senozhatsky Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Matthew Wilcox , Mike Rapoport , Hyeonggon Yoo <42.hyeyoo@gmail.com> Subject: [RFC PATCH v2 08/21] mm/zsmalloc: convert obj_malloc() to use zsdesc Date: Thu, 13 Jul 2023 13:20:23 +0900 Message-ID: <20230713042037.980211-9-42.hyeyoo@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230713042037.980211-1-42.hyeyoo@gmail.com> References: <20230713042037.980211-1-42.hyeyoo@gmail.com> MIME-Version: 1.0 X-Rspamd-Queue-Id: DC66E20005 X-Rspam-User: X-Stat-Signature: 9t1xf6d9sfbysbpajcjotwb3irphp4fa X-Rspamd-Server: rspam03 X-HE-Tag: 1689222077-450020 X-HE-Meta: U2FsdGVkX1/ht7DWW/GPFaS4ROvKLp/cfG5L9GYBSDtzLXcjjnNBFZej9Q2zjfWFebvU1k2Fx+E/cvDAdIY34kTeNzknxzcyPVDuC70yTve7LM9k95MwqjZZ0Rg6Ifn/Ylvbi1lhp0UREjypFQZkzHe1CzYLv2MekBZcjYkUtiOn1DZRQOKOxAh28gYcHj0k+a1a3P6qqxwBNV/I4cDOgIoomFMm68uIrTCcVEQEnQpF5/oKiaMBEwK5ZiYvVOovj5mDI+vR0KMSCnFxM8wrJ921p1bZ+f1f5BUhbYz/UatNO/oZUeEudP1Xm4/J2tp7VuI00fRpGNLpwSaI742j7x43iA8wEsbjJ4Te5tT0AesQ6tJMG90UkXHRlCE9moE223rfkA90Nq2O0/4ogDBoPWSg5wur+oP0qjoLBLXE8KsJTQzIbpuz7rLuqXsWGPNoyx/QNyvOxRJKo6ZHZNRT6h0EmVGdmBqkOCrTSIPN9QsD/IVu5ItGh5nwAn768Ucz5W9F8J/eid9M42uDHFU6mhdvJ+oSldrVlmINPteLC+GqcP44ETCDiTihTj6ChfxtC65WR0QqGruhQTqkPVIi06JL/qtlrGayDimqCq4VtajcHq0o2Ym06xIhE/5hq4CRUKUL7pEm72XtKXaZtGZGTsfy0LO+itijaMla8dXo+9SsIN8Chq0CRVfvJs+ankp/8WHGB6D27GI7J6Ob4bZz2NeZYw2jwv9h9QlZwIv73fV3+r7b4uDKhz78A6YOPFnopmsYFlYYRTV3RxnoeZ/XAOVfFNE8hTJ4xabcaDMEWjKUWujowAhGytA88znR7Ke5wL1sFrxY6amyeyKKXUKheOE8YmGGARp7QRnI7o117XUrEVMxgn21saJb6dGj2L14q3Xon3reintHT36Q+zSqjq3KWRpUI1m0DBx1VcYyIXh7neaYmaMibsO3eTRVc3MfNBBpE4QkJnPUcCv7TUm MAz4s993 lmx3KUEWjaahCrqezM08r+sGjZIFE3YYCjD2uEHvD0ERNFvAl9WuW/mqNYHjvCrWi1qlXsBIGtcCZ17mtM5bw1Pi3lR9USeGUWslcCLSe2mEXW/ishLUaNQWnKPhvIEJM9VTmupMaVFsTyPzR2Owu1u+ABLbMRGj8i4PazYuNSbi4xzWl9wMJ8khpDrmqBKF8vTjNVXAO90+zot7hvPki1iWXR32p9ipFmLULxV0pKNP1dcpSX56P7M816KJX9Y5oEt9tLvSGNQQdveNL4N9Mn0YpSgmykUYMIlZ9RCcIbWBQnz+qG0TmSFth0JmSHV4JaLxPmR/BlGkLQDuyO+b7hHVdOtJBl1fPBB3Y6rZ6fV+EziRc5QVqj25Yr8Q61/HUGPZ2SyujXUlkZrvBFcvjshC+qebrLHS9YYsBoWG/fR9heeHX2J2l+w5JCSgCR0T7Y9jXxk8dBzhdPfLUCUx3LDQsisiW0g7u3rHyQiquPlbxQNbVG6lwSz9IUZTiPt+/VHSBygzg1hFRN5pgplQMFSs3WXrMp9rk2+WWvQJFKA7xFJdbf+WhjqixRUJUl1ODInXEO8WzbaMyZvHzUZhOorUrzA== 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: Signed-off-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> --- mm/zsmalloc.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c index be9762a49237..06227da86afc 100644 --- a/mm/zsmalloc.c +++ b/mm/zsmalloc.c @@ -1412,12 +1412,12 @@ EXPORT_SYMBOL_GPL(zs_huge_class_size); static unsigned long obj_malloc(struct zs_pool *pool, struct zspage *zspage, unsigned long handle) { - int i, nr_page, offset; + int i, nr_zsdesc, offset; unsigned long obj; struct link_free *link; struct size_class *class; - struct page *m_page; + struct zsdesc *m_zsdesc; unsigned long m_offset; void *vaddr; @@ -1426,14 +1426,14 @@ static unsigned long obj_malloc(struct zs_pool *pool, obj = get_freeobj(zspage); offset = obj * class->size; - nr_page = offset >> PAGE_SHIFT; + nr_zsdesc = offset >> PAGE_SHIFT; m_offset = offset_in_page(offset); - m_page = get_first_page(zspage); + m_zsdesc = get_first_zsdesc(zspage); - for (i = 0; i < nr_page; i++) - m_page = get_next_page(m_page); + for (i = 0; i < nr_zsdesc; i++) + m_zsdesc = get_next_zsdesc(m_zsdesc); - vaddr = kmap_atomic(m_page); + vaddr = zsdesc_kmap_atomic(m_zsdesc); link = (struct link_free *)vaddr + m_offset / sizeof(*link); set_freeobj(zspage, link->next >> OBJ_TAG_BITS); if (likely(!ZsHugePage(zspage))) @@ -1446,7 +1446,7 @@ static unsigned long obj_malloc(struct zs_pool *pool, kunmap_atomic(vaddr); mod_zspage_inuse(zspage, 1); - obj = location_to_obj(m_page, obj); + obj = location_to_obj(zsdesc_page(m_zsdesc), obj); return obj; }