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 60383EB64D7 for ; Mon, 26 Jun 2023 10:55:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D4EE98D0003; Mon, 26 Jun 2023 06:55:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CD7948D0001; Mon, 26 Jun 2023 06:55:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B78F58D0003; Mon, 26 Jun 2023 06:55:37 -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 A373D8D0001 for ; Mon, 26 Jun 2023 06:55:37 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 7A1ED1C843C for ; Mon, 26 Jun 2023 10:55:37 +0000 (UTC) X-FDA: 80944593114.09.6331575 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by imf13.hostedemail.com (Postfix) with ESMTP id 57DA62001E for ; Mon, 26 Jun 2023 10:55:34 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=sberdevices.ru header.s=mail header.b=l8g7TSI2; dmarc=pass (policy=quarantine) header.from=sberdevices.ru; spf=pass (imf13.hostedemail.com: domain of AVRomanov@sberdevices.ru designates 45.89.227.171 as permitted sender) smtp.mailfrom=AVRomanov@sberdevices.ru ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687776935; a=rsa-sha256; cv=none; b=0f760BpYt4nRPN34GEClayZ8dBmjwPkLQ1LDt3UlbJphYvWgLcqCInGWez2M8U8n7ehc6R AULcPh5BHHnJj6FvP0AxsQOtvVGH1wTa4s9Xcq+kVOsNW8951GF0w+awe3XB1DQUuwWyE6 EgB8zrDtDAyH4lAAUo/aOS0Qez9GEgQ= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=sberdevices.ru header.s=mail header.b=l8g7TSI2; dmarc=pass (policy=quarantine) header.from=sberdevices.ru; spf=pass (imf13.hostedemail.com: domain of AVRomanov@sberdevices.ru designates 45.89.227.171 as permitted sender) smtp.mailfrom=AVRomanov@sberdevices.ru ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687776935; 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=Oj0jQJqn0/SSlMSn7VZZswEl1ygxBArda/MM4uN63bs=; b=fS/SLn+WX9+s5IAgGLCrTGmnLutwbNYDgqEM/sZPmajQAItGE17gnLIAmD4lwgCQkkjlwG VBnN+PRBFFO53I28Sxstb3/HRY+cclg4KPos93yMFczx9V3cf4+67nWa98U8pDfzJ02PSz tm2AIOAP1yu5/ZSotCu/yisiJeMZ5pE= Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 4021D5FD4C; Mon, 26 Jun 2023 13:55:32 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1687776932; bh=Oj0jQJqn0/SSlMSn7VZZswEl1ygxBArda/MM4uN63bs=; h=From:To:Subject:Date:Message-ID:Content-Type:MIME-Version; b=l8g7TSI2bUm0sw1P7t+HRsUqwxH9GzxJuUOSsTq5t2n41whQDH5MpGrSkZAGfGwAO Fzmca+dQ+1WpgCax6PHhBHvj/exdATOu38L8Xvk/eMN2GkPojbwapAbuZdoznPQLrF q93taIZKuv/1UKUGiJSK3EN2HnBgMKIBhd4VSbYrtOaff7oEr1HwE1xM9AyOfeq3YP Xi67j4dDJ5TEs7WUD3oc4KLd8fqrWc3LWZ6thH14KW8BNX4ap66wMMrs52Y0RNS61L 9Mxrt43cp2lKmXaHvvaCN1XkTfpFykcqjGyy4J4nl70bJoMJJWb7IChbG2l9a0PPCt ogMgfrvLEyZ5g== Received: from p-i-exch-sc-m01.sberdevices.ru (p-i-exch-sc-m01.sberdevices.ru [172.16.192.107]) by mx.sberdevices.ru (Postfix) with ESMTP; Mon, 26 Jun 2023 13:55:30 +0300 (MSK) From: Alexey Romanov To: Sergey Senozhatsky CC: Minchan Kim , Andrew Morton , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH 1/2] zsmalloc: do not scan for allocated objects in empty zspage Thread-Topic: [PATCH 1/2] zsmalloc: do not scan for allocated objects in empty zspage Thread-Index: AQHZpYzRyNUr9zsPBkK5T8L0XRRTxK+YA1KAgAEGooCAA7ITgA== Date: Mon, 26 Jun 2023 10:54:50 +0000 Message-ID: <20230626105502.kqjrgtrvwp4ro3vu@cab-wsm-0029881> References: <20230623044016.366793-1-senozhatsky@chromium.org> <20230623044016.366793-2-senozhatsky@chromium.org> <20230623104917.2n6vcxvhvlwmjm2m@cab-wsm-0029881> <20230624022917.GF2934656@google.com> In-Reply-To: <20230624022917.GF2934656@google.com> Accept-Language: ru-RU, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.18.93] Content-Type: text/plain; charset="us-ascii" Content-ID: <2198C4204FD0134A9CBF6183F56DC4C3@sberdevices.ru> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/06/26 05:54:00 #21579740 X-KSMG-AntiVirus-Status: Clean, skipped X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 57DA62001E X-Stat-Signature: ncm4p8b8o1ww1dcfagwpe4ioetx897bz X-HE-Tag: 1687776934-617388 X-HE-Meta: U2FsdGVkX19nERs/C5hKUsVISaLVcQfosgyh7WAM/5FfvUzPnH7ylnhX1Dk1q32KH/j1mmg+Y7DZluxrudrxHGzwzd+p2pU5NY73vTYkYtIc7irtcM/OK6+EgfiRJpixeKRphPt1YjmjvDErTfmZxyaAAElgXT2TP63R7m+IMjI3ov+DtZ3cydaCLd6P+yDug/3Xm1RZPsBGPVr5C5Okgi0oQbZOI+NxFfKoR3If/CSbTJbvSXUEBag2NbpmsML3Ga35rgJoLmV8e4/iQgtk+iHFf5/tsI42d+7SRdN3fNuTp9OztMIzy3UkiDN+9xqbpFmIYrN5JBGWTJrgknF8PZlgbT1rxbkK8AqnTI5i/cPrvHYc01Og0TDQkdhykHfVtXfyxfOQkxirWeEvHvhFtPuwVgOYEN2izvKXW4KDVg3ZfLfqI5p6d+7xbWvscRplOtyVJ66ocx64fdVrLW0F2AhrjozAqMRzvufNHaApjWOXOAIQIq71CZM9GjwL2dcAI0gQiDbUqH1+t/Jsjk1zVjvRQGhMGaFxKLruznQ+TvNRXWwI9c6NpfGwXhuRmpLMU6P51N8P9ObihTDZ5ZQ9qCn8qelZk4oFBFK57NUN1VR0EmNhipVbKExC+ounw7477/Zi/gpp7RqY99dKXZOd4iB7z9cPqIxlNZ1USPdg6azbIuWW1sobfggqIKJBidWC97u5dNtxlrfLyM7Gal939sLyMJZuWScoCk/rOIP84tZzA2poU30oNLaPjT8C+ulaejgb/MVZ+LmuDQA3+msoJ6u1vPiDyXmKJseRXZFCQ4/5rijYvfcFO8wFnC5vz50yoWzVc7qqO9cVObaSBB9ySmOLt6XpYhiqpUm6fXkgWf7wO4hB2Zfm0f3mf0tCQlXzBEmCN8iHW5y0vZ+ppy52HqjPDbM+bPapPN9xTvgHv6AVH3jjYhAuElRg2NE/PzXH3noRwsHRbniiUjApOKa k5rfmHGY mlLkZ5+Y7vNRZ5m1lege2pzPGZkS10Ik+LEqvwj7tmGcCqz+LAdN1Xj0OGheJwGK2Iv3PbUTXX9cx6Es6a4urqCOpP1cfZQyNiQu5hBD/HtgTbue/RxHt/w20UgMf0/UsVcSZ/t1paShv+WMv/yseHC2zOWZW/UiyhHe3NEkPioP4Fguf7+i/CpZaA6IJwpvS2FhlE03xlqOZT3iBd5U/8JlnLey0frWVYit9Ymt+XT+geiWNdgnWmBWy3skd0bj5o6Q/JaVyM/2G3OErFEs8+sMhntGmnjStp9C7bxh/AWbcVAW3JhQ3O5Otp/2gyLEOyeVT9HvFOoe9Jk4p+5jOV7vQNA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000008, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sat, Jun 24, 2023 at 11:29:17AM +0900, Sergey Senozhatsky wrote: > On (23/06/23 10:49), Alexey Romanov wrote: > > > +static bool zspage_empty(struct zspage *zspage) > > > +{ > > > + return get_zspage_inuse(zspage) =3D=3D 0; > > > +} > > > + > > > /** > > > * zs_lookup_class_index() - Returns index of the zsmalloc &size_cla= ss > > > * that hold objects of the provided size. > > > @@ -1625,6 +1630,10 @@ static void migrate_zspage(struct zs_pool *poo= l, struct size_class *class, > > > obj_idx++; > > > record_obj(handle, free_obj); > > > obj_free(class->size, used_obj); > > > + > > > + /* Stop if there are no more objects to migrate */ > > > + if (zspage_empty(get_zspage(s_page))) > > > + break; > > > } > > > =20 > > > /* Remember last position in this iteration */ > > > --=20 > > > 2.41.0.162.gfafddb0af9-goog > > >=20 > >=20 > > I think we can add similar check in zs_reclaim_page() function. > > There we also scan zspage to find the allocated object. >=20 > LRU was moved to zswap, so zs_reclaim_page() doesn't exist any longer > (in linux-next). Yeah, sorry. Just looking in current linux master. --=20 Thank you, Alexey=