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 E5369C77B76 for ; Fri, 21 Apr 2023 22:13:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 61D826B0071; Fri, 21 Apr 2023 18:13:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5A67E6B0072; Fri, 21 Apr 2023 18:13:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 41FC86B0074; Fri, 21 Apr 2023 18:13:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 2F7F46B0071 for ; Fri, 21 Apr 2023 18:13:23 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id EF298140950 for ; Fri, 21 Apr 2023 22:13:22 +0000 (UTC) X-FDA: 80706800244.11.B0A89E7 Received: from mail-pf1-f182.google.com (mail-pf1-f182.google.com [209.85.210.182]) by imf07.hostedemail.com (Postfix) with ESMTP id 419F740008 for ; Fri, 21 Apr 2023 22:13:21 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=m9bQpTdg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf07.hostedemail.com: domain of dianders@chromium.org designates 209.85.210.182 as permitted sender) smtp.mailfrom=dianders@chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682115201; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=JSr2mFFtQdWo1iBpXBc7j9YbR2hNDpQIj/zleW9xjcI=; b=0mwjJR12n/s8ZXIBTyUeEpVxhoUI13AgjNJ7BmvZerI4hB5+k0HV37/7aDDy6gy003BMVA 8BJt9/GLcwD27oWZ85aZUQLxS5YRx6CnsEPTAH26ErfaT7WU1ABfUWBKQi3vLXzSKIuJh7 z2Jjt5ozC3iBHmX48UfzjkFgVI9pE+E= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=m9bQpTdg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf07.hostedemail.com: domain of dianders@chromium.org designates 209.85.210.182 as permitted sender) smtp.mailfrom=dianders@chromium.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682115201; a=rsa-sha256; cv=none; b=yq9VddmX7TtiIt7+X7lZjLVFubvl58OHpc8D4K5vSpD2gIde9roOOIUcida9HOyD7FBcW9 5rnVTZJVgFLgr2k7pX/O53gbQAstg7+vsS7a0o8fDCk3IH0X6upj1hVN8ncUF87OoW8Zzy /1KjWYczOGkWqNiGIueN/Fy0Yhvkk/I= Received: by mail-pf1-f182.google.com with SMTP id d2e1a72fcca58-63b5c830d5eso2273748b3a.2 for ; Fri, 21 Apr 2023 15:13:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1682115200; x=1684707200; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=JSr2mFFtQdWo1iBpXBc7j9YbR2hNDpQIj/zleW9xjcI=; b=m9bQpTdgAXyi+Ql87hiRr7t0ia1FABR7x6Q01Dm0rrdHasFiZdYvOXNxUAJwhifag9 VTU48ZQzikde41qEBqP6U/YoJtfW9184JP0baUWX+VM7+NI5IciHoN7VntqcBJVnLgcT M+wX4hHaBkLwUDXmQgBgqA4E2w6ec+mgez+n0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682115200; x=1684707200; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=JSr2mFFtQdWo1iBpXBc7j9YbR2hNDpQIj/zleW9xjcI=; b=Nzpi/St5fLz3Wy6QCR6bk8uh9vNT2AtmQ2/B95+10dIG1sYACIdkY5BPFKrmx/QZ26 +IUqLbyBuZicleZbs7Ep1nZVzg2EF8qJd+5Wyw3YiIVVnj3Mqc3nK9JQ9IQKs8RTVomH DE/kTN0lY46AiS+ioViaEdR4/NncrRsRVz7OrMBNil4SHoFcGB3Bmv4z2VtobHEj6rH7 w+huiwJGmhLPKbmXE0xG15SOg8JkqVAAM5Ntb8ZrDajZ5hQnnT6cEQufG1Yb+eh3Wrgu jBdJ/sE+ZKlKfh6r5rSQcuLGHywWDJ4kVZdgRxW33oVgDTi/ceLykU8rwN+BwCyAZBvr hF7w== X-Gm-Message-State: AAQBX9elG+c0sJ+cnFqE5Oe3A7m0Ia++mNBuYUzUONVUBm/GIrJ6wFke HOJ0cdmJQFeNMl2G550n7slJsQ== X-Google-Smtp-Source: AKy350YVcVPbgtRqAo1fCHULXp4ZM49l+s1v38up9iF15ajAkeVGyo7cRolT6tAKFDfkP2NORUfzqw== X-Received: by 2002:a05:6a00:24c9:b0:624:2e60:f21e with SMTP id d9-20020a056a0024c900b006242e60f21emr8355217pfv.29.1682115200014; Fri, 21 Apr 2023 15:13:20 -0700 (PDT) Received: from tictac2.mtv.corp.google.com ([2620:15c:9d:2:87cc:9018:e569:4a27]) by smtp.gmail.com with ESMTPSA id y72-20020a62644b000000b006372791d708sm3424715pfb.104.2023.04.21.15.13.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Apr 2023 15:13:19 -0700 (PDT) From: Douglas Anderson To: Andrew Morton , Mel Gorman , Vlastimil Babka , Ying , Alexander Viro , Christian Brauner Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Yu Zhao , linux-fsdevel@vger.kernel.org, Matthew Wilcox , Douglas Anderson , Bart Van Assche , Ben Segall , Daniel Bristot de Oliveira , Dietmar Eggemann , Ingo Molnar , Jan Kara , Juri Lelli , Mel Gorman , Mikulas Patocka , Peter Zijlstra , "Ritesh Harjani (IBM)" , Steven Rostedt , Valentin Schneider , Vincent Guittot , Will Deacon , Zhang Yi Subject: [PATCH v2 0/4] migrate: Avoid unbounded blocks in MIGRATE_SYNC_LIGHT Date: Fri, 21 Apr 2023 15:12:44 -0700 Message-ID: <20230421221249.1616168-1-dianders@chromium.org> X-Mailer: git-send-email 2.40.0.634.g4ca3ef3211-goog MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 419F740008 X-Stat-Signature: 3ubcmnoqfjup1cxbqci8d6d7de11ncg1 X-HE-Tag: 1682115201-146249 X-HE-Meta: U2FsdGVkX1+LouqVDgc3kCXxCVzq9ygapjAmqInOosZn5fKG1EJwaOJby2PNTqroF+uxui8TVyonOL7DbZVc/RO4dUbdPpKr259pNZWvQ1XCrjzNXZO2JtMaG2+rwce5ckhRFKltQsF1S5mt/z1oyzKqWNJTygNpBHt3mEwIP/Yodgfj4lWDhw5+rph9M+wdvY/qPjvsuIF73CxZEEqMAAIgn9LswZ2YTdmC6Fd0eD1bjsHTQ76iaxKyYVsYx/i3Boh+WAf5O9oDvoJHem4k0mtfklwY+z1u6pGETFC5ByWDahf1nwRqltzI0jycrqSFAZ3UQvVnBEBau+ezkKFImahVNMC6nkSZIZ+TcMvbS2CHlefj6wPiqZpyeSsrP4kf6AmYz2H0dNs23bE8ZuTeO78tJWnObEx/4OTnprFfk7SJzCuGF+GgIa6o6VnluP47QnYlzs3p6spJGxUdVHi8qtGMdstpVn7ODIN/TKFZJgvEdeYzcF1/XoO4YB4LE5DaGe6ockmDUnMsa+4tDJ6DLK4YM4LEuc3UOP+IqXj07xs8BtDU8WhfSQrs7FWxmj2a3NoeC0T03pjHjLhiEFOCyxRMi6OXci2jUGGxDpr90rgsq79O96sVbzSzfTqyb4ShMa3S8iKxN2f1RuOwpie0VlS7I+xafV1lImDTJd5rjQqlMhx2XsvhDg1+8xefX1ivlBZBXqT4m4dmBYESv7yM5gZ1LBGiMor9+D2aiedp+qcJqORn76igV7j8FQNiKm2HgT7Q6ee6sK9mvtF+LmnOl4PfRx8bWuuXOpysIyGfFtODadoYFIGUxzHAe70vqFZnhZD+t6omHlRJcKE7nFPo6GYO685EqNaDDdW634pef1a9PFph9XjlpfSXI1rcciF7k7g3xpLxvd6v6CFVRQ+uQs0tYlggeWJeBr/p1HPQn31PfaCnopEVs5a9am/d+Q1PLRjtTXjQUvr+FsQC9B0 +n3PxUGy ojNa7LcDTPXvpqW37WMhIaZcY1p+2GgrgVQSjs9W3uj9gg7paLJhYnWaqRjFLLPcvnNQHqTI0ZP+hDVarrICUzwI/LxNakdq6CZhCQn/Xrd+ltBjbyAs1BJf2M5SrMN8dA8luXCjHd0mlBtCpJvNWZz2XiZ6579i8Yp1FH5g/9aH5LwnHevcR+Zqkv6gCKmn8RrOotB3ITnh4NG9Zn7KB3uIJwHnMZS3NNgHpM1cSGL4B9sVl8UL6BV0Yb+XXJFa6X4ddepHxER/r3hNMcaX/hudJ5D77wPaoNamMVaSorVsXFD9NqFvUUzvfOgEGpOGMCo4f07WLl1yjVO+Z4LB7LrhGaLJ9/85bBNpjVdWGSEClAhAXHrChjepuYgq6Sl2+cY4iMHKJXSmgzhS6Zcf2/dh2qCz0FMwdSg/QSbnYQJRpDwLUgZxfUqouwrx0ukb48c2W0Yj64Px0qQ5MwaYewIurM6tJSBaySi82RyHNfk3+XpZxe+vIlfIxJ2CX3CFhoYWRn07Yiw8522QRNwc/bzeIBg== 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: This series is the result of discussion around my RFC patch [1] where I talked about completely removing the waits for the folio_lock in migrate_folio_unmap(). This new series should, I think, be more palatable to folks. Please let me know what you think! Most of the description of why I think we want this patch series can be seen in patch #3 ("migrate_pages: Don't wait forever locking pages in MIGRATE_SYNC_LIGHT"). I won't repeat all that information here and would humbly request that anyone wishing to comment on the overall patch series respond there. ;-) [1] https://lore.kernel.org/r/20230413182313.RFC.1.Ia86ccac02a303154a0b8bc60567e7a95d34c96d3@changeid Changes in v2: - "Add folio_lock_timeout()" new for v2. - "Add lock_buffer_timeout()" new for v2. - Keep unbounded delay in "SYNC", delay with a timeout in "SYNC_LIGHT" - "Don't wait forever locking buffers in MIGRATE_SYNC_LIGHT" new for v2. Douglas Anderson (4): mm/filemap: Add folio_lock_timeout() buffer: Add lock_buffer_timeout() migrate_pages: Don't wait forever locking pages in MIGRATE_SYNC_LIGHT migrate_pages: Don't wait forever locking buffers in MIGRATE_SYNC_LIGHT fs/buffer.c | 7 ++++++ include/linux/buffer_head.h | 10 ++++++++ include/linux/pagemap.h | 16 +++++++++++++ include/linux/wait_bit.h | 24 +++++++++++++++++++ kernel/sched/wait_bit.c | 14 +++++++++++ mm/filemap.c | 47 +++++++++++++++++++++++++++---------- mm/migrate.c | 45 +++++++++++++++++++++-------------- 7 files changed, 132 insertions(+), 31 deletions(-) -- 2.40.0.634.g4ca3ef3211-goog