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 AE886C3ABC5 for ; Wed, 7 May 2025 08:50:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 81AAA6B000A; Wed, 7 May 2025 04:50:24 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7CA2A6B0083; Wed, 7 May 2025 04:50:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 692DD6B0085; Wed, 7 May 2025 04:50:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 4BB9B6B000A for ; Wed, 7 May 2025 04:50:24 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 5F83BCC0B7 for ; Wed, 7 May 2025 08:50:25 +0000 (UTC) X-FDA: 83415490410.25.18252FE Received: from mail-lf1-f46.google.com (mail-lf1-f46.google.com [209.85.167.46]) by imf13.hostedemail.com (Postfix) with ESMTP id 5FD1E20002 for ; Wed, 7 May 2025 08:50:23 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SaYzSbap; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf13.hostedemail.com: domain of urezki@gmail.com designates 209.85.167.46 as permitted sender) smtp.mailfrom=urezki@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746607823; 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=szt8zrU5ISU7Wrt9ayx138rlmOzqL4VJTqO1VgP5waA=; b=8D43WgCauc2TEZNGCMDpxcsVe3cwPe5y/v9AdVYn7SXCPzZeJCFZQt8TtWR1H2N7LrJbSD kGdcgY+P9RCTHiYpjTQCa35J6BMEsizGZPtaziRoU4eCbiuQL7jT1V9h8zH271ykVS0HXT ioBlWMJZ0+2QBeOpNTJvL8UAFY30rrg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746607823; a=rsa-sha256; cv=none; b=7Bfls013Ax4etA7FmqJJwkqE9AoNNVVA6YfIUa6fjX3vHoeDFtUL0TGczjuAbmiEaLdhFQ 7MJ8X9vGdGEAJL2JmbUqzpNHYkWPzL5BL1QvLoQRuKkYkRGWyow78ueTrEwG36mvimxGiB n45EItoNxnU3I7jrz7AxszcUoqppBW0= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=SaYzSbap; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf13.hostedemail.com: domain of urezki@gmail.com designates 209.85.167.46 as permitted sender) smtp.mailfrom=urezki@gmail.com Received: by mail-lf1-f46.google.com with SMTP id 2adb3069b0e04-54addb5a139so7612796e87.0 for ; Wed, 07 May 2025 01:50:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746607821; x=1747212621; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=szt8zrU5ISU7Wrt9ayx138rlmOzqL4VJTqO1VgP5waA=; b=SaYzSbapeOpQ79CpayLnpqPtwTVA9IcVypO+GRyreyhiH9EFFhN7KlBSO8F4uFACkV 3cTRIPi5+2ZTWKsxLlWssqZ5p5pL9eIBLS4qV4aYQ/Ky5+2ycw6l6TpEVQlqXNMrysK9 kyV3qkM3eSqbVjshROVLfrf1lAbIN46DnrxZiDndQCmUqdx7YFqkEaWEibsGY27/SO0K yJOSqixcOwDvSWPg5gWZSKHfN03FmLfOIHklU/XhZER4y3RBVvK2zCCTtiSwFOZL142F H+X+PDrHuhI+lGvrWsx39XfZ0hSSiLSj4He58s94llPC0D5zSAqJY2gLHx4RyoSpXxIv YJRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746607821; x=1747212621; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=szt8zrU5ISU7Wrt9ayx138rlmOzqL4VJTqO1VgP5waA=; b=nqdMzJVqGX9Lj7BV+g+DCHLaSGzhzgCBEvesz66W5r6T22fFhDrVleKgy5fgiI9VIt c/ifmoFPBJfAY+0b8mocf0/jjygsV8kztnjEowwmQ5JVNinuiTk7eEb1T6bVABing077 5yOUm9Nx1S+iCc33wpAwlD13twn7OZcMxusn6rLcCYD+FKH1FPBTV9AmGHQ1daxW9xLT OGo6xCWf4JTqgSJ1ijZCYHaRuZXpm/AeK5jOPNdboNuBG8wizh5Ug71lY58LX4+P+Jei 5op9kpeWkF8GYf8E4fzHhUu8Uq/FDYYqa3sUIB6gYooQW90dEZ20Rm/oPcMqt22+nykA x/tQ== X-Forwarded-Encrypted: i=1; AJvYcCVJLlOd4Bz1b0llld+XtuHPIFqJtUU7mlNtApUFHb2cLJgU4+2kOKdCxhAjWAYWVGEbfE6Pa7zxbQ==@kvack.org X-Gm-Message-State: AOJu0Yw1Nd83NO+7Dq0V7ESGwyD867bX0Q8YTDB5eBoarYscAyUJ4m5b luKa+O9GbBgUFrrd/u2F7wDwlinFqPN+WKpnaseGNwDZmyGhoos4 X-Gm-Gg: ASbGncs014/v4TCWxat7RppIDk9uWAS8CYsKCuTvVx2vHrqBEe5UHOqNBwI0zjdKzXi 0KYG+ROE9VKejslvUCsgQDHEHN2KccZRhkdQRLEc0n4oUq2MuJBVwXlrv5mXwwJwmnpPhGcpkMc rLorYmLwPt02mcYdm+9oSJ1QfT1V1cJywL6yrA0iIsimmf3m4vYwjHJUt7iEr5EIEFSwByxiSZ1 sYqA2aKhHhyaF8eUQ+j7u/wA7Jk1OmApwGY61nA6sJomi8AtLNdoAqb9r5ru/xKlXLklureoZxs pMMfNhjNY+RJ9As9F3UNIELfRzEOyKVWNIAhQ01rKQYTLH3NW9LaRiIpgBvy3uBf8fyt X-Google-Smtp-Source: AGHT+IFJFUCzqFWs8tp1FtSwkv4ZHIQfleZuq+KgAMoLgVaS2vfIaFRDuhr/+8PW20xw4eiL+ef99A== X-Received: by 2002:a05:6512:1591:b0:549:4e79:dd5f with SMTP id 2adb3069b0e04-54fb9625c8dmr818555e87.37.1746607821116; Wed, 07 May 2025 01:50:21 -0700 (PDT) Received: from pc636 (host-95-203-26-253.mobileonline.telia.com. [95.203.26.253]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-54ea94f6996sm2244706e87.236.2025.05.07.01.50.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 01:50:20 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Wed, 7 May 2025 10:50:18 +0200 To: Sergey Senozhatsky Cc: Yosry Ahmed , Vitaly Wool , linux-mm@kvack.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Nhat Pham , Shakeel Butt , Johannes Weiner , Minchan Kim , Igor Belousov , Herbert Xu Subject: Re: [PATCH] mm/zblock: use vmalloc for page allocations Message-ID: References: <20250502080156.1672957-1-vitaly.wool@konsulko.se> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 5FD1E20002 X-Rspam-User: X-Stat-Signature: kxpayshduzq8w1kun6q9sb3888r3we8q X-HE-Tag: 1746607823-827374 X-HE-Meta: U2FsdGVkX1+vGCYcA0TUIfNTTGi3/lYxNaKcANWO5rdvRWGeJu4j/oZ6G1nrkHFJd3TQbiXfUJjagdA5aiR4oKaPqI7GQxQ9Wers7GltT6Xv184hI/RJwrg/xjfXiDP6eAJOUBaPUn1qXqpfjQbX5u1FXKxHx/9dABQA7wc5jtRukLnu8/JcnQG+lgSDKYch9RyWvAPLDhgg6pXMXdEXo++/yZ73vLy+nhot6cr2CrGW25qt9jto1HGDf9j1d2zB4FOHOr9H4Y+vc3RQBfBn99HwRxU8csyx1qWq4QmeJwKnkYBTevqC5UdHUCNq4ysnEUS5xh0BEb+IHx4qxb0BUSOaRhyYyvAZxaTg4AHo8o7tDmKQ1R+dDPEjr86F8gzK0cop9VYZ1k+8sqjNBAxFVUnIBmVvlCJFQTXa4lDLK+G3KslUDjCe0eNuIZ3CgMPu8f5Ihac2i+Avn3IbIjBqPy+bhMznf1o6wAxJP02+nV+XbjBofTNIctMRuTo6xElTd2k4tmMNE6rNECXlgzvC9f3psAAupDL1wlus6w7X8gjQm1Sel8Aj3qrh+QJLotclY9uX3ogqFdFq7ro0btKideTakGIV5i4T/10KzQyxKuXxC5drqiP2h528+cA3mIlzLYBNb2DYwKGri6bE68bZNGehhHeJjJedjUrEVcsa5RKWs/KgFDmOarlZ8wQLfSZetWY7AKhgEZQAHCdf4lZi3DRMbmOT/TgZns/hWHdrCLQPGNomIceIDrLT3JVtEd+z+gBfZGW5wwBbk8j9/zBWof3SFiTgzSvnuUQ6jHJ1t4nzwAVVS2Y20sR0ajeCKUZtHwf9Qqf5l8BSLgNNrmyWXDyWTw73NxyecnxhC3stBLn6l3iuDbKDFbzV6Ra/dJcu5OEvzaBHS8FDNP0wZ08vvvhxzhnbsE1G/U9oOSZLKJOwk3fkWSRxUZbQuLKmHhedZsCn3mbw23PmOlAHXZ2 1KiE4UY/ P77hqMu7KGP8PQ5NdOybwSqFVPRVrSTYW7LjLDZfJOjeACWVLfKoX8smpg+Xxz/2H/6Nsi5Liq5Kp0yrL8dTwCEZy4/e14D+C40hweiuFPhmWXMFpARmNNWBwlDd0JD00hozEdu12wl1uhVDMa7gchoBw6sQQDvW6SMS7OfeIBaDaAkb/I7Hm7EDGIG3Ucj+iGpeKbrqNyVPHL97Oe2SZf0+7q/IuS1P1VVA8EKOJgFL/T49mQRePDmK88Vbk4yrY/YmNI0pkDkrtnM8VoRMU9MP7mUEIcddaGhr0Kxe8kKh2y9NKf6Ynq+wY8IQ9JFESyNm1QGlh7ppGv/gcWaxe30JK7O+sNWIOY/Af1zAJkCzWkKgQZ3/iWZa7qdQJUpziny63VJlU/C7EpwE= 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: On Wed, May 07, 2025 at 03:08:08PM +0900, Sergey Senozhatsky wrote: > On (25/05/07 14:57), Sergey Senozhatsky wrote: > > On (25/05/06 13:13), Yosry Ahmed wrote: > > > If we can use vmalloc for zblock, then we can probably also use vmalloc > > > in zsmalloc and get rid of the chaining logic completely. This would > > > make zsmalloc simpler and closer to zblock in that regard. > > > > > > Sergey, WDYT? > > > > This sounds interesting. We might get rid of lots of memcpy() > > in object read/write paths, and so on. I don't know if 0-order > > chaining was the only option for zsmalloc, or just happened to > > be the first one. > > I assume we might have problems with zspage release path. vfree() > should break .swap_slot_free_notify, as far as I can see. > .swap_slot_free_notify is called under swap-cluster spin-lock, > so if we free the last object in the zspage we cannot immediately > free that zspage, because vfree() might_sleep(). > you can use vfree_atomic(), it can be collected in any atomic but no in NMI. -- Uladzislau Rezki