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 B7A3DC021B8 for ; Tue, 4 Mar 2025 08:45:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 49DE46B008C; Tue, 4 Mar 2025 03:45:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 44D776B0092; Tue, 4 Mar 2025 03:45:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 315CB6B0093; Tue, 4 Mar 2025 03:45:39 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 130B66B008C for ; Tue, 4 Mar 2025 03:45:39 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id CA26E12188F for ; Tue, 4 Mar 2025 08:45:38 +0000 (UTC) X-FDA: 83183235156.03.4E3FA63 Received: from mail-pl1-f177.google.com (mail-pl1-f177.google.com [209.85.214.177]) by imf13.hostedemail.com (Postfix) with ESMTP id DB3982000C for ; Tue, 4 Mar 2025 08:45:36 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=eJ2rg61x; spf=pass (imf13.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.177 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741077936; 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=bsZGgqt47lRT1nPeMqiwA/uQRm+FSsiQtG0lpiMHFsI=; b=cP0CpyfxvHrf/9NntuWEaTgbk2qo28c6J0bbzPrY+oL9080IwfrMXbCW8SiGRp/4ULlq3E FE7OcQPhvDr9+KhVoIp3YTzSB6BiAt5CKmQUoKoIrBkj+OK3xyIp68vyhHO2+BmkMzLDWi bQvA6dgXkY8HoyFpx3+wfIWzArkKg50= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=eJ2rg61x; spf=pass (imf13.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.177 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741077936; a=rsa-sha256; cv=none; b=i3BVJRU1+5TeOpkN0iq94H2t6yvvkNHWpbz7KkBUGSeEDqCSMzt6o4bQZxLiHR4YKmBx9y hSC0A6TB7QE6lbFAOtconrqeWBloFlCFdsjYRo4sHTHMADZ0YEN44vSUXdWxUuhvv4MW56 dun4bwXEZMp97fFc/fbYgMK9uNYXpnM= Received: by mail-pl1-f177.google.com with SMTP id d9443c01a7336-22385253e2bso64452275ad.1 for ; Tue, 04 Mar 2025 00:45:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1741077936; x=1741682736; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=bsZGgqt47lRT1nPeMqiwA/uQRm+FSsiQtG0lpiMHFsI=; b=eJ2rg61x0lRO9dxhONQWhTg4h52ihXLFMnms2bQkbmqwEiQlIPxFD9El73PgKr9bph bfpACztU+I39ltdtmJZsdpns/Nii1HPwZ1/mJXPR0OEZA9tZ3WNFzGhqza6pomZwhqzj mMNZ10vq4Fy/RpXK04gIucLI2bqsAx763OTMQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741077936; x=1741682736; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=bsZGgqt47lRT1nPeMqiwA/uQRm+FSsiQtG0lpiMHFsI=; b=keku6iAoc1e3mVDvD3PAj74vU2WSengg6uXN/zzYuqjBB20sDkywuBLJwXmbBRd5FH yTbDdidooNcSnLi3Vhot63JvbHwaJ5p4y1lfmZref9aKOdkmxYS8APuB5zqGpKtWxgNk tP6/WJIuV0umOObYmkZE0oaJPHlYNJpgjc8ZF6LqggAmJvl7YKsi3vxdGTU8WV0GiojS +Jk3p6cIGL9T9elTyngz4vtjg+OE0m05Gt3mqt+cVOdT/8VPZ0qvwX/IrgZ0xkKgyiHO dO05Hx0RGCZWr7Z6gvOM7z/j3vJ99Ro2Z8zK6npVmHe0vfVG0zgkhday6G3M1VfD0d/j TJUw== X-Forwarded-Encrypted: i=1; AJvYcCWubYjcBfIxUaY5gISnbmKmJwzY+bFKorp4/YZqtp3f0MCWKmz/41ix8vVRU/5otWXoel07sjDoqg==@kvack.org X-Gm-Message-State: AOJu0YwDUWrCuDM2tDkZCWa469oNudegRfVOpwmuBfCybkKArZh/S47P IILDqXhuOqPtdoi7Dzz2KfXYTrsCUDpiGEVUxI350VnD3nD6kUV8O01Ztsu/JM5iO/RJAjqL82d hGA== X-Gm-Gg: ASbGncv63RmF0HxclMOHIKI2B+DSaAjk/Dhc4iFBuIyZXjxt/dhB2YObgxIO3bxmpc+ NeT+SKbwjU21zNiJxASdVCqlhwKZOYEfR+k7FazdO92T+gSVH1tGoTAVxRRtKq8e7HxmKM+Ag2r xo+0NztD2kzWY+/5scLCNYVj4b6w8QdFBaCdVzfjN+R6EhY98jr1pb+JcmltTg7tNKbfSwqkN+y Ku29mLeqDmRWhcHyI3isdwFsE/aESz1djCcO363fOD64pb6Q3+2G4r9j7B/RnDqQMJK53pWMR6O ffzqoLBpS3ZeV1oJkAcLJmvZJs9hIjRgjl8vFSOK8rCkw/g= X-Google-Smtp-Source: AGHT+IFSmrDqRxmBK5WpGJqlTIrLBroRuWECs7WCPotZwXaQSZaN9UGtLmSGOwmqkDW8UbVKy+BKDA== X-Received: by 2002:a17:902:cec7:b0:223:5c33:56b4 with SMTP id d9443c01a7336-22368f91d03mr250629105ad.20.1741077935780; Tue, 04 Mar 2025 00:45:35 -0800 (PST) Received: from google.com ([2401:fa00:8f:203:767f:c723:438:d0b1]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-223504c5a11sm90836815ad.150.2025.03.04.00.45.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Mar 2025 00:45:35 -0800 (PST) Date: Tue, 4 Mar 2025 17:45:31 +0900 From: Sergey Senozhatsky To: Herbert Xu Cc: Sergey Senozhatsky , Yosry Ahmed , Eric Biggers , Linux Crypto Mailing List , linux-mm@kvack.org Subject: Re: [RFC PATCH 7/7] mm: zswap: Use acomp virtual address interface Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: DB3982000C X-Stat-Signature: pdjbbs38eoeiunyyen5j56f3mmn767zg X-HE-Tag: 1741077936-624025 X-HE-Meta: U2FsdGVkX1+Kt6LbFRia5+KDjP+9uD4WRvApnD8yJ0MUqyO7VBXfLXpcDk5eAi2Y8EosiJjBmce4z4dnV867xDo/0HqzsGFvtmjY4Y+DagU3pJ0EwPjPVk93aYA1bFNks0uslEa5yQdis8Pu0RCapFc44APgJPdqHN+NocMPMl6fz+wbLfNw6n/Apo2XtvykgclVYwPgs3VljudSHkfJTpdJcS5FVMThrZn2J7ApHd28d4zGUMGXNxeBAljAyqtQ9CQyG8xePfUKt/SxZpwislbJ+h4bFDJqE0aN2i1RW95Y6G52ZfOpVbH7DIEgkY5lz+Pb6XJjwCsm2q0IZtL46qp4IR7mP35HZDXAQWJnnE3pIp7dzeHBDnL4u4+L5koZtJ2xUFdPTHpCENT1SN2CAjKShWCzarfAIRhLH1g8T/18ZK/LoDj/nDleiqbYPL4wawO2O+NOWI0Jk8N5GuSvJbrE1sFwi7WDyx7cDnYnn0DAMrbh2rx6vDxZUQVED8StDV2OBiftab3v+YBwRQOo1ZpdGre7TY/lhbozKGVTqRMZI1vVx51ykp7FenGHMUngSyu/IjBJWwfYZM6vfotrIz1GykeuvqYoNmaCkdbTMV4i4l6b55TBBRmSGlQ/fV0QevV2TcKpurxPhaZD2g6UQKrVjpxYUkFvmTfSUi6kKOwc+QLgWPdhR7YVt1YnEE0x/BmXba9B3bjurIr7GYUM2A4zn2in9R1AByT+KqmDqQ1VokTyjWDyQkwDHFDGU7u3PH8cMNxVsC9eaFk75cwCvwjxhau4Xm2LOVNwQuWTJN1W/nrw2EPu8U6xWTaVc6+cgHQMG4AAHYqk4Ru36RHL9xFus0Gndxb7UysFvwKo7KSZM84zc2zwWJbGkEtqpiM80PRSzDRSGx4hKTbIqRvaB6p/YPRKFpv9Hm9ZR9d216xNR3sz19aPsiU+bdBO3Vaaue0wDAt7cFNb61uaonj MLZoZa27 sHbtpX5jeQXPZVJhlMRbxbqYZFfHP6bY0AZ9L0abUGW0HazyPYeye87EZXV3+jUzoDeEYU79TsKg01VofEMqio66VGce8qpxcAyAOENPuEwptX2uWgU9uB4Ms19Z+gQuiMJqKW1IqzuRul5mjhbFYe0hAlGFwnvYJ7c8MrSmwp9vkT7Ls3DzoNPf1B49WPRgvCcJkrgOzNztc2Jkx8J3/dPWEu5MFuDpiRImclAwWtyiHx0TkHmob1D7gHG0X8IJRDU6Wzpgmfe4+3E5SCXkbTNSCnviyE0HS6NOR1mETx4NczyZE5Rvn+xQBKHx4XFawsexR9TELXzs+gbtkamJdFbvJDzTTfZmeIR6uKYtQUxyb3UQ= 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 (25/03/04 16:42), Herbert Xu wrote: > On Tue, Mar 04, 2025 at 05:33:05PM +0900, Sergey Senozhatsky wrote: > > > > And at some point you do memcpy() from SG list to a local buffer? > > > > zsmalloc map() has a shortcut - for objects that fit one physical > > page (that includes huge incompressible PAGE_SIZE-ed objects) > > zsmalloc kmap the physical page in question and returns a pointer > > to that mapping. > > If the SG list only has a single entry, there will be no copies > whatsoever even with the existing scomp code (crypto/scompress.c): Nice. [..] > This still does an unnecessary copy for highmem, but that will > disappear after my acomp patch-set: > > if (sg_nents(req->src) == 1 && > (!PageHighMem(sg_page(req->src)) || > req->src->offset + slen <= PAGE_SIZE)) > src = kmap_local_page(sg_page(req->src)) + req->src->offset; > else > Use scratch buffer and do a copy > > I've also modified LZO decompression to handle SG lists which I will > post soon. That will mean that no copies will ever occur for LZO > decompression. The same change could be extended to other algorithms > if someone wishes to eliminate the copy for their favourite algorithm. That's interesting.