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 23EBBC5AD49 for ; Mon, 26 May 2025 09:08:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9C7356B0083; Mon, 26 May 2025 05:08:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 99E526B0088; Mon, 26 May 2025 05:08:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8B46B6B0089; Mon, 26 May 2025 05:08:52 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 712C96B0083 for ; Mon, 26 May 2025 05:08:52 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 14034C0746 for ; Mon, 26 May 2025 09:08:52 +0000 (UTC) X-FDA: 83484484104.26.9A61F75 Received: from mail-wr1-f73.google.com (mail-wr1-f73.google.com [209.85.221.73]) by imf11.hostedemail.com (Postfix) with ESMTP id 47DCB40004 for ; Mon, 26 May 2025 09:08:50 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=js+gAyw2; spf=pass (imf11.hostedemail.com: domain of 3oC80aAgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com designates 209.85.221.73 as permitted sender) smtp.mailfrom=3oC80aAgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748250530; 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=vV1ZLtaPYPIU9C4hlxpLQHgd5RO8hZ+AB4T6N5ac4gY=; b=NAsKX76R8fqqB39zRcNE4ULKvycrO5PxkClOvK+ds9IrS4/cAyKAT7X4THBQB/rNREPfwO NKRfotEwb9ke05KD6lJmrQJ1mq93gMIFZoyOBBIGLVpfPH+weQGJAxzIOeR8bKqAR/zEKC Sod0ev5jtBiY5ZvtjZP9c2czic3SN34= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=js+gAyw2; spf=pass (imf11.hostedemail.com: domain of 3oC80aAgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com designates 209.85.221.73 as permitted sender) smtp.mailfrom=3oC80aAgKCBk8z19BzC05DD5A3.1DBA7CJM-BB9Kz19.DG5@flex--jackmanb.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748250530; a=rsa-sha256; cv=none; b=FFb4fy9ezKVAX/tGmqSi6lZwShz+XleI3Phh/PAh991LfDYLSYKZWP28KtTPbP8nf1taz3 MfJYrOS7Sm826s5Ig4+ZdrBhftGk1PzFTFis6OO5mjqpmGgEM4bsVweVDnniQBpVvAeIUl r1wUUBKmT1aqGAMYX9fBpXuGjCi2lNs= Received: by mail-wr1-f73.google.com with SMTP id ffacd0b85a97d-3a4d6453521so475909f8f.1 for ; Mon, 26 May 2025 02:08:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1748250528; x=1748855328; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=vV1ZLtaPYPIU9C4hlxpLQHgd5RO8hZ+AB4T6N5ac4gY=; b=js+gAyw21YiaZ5KyFhlbJhaXCk6mCGawRIJAHQtTeIJRg+Gxy1CKjWvNDA37q+pyhj Fvs4hGsYCChb7V0Ky2a3lTKXCoP3tpJw8bwzQl5m5zD82XWeKFIcG2pPsi0z2M91MHfC 9y4DZzOlBhTs9YYISnZuWYcQzZ5jw7XMgI+K/KQmj1WXuBmWOW5ZWIGpblaBqam4ZDuO ojVhVRRNn3NfGvex/v9LOnnqA7acGHZHghAOoUtYQ8txAQqhCwgJUESDTqCJzMTx7vQs ENZjQIh177/bAP9bGyrym+WjRsOnQ5SCbwIhMbLAtZOCiLDaOlsBnB6WvuKjl35EdTZG M8Pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748250528; x=1748855328; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=vV1ZLtaPYPIU9C4hlxpLQHgd5RO8hZ+AB4T6N5ac4gY=; b=i5oLsdmabF3eVTlxdvlapnaoI+vTTst7AAFJ5DxYrHKRRZW9w4RdzJeL2pilfK7z1V /IoUDm4sqAg2ZZ4kpLfaehP0KJK0hKHjz/G+oIoprfllKxxZx7BXwsr9iCVAFF6Adlaq IczY3IrBjfOpVoss2P6mZ0VB/UC8KXQeuEin9IB9YyL7zCb1DbqyRZtaAZLWXb3hEyWw NNHpQGey8OIMZuttVvbiPeAvRBJxu7lnmBFlNkgF9NM5bCQ0k7RdAEjTYFmpEdSoP2LR cple87OG0N9AMvg58ZpJq6MfnquYd3SA3ctZLT9lvYRGZxIqueu92F5hbDl7EV9y5Jfs CaUA== X-Forwarded-Encrypted: i=1; AJvYcCWew8tKi5bxJvor4qBac0MeA57RDpgPHPiDNdHqDJdF0c3/zFXg0X9wbvEZ9D7tQhTw85Mk1JXqeg==@kvack.org X-Gm-Message-State: AOJu0Yz6qpzfJtBYHbPZVQlBCraEsOv4+5iHqsIl2HMZQPwICaTSj2W1 Sz1WYEC0ZyRsiu+148ro3I7FfxvBdQDGLLWSONHZGEkR8W9p0/SP6rBZUfNbjLJMH6U5brrRYg9 10fbyZyaYBaXhpQ== X-Google-Smtp-Source: AGHT+IHAQLjrmeWjPRISFIiXgvA5maVZRslviy+wu0GfEc4uIyIYcxyOpXuuEsFBPNoXDEFyqckMW1YRit0mQg== X-Received: from wmcn11.prod.google.com ([2002:a05:600c:c0cb:b0:44a:82c6:853f]) (user=jackmanb job=prod-delivery.src-stubby-dispatcher) by 2002:a05:6000:250c:b0:3a4:cfbf:51ae with SMTP id ffacd0b85a97d-3a4cfbf5352mr5135469f8f.4.1748250528651; Mon, 26 May 2025 02:08:48 -0700 (PDT) Date: Mon, 26 May 2025 09:08:46 +0000 In-Reply-To: Mime-Version: 1.0 References: <20250501163827.2598-1-ujwal.kundur@gmail.com> <20250510160335.1898-1-ujwal.kundur@gmail.com> X-Mailer: aerc 0.20.0 Message-ID: Subject: Re: [PATCH v3 1/1] selftests/mm/uffd: Refactor non-composite global vars into struct From: Brendan Jackman To: Ujwal Kundur Cc: , , , , , Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Queue-Id: 47DCB40004 X-Rspamd-Server: rspam09 X-Stat-Signature: t6f9ru5t33sbciczmusdumruqtu9humn X-HE-Tag: 1748250530-126699 X-HE-Meta: U2FsdGVkX1/LaC2nbjyum17GFefVzMM+CQ1VhXazEhmRALinaaJyz6c4ND3nXc4cL98lrnz6R0gw5B1cyVaNR0xw+hgpjD6SrJVMR7iw2bNdqNkqC8sM5Z8hUFC9bgC/4QuC9h6jmW3YwqvDuqCXuFaQ6aMg1yCxGKCjROetgt609eHdTPq1dT6efqTs2GkQvn40PAjG04rnGgmaYReHjMnbI0hb1m+/MJjM1AE/MCkm1xMubGdbrvV5DMWpnegyIlcGhcFs8jeu+7s94hdn/tI0ffzYCmTBbFmzgTeS12/YrC8B/VbcUJUCI4InWkcvCZ31DCEYeAXXnvOcu/mRVNk4iXKWpZn3jHdFzOGfPTYzkHrVkYCZa9/fmRhzM/IiVZ+3xuQYah+qtSU+826LIz1TFhp4ooJKdJ2plxaAlJfoVoN1O+378wtNdmK50zHXo4biFeInPrsLl2+0qA3neJpGaIT9UG3c7bI4IJSPMzoz5XgmtTcTt+bcYHfsgrnGuGsrfSiOoqkdHeSj/kSlVtbUd0umUN+Mn1KEMGrUyu6mbiqCKRR6yRXnurwhDzGIqX9F11BuVUAmrTthlodTqwmK8i6u2hTYKD59/xFpcHRWURr/kfs7lquDcmAGl26ceu+H8Q+0kss4NTec9Cm4AkQDg5iHdLpmNN8u9XX+yOs00cF7GQVkX3Zm/8ykfYfdlGs7/hc5ouX0HNH3A229CZLuxvQ4hqWXtPdH6Wc9Sv/PPyJIGCWR97h97B9neANEsF1Nvy44ABEniWf20XZeT09OJweTgzZgfj7sEnby2VunCANVdZcjud2DNwSHkCk8PBYpdmQO7ZYw1VdKF3sn1xQoBUB5Q6IyrwnJLL1lNCNzmCZH3LjGs+aCqw8YttISfa6kJwYU9AD3HNKUQmi1njWFWk/byJvncMcWCgw0Cl30Gu2q2ZWraDf1C03GawBl2UCmDWKeXOuNCpLF4tg 0HVbKGFn 3z5DIClHZkFPOOulhXHIwMOHgu0ADG7TRT6Q8HVOPnrSyllgMTc8ppMc4mkSrR/MnZeCAzlydrDajkUEkLDl4M3ICUSzCbTAj9SQo8hHPhT4Yfyx5xD+lSvRUe9FqEj+6IYhaP5XsPbJxxYbouNCnWOeR/Zyct7c4cKjvcBGEZTBi3LnMTka+ogXzCnLY4vR12toVYtyjTbKjniqGYC+mvij1h1RvQGUxGzK0N/o8LoFThgjI3lgiRrx+wy+FMcAg7r3IkRXzAZyGthAzKOZWigQaOHXhjAZzENwQoKEHc8ZTBqkJW7m+bQ29yk8QPbkbXpWKgYhUjsKE3Jza41wTg0KSjecRZKRIoI+xmyFoPmHdckmHCDRadcty2ja58TDUwoIKJCUz+gyz1RFlzRzt4K8jQ9NvBN3+W6foR4aM+iyjlknIyq6hmgWmnioJL4+gDttX8u1cTJ4B1YImVrCjlLRk5d2dfLIgEAfZoLrUsrppQ6bAQzNPpD4z5Zdd/dEYjAWjvYffhLgwWVC8+afdDRz/DwMylh225Op5S1I6ma/dvzYNIZ1F7uoHYqRcBrwHobW4GJ76Xk2tDCnfda4U04kSzZDPKUPxNyu314O5fGHm/tCvjPGyIBxu63IVOyt3gZHasz61xe0XONQ= 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 Sun May 25, 2025 at 7:19 PM UTC, Ujwal Kundur wrote: >> I'm afraid I'm too ignorant of this code to be able to suggest something >> good here. But, can we just remove the comment and plumb the gopts >> through to uffd_poll_thread()->uffd_handle_page_fault()->__copy_page()? >> >> This is not pretty but it lets us remove the global vars which is >> clearly a step in the right direction. > > Perhaps Andrew can weigh in? If I understood this correctly, we're > trying to assert that retrying a successful UFFDIO_COPY operation > always results in EEXIST. This is being done in a somewhat racy > fashion where a flag (test_uffdio_copy_eexist) is set every 10 seconds > using alarm(2). IMO this is a flaky test, we should either: > - remove this variable and associated logic entirely (preferred) > - use a probability function to set this a % of the time instead of > every 10 seconds > - use an async library that can replace the implementation without the > use of global vars Sorry I don't have an opinion on which of these is the best (I can try to find some time to form an opionion on this later!), but: Fixing the flakiness sounds great, but I would suggest decoupling that from the refactoring. If it's practical, focus on removing the globals first, while leaving the fundamental logic the same, even if it's bad. Then as a separate series, fix the logic.