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 5C9DBC27C4F for ; Thu, 13 Jun 2024 11:28:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9B2426B0089; Thu, 13 Jun 2024 07:28:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 962296B008A; Thu, 13 Jun 2024 07:28:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 82AAE6B008C; Thu, 13 Jun 2024 07:28:08 -0400 (EDT) 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 6497E6B0089 for ; Thu, 13 Jun 2024 07:28:08 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 0657E1A1985 for ; Thu, 13 Jun 2024 11:28:08 +0000 (UTC) X-FDA: 82225641456.18.8EB1476 Received: from mail-lj1-f169.google.com (mail-lj1-f169.google.com [209.85.208.169]) by imf28.hostedemail.com (Postfix) with ESMTP id 06573C0017 for ; Thu, 13 Jun 2024 11:28:05 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=GeIh3QiH; spf=pass (imf28.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.169 as permitted sender) smtp.mailfrom=urezki@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=1718278085; 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=RZdlCyDwmh1iqITvyeSYDfgDTIDdV6MRnysRaws4TrY=; b=Cg0649W7BFuvnJPEyh9/ZNS5rD8loOZqhijqlacsoDYmiPh1DsehFr2kWi85yiK6hwzEOM vuXKTCyuVqf/wIRADnOm50x3mBxn4QNX8fepmmkI7OHnHGp5g5eQ/rbyO3XBSoClRaLlUl /W2J7sp+MGCTqJnvcZlNPTqoP640r8g= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=GeIh3QiH; spf=pass (imf28.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.169 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718278085; a=rsa-sha256; cv=none; b=rF03E5KWCIkYF30Jb/J8FgguYDpVbf0q1mfFC/k3G2aWLTaz6jx3WmSLuDmg/Lkamab+16 gzy+TP9HODpgm+TkHgn2BW8ec5EMxJIW+KCIadvNpFUELfVQHUYkrcI2AD/qrMwgnXUgJE En2umqVzbTS8VZBP3BRZlSyYOA204Dw= Received: by mail-lj1-f169.google.com with SMTP id 38308e7fff4ca-2ebd421a931so8727411fa.1 for ; Thu, 13 Jun 2024 04:28:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718278084; x=1718882884; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from:from:to :cc:subject:date:message-id:reply-to; bh=RZdlCyDwmh1iqITvyeSYDfgDTIDdV6MRnysRaws4TrY=; b=GeIh3QiHMBOXF8timWmttVQUx2g+QE+urNLedgt/SRG8tECTxU0ucxn6G3khx6A8WG DaL26bm3X5mEPXHA5hhX/YK/YBF5bUCXYaV5ui4ow/ROEu6bFVKFlOj7300oD8KeG688 Z3HsfMKKl7oVXnfRNzNuO+Hy7n/l3bbUEa0PXr9tQT2C1DFa9j6PZa95tkX7RpHP1tYa o+nq7QnpNzH9azf6g0mWyvJs/qm225GKriziZ2ki6Mk9eTnVi+xYY+EZ+6O9ySnmk9I6 uuFaS1bPm+To93leMWqlWI5V6hSk3dTJZ7j1L5Rkbx1liOflemtCFBSZwqsSw4Wmrv4u qZ7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718278084; x=1718882884; h=in-reply-to:content-transfer-encoding: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=RZdlCyDwmh1iqITvyeSYDfgDTIDdV6MRnysRaws4TrY=; b=T+2LJsIo6nCz6Nc8UrNqzCw+3q4Is7H8FiMGsPBllvkz9H6CfL6EsZKKQDiksl9FJU pxvN+Beoya0Hx1e9gvY9kxt+2Xih9k9ATVgNt6DGFBhBirOklrdKdkM9DnuUgaymt6uA 2z0yP3kpKuSMzxVcEGGSf2je3jUBxB2Nw5RiRlMCHnhmttgDZ+hyYoAxDBmuVce07JzW YQjXYFeJocEK6Smh+2ePczYjY5szgrkyq/m0hVY9F7l/2o8978d+Nyu100aIN6SA9s6D Zka+WIvaiDoK68k5xPHiOOOEi9OvDSlfAyNeBnwdUKXJWzbIWyA1cvL0DBjM7OCGGh1w /ATQ== X-Forwarded-Encrypted: i=1; AJvYcCUUbj6nGUAz2EsesKQAgwO8vOBaUwMi5YsYDalTwjv47VZqKXNjaKx1h2L0S+ZdV+Ay6V40t0xITNt1RFeVpT9TgQ8= X-Gm-Message-State: AOJu0Yz7pEYGhvLsWCAZSxv+YkvVFcQIFGxakeGbA1yo2/wIy4x8Ziw4 FryS1SmUx9aiHS2Dw/9VyxcEolhd4DfukkUez8Jgo+cvvFCnc81w X-Google-Smtp-Source: AGHT+IFsF5mb6Zhamza0xwk8QqfY5bzuu3KRMD6jmBXNETDu71+QYq1tJv9fBnl1yL8+QcS6Ew6J0w== X-Received: by 2002:a2e:9dca:0:b0:2eb:ef0f:8699 with SMTP id 38308e7fff4ca-2ebfc8e494bmr28305131fa.26.1718278083942; Thu, 13 Jun 2024 04:28:03 -0700 (PDT) Received: from pc636 (host-90-233-218-141.mobileonline.telia.com. [90.233.218.141]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-2ec05c785d4sm1812931fa.75.2024.06.13.04.28.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 13 Jun 2024 04:28:03 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Thu, 13 Jun 2024 13:28:00 +0200 To: Baoquan He Cc: Uladzislau Rezki , Zhaoyang Huang , "zhaoyang.huang" , Andrew Morton , Christoph Hellwig , Lorenzo Stoakes , Thomas Gleixner , hailong liu , linux-mm@kvack.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, steve.kang@unisoc.com Subject: Re: [Resend PATCHv4 1/1] mm: fix incorrect vbq reference in purge_fragmented_block Message-ID: References: <20240607023116.1720640-1-zhaoyang.huang@unisoc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Stat-Signature: z748uuizojkr6zfknra8j6atiufsu1u5 X-Rspam-User: X-Rspamd-Queue-Id: 06573C0017 X-Rspamd-Server: rspam02 X-HE-Tag: 1718278085-893178 X-HE-Meta: U2FsdGVkX18SBlpir+a5BEZQmt4nB8KTzNulCTh/pkJeQp3jQfrjFN9uDv/vtNgLsHDkoL1Z/d7swZJ8y5TstSezp1LKNqb9y3qe0IDy1YZNX82ONnCytXWqn+CDSMuJvthDTcOhLf1AaeVakPqCsQZwBp5VF2wMstpn3ismBvxzPYHBwZriPKkqiYVDRXfv+KU3kQRR6ACXW2TvHge1ELtxxBYdevWJqeoJdPCxRpcqeS7nFfx/SkcKcEy+Jfs5psDZgSPbTAwj/2XJdFHbQAPBgSA8e6Y0t2T+mAbAoiyULoJjOyXUgqN7F7lOdsbtWM7Y/66mbiJUT3Pgu9w9viydSSnEIqcgo/qternoHzXiCuatZ0rSI8BMi3aa66/EQa2HRpuet9hb2CI5VMHCIry+28Ob4v1KpAguJwTcvMnvuBbN+RhOQt2aLL+U7JOK4bWc2HyVf/YHgH3erb0/JsNYoRwJbDOhvLMRDvIXFK3AlsLdseWIxekFacVxH5awE9pjmc0odYLBKqsJfOSwJo69z0aMDXrNWCG6iZPIqh66FGTMTWxjpTo9OGKCWdWoevdN+Q8bPr/rXjFzvKOICzNF7LIhYHj3V9AYfl8ZbFEhvzqWf4v0FYUDMwOPLG8zKHf5RGXGmefQIqYLFEi3f03SRok0Eque/SJUe/W1jx4hUuZruIv+IM1RTUkc+O7LpLIRBINMtsOLkR0XS6hOIIfgVmXzHbQ/4f7wkZnwiLZO00OO/uwxvph5zb9DJTnN5ibcIgRVlOix42jkNBQnEkmL7RfhMaIlcZ8jPuAWkuN7ayRB63xGoRIfmPjEy7GssOukxDn8pR48oo14iCtENbXGUTltw76IBbfNqdDDboIqpsX91w4jd3XK7ehEEGcapjxFduo7DVEEqyusU+GTbfQZaoOI/5taaz+OUUzie8KI0rKvngkc8DDV9DntmSuzysE7Y1UJY6W2Er1oNE4 2VbtYRYM WqJekQw9ketWvxYD8zFjLaPPwT3EMZsVBrxg28EmKlgh/2sG8xf23MOT42j8fOvTRaJjoDC8pJGj7zIXKFzUvGoscubqON/GyE5ALueGSsxqxZN6N3YEpAjVSdykYeZYmiqoV2TBo2N/QGTIu2Na0mKsS1CS5zre4TxC7OKmgsAlj5gdqhfqz4lfsH3Tn8k+U1c9PrEe0/Be2mbN/FDtHAXLJvP/0GhmPklpnTpnIXUZTIvQ+9XEDViCeKBDMiBbgyN+BTy3An4xI209NZVMAzMH7Mjqb4YdLTSfj9xhiYz4jzz35GNBqGzk5V/3t3DP5py4r/NHZ4p74hKXaWvbSbeMGXr3S0RgQs5yl2iN9pl7OgCskInynT+jNtFomBjolAo/+mSe7CicIgX/pu6chDYgPswzAgncS8zBTBQ9WVu7lxTbUYO9Q4BKlwdn/rfzgmX/uIT4U0lJOFTFn7DtoA5ouOSqKIwyrGzOrFLOAAHzYVaGvxcMb1XtDdw== 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 Thu, Jun 13, 2024 at 04:41:34PM +0800, Baoquan He wrote: > On 06/12/24 at 01:27pm, Uladzislau Rezki wrote: > > On Wed, Jun 12, 2024 at 10:00:14AM +0800, Zhaoyang Huang wrote: > > > On Wed, Jun 12, 2024 at 2:16 AM Uladzislau Rezki wrote: > > > > > > > > > > > > > > Sorry to bother you again. Are there any other comments or new patch > > > > > on this which block some test cases of ANDROID that only accept ACKed > > > > > one on its tree. > > > > > > > > > I have just returned from vacation. Give me some time to review your > > > > patch. Meanwhile, do you have a reproducer? So i would like to see how > > > > i can trigger an issue that is in question. > > > This bug arises from an system wide android test which has been > > > reported by many vendors. Keep mount/unmount an erofs partition is > > > supposed to be a simple reproducer. IMO, the logic defect is obvious > > > enough to be found by code review. > > > > > Baoquan, any objection about this v4? > > > > Your proposal about inserting a new vmap-block based on it belongs > > to, i.e. not per-this-cpu, should fix an issue. The problem is that > > such way does __not__ pre-load a current CPU what is not good. > > With my understand, when we start handling to insert vb to vbq->xa and > vbq->free, the vmap_area allocation has been done, it doesn't impact the > CPU preloading when adding it into which CPU's vbq->free, does it? > > Not sure if I miss anything about the CPU preloading. > Like explained below in this email-thread: vb_alloc() inserts a new block _not_ on this CPU. This CPU tries to allocate one more time and its free_list is empty(because on a prev. step a block has been inserted into another CPU-block-queue), thus it allocates a new block one more time and which is inserted most likely on a next zone/CPU. And so on. See: ... rcu_read_lock(); vbq = raw_cpu_ptr(&vmap_block_queue); <- Here it is correctly accessing this CPU list_for_each_entry_rcu(vb, &vbq->free, free_list) { unsigned long pages_off; ... ... vbq = addr_to_vbq(va->va_start); <- Here we insert based on hashing, i.e. not to this CPU-block-queue spin_lock(&vbq->lock); list_add_tail_rcu(&vb->free_list, &vbq->free); spin_unlock(&vbq->lock); ... Thanks! -- Uladzislau Rezki