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 6523FD2A53D for ; Wed, 16 Oct 2024 18:39:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id ED7146B0099; Wed, 16 Oct 2024 14:39:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E87216B009A; Wed, 16 Oct 2024 14:39:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D27686B009B; Wed, 16 Oct 2024 14:39:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id B35276B0099 for ; Wed, 16 Oct 2024 14:39:30 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 04922160A9C for ; Wed, 16 Oct 2024 18:39:18 +0000 (UTC) X-FDA: 82680327954.17.DCD6809 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf01.hostedemail.com (Postfix) with ESMTP id A798B4000E for ; Wed, 16 Oct 2024 18:39:20 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=FHxUC6t5; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of llong@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=llong@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729103850; a=rsa-sha256; cv=none; b=IxSXeoGjXbTAnUYAUPMhuZCnn5txRPc3Pgk/bB+bkceRsbi3K3k1KheNjVyPSh03P6/Kxs I3oV/nW++UPGJaSZGj60IZ08c0Ht6KacE8+MApPMNY59w5ACCNEFMTCN/iuM9LbTkxV0ud pVEWMYqJ8/uFkk+qlQXrtotrfF30rIs= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=FHxUC6t5; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of llong@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=llong@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729103850; 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=DaLKtS1m0U/PT76wz2Cfpb6Itx1FEV9x09U6V9DYAEI=; b=etn2HmNE51Pr2Y2Hx/n8hp8+s4s7T0Uq4ITomQzKJKl68xyjIY7/OCGuRGF/JVyFQ4ixZE 8VjCCMt8PJRRKIl+wBu8ppkFE2RkkcwtKHCIyGTVr053jQPTT4YHHbvk5F08jH1V/8D9qJ ah+4BnNqVlQzFnxFXSzBRqDz70Djwtk= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1729103967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DaLKtS1m0U/PT76wz2Cfpb6Itx1FEV9x09U6V9DYAEI=; b=FHxUC6t5ni48MLS6JMIBffskqDXcnksMcqJRmYiZa5NmR02SU6TT4Qlf+caD3/LcXcrmZc Ckv6s/ktIvSIcx+yWjeom65l9j9y/Mi3Kmidv8ExhMWl5+bfn45T6mrmuttD/i/mTqxxQR ClWnbajFNcTq7Ee6TML98ohCHXZtLCA= Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-303-TzCGZtAXMw6bNQs79S31bg-1; Wed, 16 Oct 2024 14:39:25 -0400 X-MC-Unique: TzCGZtAXMw6bNQs79S31bg-1 Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-7aed2d01616so20998285a.1 for ; Wed, 16 Oct 2024 11:39:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729103964; x=1729708764; h=in-reply-to:content-language:references:cc:to:subject:user-agent :mime-version:date:message-id:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DaLKtS1m0U/PT76wz2Cfpb6Itx1FEV9x09U6V9DYAEI=; b=ttkZSsTk8wKTHb4NCV336rKsisdYu3LhdKm3rUCYciE44kW+KJJcv0aMgmRnEzqKHQ MmrnJ5AHk3r+myaCR07nT1NGTP06qseouTTvw7eEigJ3mTJtiVuZMPnkdzazI9isg3Tn nI4jzbCsPiCa4YCjpUAn2LQftPwfZHhLcl4upW/2W0sosXyDWcfBenu548XFh9KSTeK4 wzySfUFLDw75HYpUV0zN/nQ623+0Ez+MmxyNLgduYHiDTTng5GuU36p9L8JvdIiUb9jl EE7UPoJemjJXh3Ds9PVIAbxpbWhxPxa8WB+33l64BZm6SjPTx3gQEvhxO2iQGGMRrYxL IlVg== X-Forwarded-Encrypted: i=1; AJvYcCWwd+mLXL6riCtJiRBUICrHxAs0iaSKrokmcdKbFB+f63yIDY6BJHfgtXDP+JBMpV9tvhNx/ks5kw==@kvack.org X-Gm-Message-State: AOJu0YwhSfBRrzuyCn6E3uVraktm1j4paRNi/RO41zMDIkypjWxEZNlr Wft0tljhnNhGwUVQRpWcRTHhdovj4ktDFB2Gq7IfLhJPIX9s7aEGz0vedq6Gv0nHCmxgFxHbEKB O1zOYrhiin0TlOnU/Z0vDkiLVga84ogKj1LIba7GxSXxtSm4s X-Received: by 2002:a05:620a:394f:b0:7a1:c40c:fc66 with SMTP id af79cd13be357-7b14189f679mr701500785a.56.1729103964581; Wed, 16 Oct 2024 11:39:24 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHlO9VW4tXQ8QmXFRuHvYy9esancpfEovNMJrlmUOmGfiOZPWPnmv4KtL8C+/wB7DjNAcWLUQ== X-Received: by 2002:a05:620a:394f:b0:7a1:c40c:fc66 with SMTP id af79cd13be357-7b14189f679mr701497185a.56.1729103964131; Wed, 16 Oct 2024 11:39:24 -0700 (PDT) Received: from ?IPV6:2601:188:ca00:a00:f844:fad5:7984:7bd7? ([2601:188:ca00:a00:f844:fad5:7984:7bd7]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7b1363cb3dbsm214698085a.127.2024.10.16.11.39.23 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 16 Oct 2024 11:39:23 -0700 (PDT) From: Waiman Long X-Google-Original-From: Waiman Long Message-ID: Date: Wed, 16 Oct 2024 14:39:22 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC 1/2] rwsem: introduce upgrade_read interface To: Matthew Wilcox , Waiman Long Cc: lizhe.67@bytedance.com, peterz@infradead.org, mingo@redhat.com, will@kernel.org, boqun.feng@gmail.com, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org References: <20241016043600.35139-1-lizhe.67@bytedance.com> <20241016043600.35139-2-lizhe.67@bytedance.com> <7f7b277a-7019-4bf4-b100-0505c6ce9737@redhat.com> In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="------------FQP6uoHMLRh2d6njkcZL8j35" Content-Language: en-US X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: A798B4000E X-Stat-Signature: ukry5kks5y47xskar4becq3cis1zcayt X-Rspam-User: X-HE-Tag: 1729103960-40608 X-HE-Meta: U2FsdGVkX19lNLpVyLI7+C3LzvCP0VPiCiqOYss1c1WXs2zZqMwxBsPJGuH4ybNnqj6W9DuwxTLVVKzgimdr9VkNzwwwsGOe9AWUFtKRslcaboI43ixMz1p8+RQDF48IWG4FAj7+PmrOiI72iFO+/6MmykT5A0kIKlVsh6h6GvXiOUlVjj/AKXrTBkJGLuwNx9F6cTvX/CxEn/KKPI6z0MGZiiuAWs3Py51W9Utr+RysAAzZ/kJYAbZG0FESh2o4l9x2i8QrtgfeaQUWGWdA70WQ2s73DHAZpZjOpZjHCbZPEKMeUUWDR+YMWjfpBalKgN2AcmtFcMxvBcpT+fYUH9U32b7E+TpDCzvLmzkzCxMWdhOjoTfTvewzNfgTl/WwKf/Fk8LkC6vo7+L2K64o8c0wN5o4S2hzK7K5KgZ7oU1y19Q4ca9GFkaoTUwp4gO8E3YwyAEiZZDb9n306ZAHEaCMsRzam6RxzT9v9xBx8jxob11KmWbpgqbNbhX2MbAeOtmtx1vgb05Pe0oeUwwFR31jGJlPG0z5I49Ijcw6aMxCJZOpSZtMuD6DU4/8OJyEV2JQP5uJqVGIGiQxf66m0b3TvZykfYcfd8TYkKilgqQ1dEQ2ecl7cRONaT4fbOGb1yMwOmw2E25/5HzIkNnquKiyvzXjrwMQUYVlj5isFSmW3tmCr3eoDy0mxYzGVS0rLrja/fd2eDu/Bq8ZocQqUxEkCcC2afNBHbA8b/qQxZ4a5cVifrroe2wJNO+6yfge8zeCRl1Ve+ZgEwjrDg5+dkrsYCn1ToK9ruIZREIQXhMbgMy2vNdMZ2m/ChEI+eeQhfbHXRzwNoSLR3t8Af5Fz4gfHodwhEKAOAZjigigHtF5Ze9E9j6AS1QpjjMWyHQrIk1oZeDWEI4ZaKX7UwwL7w7xedUcPy01tYPs+FYPcAs/ozz2rrg0VjogRgOgtLXj3Se161TEk/IvyLlFFG2 7HZEbp/B WvA81NY7ShXS60wBc9W8cVj2hMYpbpU2PxRPwVFZpZba/PypxQFmNPGDZrP+ZcilmZZF3ZB6i3Mz775+1vNefDyL6DE5HTFUdDFFW2CMxv+dfjAhYpbvKtUBdlwykaUscpRDhVd1MIcd7JaRPUqH4XBNEiUWLBsVgLrNfAWFHzkqp+CIGnsoN/hkmC+IGG/iKPuIPgGoggLZcempxwlQmW8pPiEp4cs5UL5VYd71vTwXYqBi6zBaUa6SjU967GEqXHOpTyBNSdfcC8DbxPubIc+DPFDjwUl8myMxNwx657EXxC5DEdoc1i0ndnf8kFB8CILDET6SE51ZKumEZYDq1J71fCRwaFDCXRoIOGSOZoPfYKfw9s13qgYgSmsOmbA7DvUrZS4s/lMV9185SJHrcHNnO8moPWosUbgoW1YkSfdpBXnUpQr3iQWG7WrFMbsV77sGs3LfcmJQuSqkmbz+pPvnZpzFWOW4a7QlH7G1/Dn8BgDZU1+OF4Om90/gJXsFQUL8mGujo++EzzAGoSMLrA18oYlmaXwqetUfyhZdz4Ie1UQGnMtgE2fNx2ldyPJE48pkHe/lGOYOWmaaO3Cp56oaDgA5Fsk0glbZyellLl4yXB8StnkM8q5wutxq7dbQc0EnrPmTcoeMEJpA8B1lv5Uyh5CCyMaPQ7fivBahx6WeyVVMxlMBtje8dW5aznAuqp/l1qL3Hbv4nkiYRQlAzBppZISmGIUu7dIz0BH/AodSayNE= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000594, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: This is a multi-part message in MIME format. --------------FQP6uoHMLRh2d6njkcZL8j35 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 10/16/24 2:05 PM, Matthew Wilcox wrote: > On Wed, Oct 16, 2024 at 10:23:14AM -0400, Waiman Long wrote: >> Another alternative that I have been thinking about is a down_read() variant >> with intention to upgrade later. This will ensure that only one active >> reader is allowed to upgrade later. With this, upgrade_read() will always >> succeed, maybe with some sleeping, as long as the correct down_read() is >> used. > How is that different from Kent's SIX locks other than you can take an > rwsem for write immediately (SIX locks have to be taken for Intent and > then Upgraded)? Yes, it is modeled after Kent's SIX locks. The goal is to eventually eliminate the need of a separate SIX lock. Cheers, Longman --------------FQP6uoHMLRh2d6njkcZL8j35 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit
On 10/16/24 2:05 PM, Matthew Wilcox wrote:
On Wed, Oct 16, 2024 at 10:23:14AM -0400, Waiman Long wrote:
Another alternative that I have been thinking about is a down_read() variant
with intention to upgrade later. This will ensure that only one active
reader is allowed to upgrade later. With this, upgrade_read() will always
succeed, maybe with some sleeping, as long as the correct down_read() is
used.
How is that different from Kent's SIX locks other than you can take an
rwsem for write immediately (SIX locks have to be taken for Intent and
then Upgraded)?

Yes, it is modeled after Kent's SIX locks. The goal is to eventually eliminate the need of a separate SIX lock.

Cheers,
Longman

--------------FQP6uoHMLRh2d6njkcZL8j35--