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 41A27C36008 for ; Wed, 26 Mar 2025 09:31:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 762AC280070; Wed, 26 Mar 2025 05:31:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 71027280069; Wed, 26 Mar 2025 05:31:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5D7E7280070; Wed, 26 Mar 2025 05:31:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 3D1C9280069 for ; Wed, 26 Mar 2025 05:31:22 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 218A1AC134 for ; Wed, 26 Mar 2025 09:31:24 +0000 (UTC) X-FDA: 83263184088.08.FF36C85 Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by imf29.hostedemail.com (Postfix) with ESMTP id 265CE120004 for ; Wed, 26 Mar 2025 09:31:21 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=NY1hreSh; spf=pass (imf29.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.169 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=1742981482; 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=zC3l3dK9o93j7uA3wfBStTjnTsQtN1PCfhsmAuTgrmU=; b=Oi/bMDWha2Oa/OV91VXkhFpavhzo9rL0cRDo68BUSSm9YHkacQ9xOrF90HnOnavouLaMgs T7MpWRs/nlxFzJ/PqfNm5FhV+X6FGBk8969wpS5sndPvZKlDMSivK8latYlfkqRyBe3PcU 4BEx32pVo7Is7gy08QJtuEg28f9x2y4= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=NY1hreSh; spf=pass (imf29.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.214.169 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=1742981482; a=rsa-sha256; cv=none; b=IHkooMoAKocEQLntZZw4BPZ27Kk5aB6PZ3s16j2/5HBQhw7/AHHDGFSsPE5UQoQtTqLJ67 +jjD1QqQ3Ti6IMDVd2RuW3vYJ/xCQvGVltL9tWeAm0QFTuDWq1PhL2N6o4QrpM8PvIFjYo 3Kw0L+7Ri1Tk/gRvZPMgzGS7YWizDeM= Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-22403cbb47fso130082785ad.0 for ; Wed, 26 Mar 2025 02:31:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1742981481; x=1743586281; 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=zC3l3dK9o93j7uA3wfBStTjnTsQtN1PCfhsmAuTgrmU=; b=NY1hreShkYcDvHl2mJk7kBTCArz9nc9WOdRqE/1wWJ+c5NH4MfsreBF8Hh9fzSAVpD NeGLgpG00f9Ecc+6MM5uMsWvfdlnqV+4viHM2lWfdmjc5iFN6OeCv+TtFoSAS4HsQAl2 xuLjvr3UDeSwPDuyrO/eqRMyj43dyWYem+SSc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742981481; x=1743586281; 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=zC3l3dK9o93j7uA3wfBStTjnTsQtN1PCfhsmAuTgrmU=; b=kiJ2+qra7rPPkxAemtBdi/O38D/tUOTxeZzTsus95FgbVo3d+rR2fEL38vuunuzbOT +aogXVPfXSAm8E6+0OVEZCyqJu7uZ0UsSuUs9zu0utNDm84Q/rAoZRQ89gbNf3WfqKRE Eytu35ovKBu9tOD4mwQ/JaelS+C9mqVGGFpaPmVvVcUmIemMA7aAngXpxDl+39oSbtT6 t9s0Nod2nwrXsnRAmQfPlekY0feSc2UPvLDaccml9HvhYriRN0U72cI3LK2Mf6tJ5YT3 QHkPpCy+Pugi5pV5d9Efr9DnlxK4uYo43LAehfmNw6D0YfXByIGxplCdyZ2X1Kx0HQHz 9PqQ== X-Forwarded-Encrypted: i=1; AJvYcCWxufXCiDamZMao0tbQATtCGFQOFPlx6lJJ1YvXXxm5aife6Liu8Egj6tIhHhemSIF8N36Ql0WZgw==@kvack.org X-Gm-Message-State: AOJu0Yxc/vlIN3kI0eUk7rSbNOs0Z0mbcBhp0oZxHeMwIQS0GLojxD7Z WXNQ4vkrej1C4K1OkzvNsZG5XAnz4pxVXKlgb4WbOcI6tfVBEgJzqmqarqidPA== X-Gm-Gg: ASbGncvIQAy27bvrePKi+IQW5lhluEHiUuKcibL/Sl94R8319RaLwVXZGmYQkx72LPD vJCtOS/k6HiDQ+gkggL8AgnNSO6oRT513FD323Fby21MQw/FHiGzoAJVxjviJgbhoK82rtEFiIi qf4lZ3TPxxtcIho0c0U9CSz/QZn3u7IolrDyuuug1rKrcj2Huq0J/6ryGRU8c8F5QdgzcnUetvn 2YxnRdWc6kcjqIAGxZZG5vqoIMjR2YOuM7LPtuhBW/T1E9G6U7yPxjXN6Rxwwopgi4nD7AyF+RT tmtrhCBJBdtWw63CQAvLmD4KHXdXwJPSBrH6phSe6iO/JP5N X-Google-Smtp-Source: AGHT+IF7i1ahIIFG+ik/yENr8XywdSg6HK7u19YXC7FIIEwyAHubTe0q6NcRcbnoWVAjzdyzxTa+hw== X-Received: by 2002:a17:902:f609:b0:224:78e:4eb4 with SMTP id d9443c01a7336-22780e121bfmr351614025ad.39.1742981480992; Wed, 26 Mar 2025 02:31:20 -0700 (PDT) Received: from google.com ([2401:fa00:8f:203:d343:29c5:4565:9d95]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-227811da9dbsm105511135ad.179.2025.03.26.02.31.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Mar 2025 02:31:20 -0700 (PDT) Date: Wed, 26 Mar 2025 18:31:14 +0900 From: Sergey Senozhatsky To: Richard Chang Cc: Minchan Kim , Andrew Morton , Brian Geffon , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Sergey Senozhatsky Subject: Re: [PATCH] zram: modernize writeback interface Message-ID: References: <20250325034210.3337080-1-senozhatsky@chromium.org> <5l4pjqlgu4afndn3ysa7ynecjmvepkfjlh56ycm5jt5e4mioqm@dujakwaomhlk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Queue-Id: 265CE120004 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: wu33rnd65ub5wnxxd554ksk88ra761em X-HE-Tag: 1742981481-103920 X-HE-Meta: U2FsdGVkX19pAKReyEKfIKV6fxkLX4ROTp6bYKapDQan7lVEAf3FEVJzyn1fyE7JTu1hACIc9dPxE+Lcx/w4D8MlEEPcCq2WtLKfE1y62yWXxAbPVtJ9AHIUaBOUI9/gKqxDarMHnQpi59dm9MLpJYK7J9XvRfror82g6MVBkidsVOqkTrMC0Y/7LCv7mNFcl0lYnsruQ6WyBCggaAU+B8GmMAUyag0PYgJW+3C4SErE/+2lKvsdy0qQv2Pav2ZRH0LKUfJDj5vj/c46fuf5aN+4qrh+b2kKQzMcOd58xZ3NEl8yPgZH0FBna/nGp1vYMyfZca1O7IJndpDlT5S8MtPS+bb5HU0hNomUGBAaH85+xH5WvNaj/cbnj72WqgVN7ve4fj8iuPjPlNE+nDyqyiLAft7WyhLumnmNga3/aHZh+RmeUB01Z5IGYyKOYYtPLn1rMmiWQHBVMgnThEGsK48CXPRxD/I2wp0RMatqTOeFe2REvXXj/vLP0mjLvzQHh6v25+AHT6N6fXItdhomcBW2iAmbwOHB08WJWuHrwOFmsERwxDnPWUwHhtQ5A+xA1dKrFgxzMqd3u71cpb8Uwcy6PwXufDXU5gNEldA53rIbkTtektmGid5VJ2MhCIhWEaUhmDiBeQ0fOJbLFeBP+2f3U9W6JMTyg5MUWeBPGCEJFFMQQTq6QHYcNkm2FKA6l6uKquajVKVYPvIXZah+e7zKEc032Zm6IveozHEE0N/Z9orwsQxTat9ugYzjV7n04UAw8BGTF08F0y+zQrxDOVk53EcVr8lCdTJ7G45nrvQ6AYmf9xjrp06dxZ4Suj1NBcXZroUwxmo1mFATj4uGu5VPJFV6e7ux63ULH6HqMQd/jAPz5XVqB/lEntg5MtqOPbakF/NxbDdRvq0JMfOfCWC30GKzAx3CNrcGd6HOkfJ0rz0OenNhLAXjJqp5LDQNHsMRWO/xzDdk0yctzoN T2+9THS0 BYbbf493z8fw+OPdiT5Y7FMly8eiHazUr97mpAPKvleZd8xa4+60lu4uxLGJiLOYj6jGEFYsjUxjTottKFP4oh50O6ilep2mICcmHT53JdIye4Z7ce53BlPLtoDpwCCOPEnkbsAsSRIgxJurxybkR3C9WetjmjZQmbnJ/1I+rmRRM0+s7OjClmaMw/G6B3mldZ8UOwvHuK2Rw59vKb9aVQUXhp/ldFHqqXnQJZKkw5/Z7giHe1p3iztL74nYGFsplrdwQtDt0izrrAe6jToQkuMsbTxbBxtYjIrdSIbjEWvEf46og/laaGnOm19AJMsPk9JSDXf0uF8j9OcXjVH0NFVb1cTYRwy1wqqlF4VFhlJRzqiw= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000666, 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/26 17:45), Sergey Senozhatsky wrote: > On (25/03/26 17:15), Sergey Senozhatsky wrote: > > On (25/03/26 15:07), Richard Chang wrote: > > [..] > > > Another alternative thought, how about page_index supporting both > > > single instance and ranges? > > > The key is shorter and the parser is relatively simpler. > > > Eg: page_index=500 page_index=10000-10001 > > > > I probably can look into it. > > Can't say I really like that "index" will mean both index and > a range of indexes. But let me think more. We can permit multiple page_index= as well page_index=1000 page_index=2000 page_indexes=5000-6000 because one element range (N-N+1) can easily waste more space than page_index. (historically zram permitted only one page_index per call.) And plural for index comes at two extra bytes, which seems fine. I'll wait for more opinions. --- if (!strcmp(param, "page_index")) { err = parse_page_index(val, nr_pages, &lo, &hi); if (err) { ret = err; goto release_init_lock; } scan_slots_for_writeback(zram, mode, lo, hi, ctl); continue; } if (!strcmp(param, "page_indexes")) { err = parse_page_indexes(val, nr_pages, &lo, &hi); if (err) { ret = err; goto release_init_lock; } scan_slots_for_writeback(zram, mode, lo, hi, ctl); continue; }