From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 111D9330B01 for ; Mon, 13 Jul 2026 16:56:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.49 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783961777; cv=none; b=lyGB7hSv6usaloG0jueJ3DLGOwHwY5s8iyygfkAyPC0dmWdLqPNWwHQ2YjDI3YIm7iuJgdBNpejYLpW+C5+Q7cN1il4YXq+NcSUX29sAt4yya0ZZ9Ve0shCHIHrNgD+rL3ySGevFTY4VWXHIZMsvQ5IyzwjnyaMJu8566mdMGZI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783961777; c=relaxed/simple; bh=wYe7kym3kczWr73lptfB1bTj81zD5wvAqQaXYZ4DW5M=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=IwpLszAuZcRowUgzyIkDfyO4/Fw730uR1YlbVnUHkUv4rlkVr8VcF0aAhpjcT7zQgCjGNPUtZmz8+TIFf/wPwjs+ODhzMoskYRu6dl11X48iOh410zLlYUMyXqSz5x35WY7fK9qaeZ6tNVZXzw0goHE4EAcjrktbzqqttxxxsDo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=pZ6p7Hie; arc=none smtp.client-ip=209.85.216.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="pZ6p7Hie" Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-38dd55ad76cso78967a91.1 for ; Mon, 13 Jul 2026 09:56:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783961775; x=1784566575; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to:content-type; bh=+wyTThpzWI663yfCX7yR0ohXV0bj+fwjL2+oCBrswHw=; b=pZ6p7Hie+ZuMyCjYswdbNFYtHYwpTiPQJeBxQDgIy7EmtqA3YwrisiUmulxHWcgh7p mSzANG/LXXobjGulyTi2kSjzBvp+JDDbq1wXipDZgrSJWUj1crZjkt2sxlTMK/zueLf7 5yPmfr75fWWklrWpWcDCcHrcGG157arPtZtcY2FARd/IaVTlv1jRZfHH+eqHXs12qk3G A1xBemqKnmwrdUlPtwZs8SH4WDWAbkeFi8shvGawPWatfrORXtRU+Zq89GODYbZc/wYa 2Pe75HEhtpy9RKIUzBPRBHmH6bodAKIQlnOkVGuH4YWIkHJyDGjDsclp+F/R+JU8qqkD UxpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783961775; x=1784566575; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to:content-type; bh=+wyTThpzWI663yfCX7yR0ohXV0bj+fwjL2+oCBrswHw=; b=FSkAo0O8N9+KV3QRPasq2W0Kre1kQZtwKmiLz3PJKaBU/znAgGBi/UwDhLNbInFoSc pOSn2D0coT41SgkcZ/Tg/3IbXcO+QFThXTfgUrHLx8WdLINmGcl7GzGtKzxkLxy73APp yi7R0KGRcJysxrSU+AzHI34FabKHPBepYgAEU28C64Ir8jS2K0HPnsqP0PMgkapCtsqv ajtashUIIeUrXfEJVQmydPklvr/Qb/lZfn1ODkJbuKq9KDCAQ8uWIdYuMPDpFNuu5sGi J6rknsApMI9FqpVBfbU1MMH3MGpmJr2zyb3LiMvs2ydhOzCQgV+NJJm+ydk2aVbV3KuS ecPQ== X-Forwarded-Encrypted: i=1; AHgh+RpvUTo8okheGabzHCOYcDJUts/1LCfmHLywwilDcQn4bHtVPGFhFntd87YNd9nYI0IC+pxbaukVZ9lo0s0=@vger.kernel.org X-Gm-Message-State: AOJu0Yxa+PgiuokbGHOc/G48/9eU0T172jb/yruwNCWLiPvFkjEXrW9M asNgv41COHxkFHf6e4C0DxPPtB66cxYOpMwxQAVgto9La/BhT1i+z1gt X-Gm-Gg: AfdE7cmLNp5WRyJhFocgEHLB/bZhX/5b6BodFvcTrDzxy1S0GoQfjwXxAl1mC98GKeC WO0n4J+BfdYsHOmIdJeik2wim3JUHKUjJMR61E4S0iLaeoIGAEDtuy1UrNqKIDNZhdUeyl6518E HLShkjiReu8v0yvgTEIrafsr4Da8oT1EtnrMZZFrZgarPZqbn9Cjn60tLQc3oU/SAdrVQN0H5T+ /SKXKqyjtP+mxfZkrLoFZeuN9emJKtVmrD/Npx3N2pDADOjRMTiDkmbAqOt+VyHzBDgNpa6embc ACw3hwmy4v44la9SK6BNKlI1DpJWR916ayT9neAk25yygkW3T4jGDvYys717FC4pF2kme+Tho+Z nWWuf6LoMVh7q8N59ng+HeeTRGSlB3UHMTVamjleBKnzm27rll10dGKMKdFNSLQ29MsxaurmglO 7jn+Cpphj/Ni5NglCUzbyoN2EUN6leNBiRErqJDU6HMxgDCpYd8KS+qdY= X-Received: by 2002:a17:90b:57cb:b0:36b:769c:c037 with SMTP id 98e67ed59e1d1-38dc81978ecmr7351194a91.5.1783961775319; Mon, 13 Jul 2026 09:56:15 -0700 (PDT) Received: from skinsburskii (c-98-225-44-182.hsd1.wa.comcast.net. [98.225.44.182]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-38e1745a596sm180718a91.15.2026.07.13.09.56.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Jul 2026 09:56:14 -0700 (PDT) Date: Mon, 13 Jul 2026 09:56:12 -0700 From: Stanislav Kinsburskii To: Andrew Morton Cc: airlied@gmail.com, akhilesh@ee.iitb.ac.in, corbet@lwn.net, dakr@kernel.org, david@kernel.org, decui@microsoft.com, haiyangz@microsoft.com, jgg@ziepe.ca, kees@kernel.org, kys@microsoft.com, leon@kernel.org, liam@infradead.org, lizhi.hou@amd.com, ljs@kernel.org, longli@microsoft.com, lyude@redhat.com, maarten.lankhorst@linux.intel.com, mamin506@gmail.com, mhocko@suse.com, mripard@kernel.org, nouveau@lists.freedesktop.org, ogabbay@kernel.org, oleg@redhat.com, rppt@kernel.org, shuah@kernel.org, simona@ffwll.ch, skhan@linuxfoundation.org, surenb@google.com, tzimmermann@suse.de, vbabka@kernel.org, wei.liu@kernel.org, dri-devel@lists.freedesktop.org, linux-mm@kvack.org, linux-doc@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-rdma@vger.kernel.org Subject: Re: [PATCH v8 4/8] mshv: Use hmm_range_fault_unlocked_timeout() for region faults Message-ID: References: <178371866223.900500.12312667138651735591.stgit@skinsburskii> <178371881034.900500.5214601525971121683.stgit@skinsburskii> <20260710151216.0397a6f9ac5c7b4ccd274cc1@linux-foundation.org> <20260710224606.69235ab5c49b5987fd33e924@linux-foundation.org> Precedence: bulk X-Mailing-List: linux-hyperv@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20260710224606.69235ab5c49b5987fd33e924@linux-foundation.org> On Fri, Jul 10, 2026 at 10:46:06PM -0700, Andrew Morton wrote: > On Fri, 10 Jul 2026 20:14:47 -0700 Stanislav Kinsburskii wrote: > > > > > + mutex_lock(®ion->mreg_mutex); > > > > + > > > > + if (mmu_interval_read_retry(range.notifier, range.notifier_seq)) { > > > > + mutex_unlock(®ion->mreg_mutex); > > > > + cond_resched(); > > > > + goto again; > > > > + } > > > > + > > > > > > If the calling process has realtime scheduling policy and either a) > > > we're uniprocessor or b) this process and the holder of > > > interval_sub->invalidate_seq are both pinned to the same CPU then > > > cond_resched() won't do anything, and this might be an infinite loop? > > > > Yes, looks like it might. > > What can be done to prevent this? > > Well the best way is remove the polling loop and use a proper sleep/wakeup > mechanism - mutex_lock()/prepare_to_wait()/etc. > > If the polling loop is to be retained then maybe msleep(1) or > usleep_range()? Well, running MSHV - or, I suppose, any other VM - on a uniprocessor host would not be very efficient. I’m not sure whether this corner case needs to be handled explicitly. But even if it does, supporting or explicitly forbidding it would be a separate change. As Jason noted, this is not a regression introduced by this series. Thanks, Stanislav