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 6BEFEC27C79 for ; Thu, 20 Jun 2024 22:47:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CEEE38D00EF; Thu, 20 Jun 2024 18:47:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C9EA88D00DB; Thu, 20 Jun 2024 18:47:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B18558D00EF; Thu, 20 Jun 2024 18:47:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 931AB8D00DB for ; Thu, 20 Jun 2024 18:47:43 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 40A73A0674 for ; Thu, 20 Jun 2024 22:47:43 +0000 (UTC) X-FDA: 82252755606.04.B054EA7 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by imf22.hostedemail.com (Postfix) with ESMTP id 1D971C000B for ; Thu, 20 Jun 2024 22:47:40 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=quicinc.com header.s=qcppdkim1 header.b=jzDuUyQG; spf=pass (imf22.hostedemail.com: domain of quic_eberman@quicinc.com designates 205.220.180.131 as permitted sender) smtp.mailfrom=quic_eberman@quicinc.com; dmarc=pass (policy=none) header.from=quicinc.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718923651; 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=UzU1DFJ4xrF/xX5fZgyh2T96UuT9FhaFK+d/7JtKvNI=; b=7m6wgw7/k0liW8YxPgZpwZBKSK/8Y6w5kD5xXouiXQnILsW91sB85fPx8nfK/bePV86jm/ EYxRsWaMSZQVQJ2ZLSp6i/vcViSqFUsqw8X7J9aJMwsTvPeG/ax9XZNTuNNzm/n1DuhTmZ f2t2Cl2aMbH5NvGIt7o/c8Bw6LtLRQ4= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718923651; a=rsa-sha256; cv=none; b=CTABAbkuu9U//iczpPM8CnesZttsSq42nxxNrIgieFG82piBICmjropDTYRA4DOp0fQ+Yr fhh5z5uLW7R/76EU/dO17M4Q9kRMOeifQ7qM+kGvX2bAH3D2oN42DjIORfx87poMj2DpnA mJt4Hbc2d+QRMqed9qVXjLGHKQsx+ng= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=quicinc.com header.s=qcppdkim1 header.b=jzDuUyQG; spf=pass (imf22.hostedemail.com: domain of quic_eberman@quicinc.com designates 205.220.180.131 as permitted sender) smtp.mailfrom=quic_eberman@quicinc.com; dmarc=pass (policy=none) header.from=quicinc.com Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 45KHL5uN010657; Thu, 20 Jun 2024 22:47:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h= cc:content-type:date:from:in-reply-to:message-id:mime-version :references:subject:to; s=qcppdkim1; bh=UzU1DFJ4xrF/xX5fZgyh2T96 UuT9FhaFK+d/7JtKvNI=; b=jzDuUyQGbn/J5EKIcYa/VYyT6OqYGWRl6bqvdfBm 3wqaJ1kW3cK+p3bp+S8gDKtYC2fjQKzeafmoZOdNL5jgDJAlv5dHmWM3iYx6boFC k3gtvbWxU1U6uPELCKJJklxknTxfqq857nvR8yrOnU0E9WFI57Y3Bp5sAlzTgSxP 0f1K34rmJ/hg4RCtOtL9GNcM1T599TPeJFAUNzYoeb8Xd6afUpkGpFgfo8YHSuak Ygf1FYljOGhG+Cu69kI4+siX7WaQyk9h1FQpyeb6AY3tfs5IsyMmfEppO7aK18nC IBAAIYcIebPJBK0YN1PA30VlduHppw5LISHTDmfqwYJtMw== Received: from nasanppmta02.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3yvrrc8stu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 20 Jun 2024 22:47:26 +0000 (GMT) Received: from nasanex01b.na.qualcomm.com (nasanex01b.na.qualcomm.com [10.46.141.250]) by NASANPPMTA02.qualcomm.com (8.17.1.19/8.17.1.19) with ESMTPS id 45KMlORB009447 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 20 Jun 2024 22:47:24 GMT Received: from hu-eberman-lv.qualcomm.com (10.80.80.8) by nasanex01b.na.qualcomm.com (10.46.141.250) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.9; Thu, 20 Jun 2024 15:47:24 -0700 Date: Thu, 20 Jun 2024 15:47:23 -0700 From: Elliot Berman To: Jason Gunthorpe CC: David Hildenbrand , Fuad Tabba , Christoph Hellwig , John Hubbard , Andrew Morton , Shuah Khan , Matthew Wilcox , , , , , , , Subject: Re: [PATCH RFC 0/5] mm/gup: Introduce exclusive GUP pinning Message-ID: <20240620140516768-0700.eberman@hu-eberman-lv.qualcomm.com> References: <20240618-exclusive-gup-v1-0-30472a19c5d1@quicinc.com> <7fb8cc2c-916a-43e1-9edf-23ed35e42f51@nvidia.com> <14bd145a-039f-4fb9-8598-384d6a051737@redhat.com> <20240619115135.GE2494510@nvidia.com> <20240620135540.GG2494510@nvidia.com> <6d7b180a-9f80-43a4-a4cc-fd79a45d7571@redhat.com> <20240620142956.GI2494510@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20240620142956.GI2494510@nvidia.com> X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01a.na.qualcomm.com (10.52.223.231) To nasanex01b.na.qualcomm.com (10.46.141.250) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: rmA4Wwy_3KWwSQd6c-bmt4HkSHSDNN4N X-Proofpoint-ORIG-GUID: rmA4Wwy_3KWwSQd6c-bmt4HkSHSDNN4N X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-06-20_10,2024-06-20_04,2024-05-17_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 mlxlogscore=771 spamscore=0 lowpriorityscore=0 phishscore=0 bulkscore=0 adultscore=0 mlxscore=0 suspectscore=0 malwarescore=0 clxscore=1011 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2406140001 definitions=main-2406200166 X-Stat-Signature: cuyfjemz3rsa8raezmxxdhqqw4uscdo4 X-Rspamd-Queue-Id: 1D971C000B X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1718923660-338990 X-HE-Meta: U2FsdGVkX18u3+AAruwxTDKKOOBmHf8xSEulNqmgJMUd6i/TocHgwBQBOznVBTBpgtRUtX6YHsdIK9MXZhLGpyCJ/di4vka4JimoYGE/G861vBaynYuHgIZlML4kjA52LaTI28GjzDZKvY2zi7OO8M0biqqbaYB2ZkQ+nVPlF2ICIeklpfMvCbZWSxtAqlXStZ5Qx0F7UVtOk9dxc4wmGnn2rZNcRTibELQgDe6Co840QMIVzneh2Y3ZcpTfUzIC2J6KJTjwBKKmoIpA2CNsiGHF94x1Sm5HI8j2O+zEfpflUdHXjfRYx1/zlhcN4KZxkZkXsik2Q4nERnku5BEawAJ3PVWBiyN/dKLxHjopqlpF6HWf4HagXeEcBBdmaVrAmHebBh4kyqzA9pm5Bhi84NIAUil036K5bPcLsIDJOaRee2iUMjvTcN14dUebs42/gsq2jnyAonUHKPXB2Mg26Q+qVL+a6BQJ6ePR5aILU2ryQXZSi8KRbBqyhWTnGoDvb+/yWX8eHq8f9NR7WkUl6wDF0xVJVCMPXhUdjfKL7g9qSa+iVVBrj+EgkpZQ6YZyqa+liikp8cvJ/Pr1KpkNdhwaOdQUoFIquGZhWI8dySxJ2752RFwnhvm/zb45XFY4iIfDaSc1rGnUu+cOr0LMWkW6wKiyn7L6nuj+mmh95xg4nL5UY3aQPjNHLaHf5/j8/LTKlqHGDwXeRbdOPVcedT7XqTz8h/MZDkgG+G63VMdYfUv1gCFwiogVW3AGA/KRvVs2dyshlHX86URKHKWorNvaD9rVV+gRFRQVP4kTOtUzI4WpLMdTbj6NP97GxP1ZyDU1QEe823h+ZMy+MTvAiUx3buDY818CJKxP3Y7k8H4RggBRuGJ1ooCRfQ4HQoLU+AsEcbBl2j83KSjKd0FNWH2swbiNm/c8hRMHHBvq0nSUkWqKneZHBoE29TwlyBk7sIgRGej5ub9p/JP3ob+ U1oCmqGX W1VBVN1HriWvgYMA7WRL3CRFCj5IJWgpYP2p7YMMkHGgCGqI4lQ7QNYdFd+DB4GEFsiLPCX+gerPDGCbUTQi9pGNcsKL8s0pS5SuAe0F++AyZCfzNxzfDDxL51KT8xtz7wF+HUM4M0xeAIMGNNfaQnY9mQU7+61CCxfd3zSmmShN3MdJQOVLAfgzv79Afp1cfipNHnzfLZ32wKiMiScbBcUD4UFHjewveD9/OlKGWjH5DSx8= 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 20, 2024 at 11:29:56AM -0300, Jason Gunthorpe wrote: > On Thu, Jun 20, 2024 at 04:01:08PM +0200, David Hildenbrand wrote: > > Regarding huge pages: assume the huge page (e.g., 1 GiB hugetlb) is shared, > > now the VM requests to make one subpage private. > > I think the general CC model has the shared/private setup earlier on > the VM lifecycle with large runs of contiguous pages. It would only > become a problem if you intend to to high rate fine granual > shared/private switching. Which is why I am asking what the actual > "why" is here. > I'd let Fuad comment if he's aware of any specific/concrete Anrdoid usecases about converting between shared and private. One usecase I can think about is host providing large multimedia blobs (e.g. video) to the guest. Rather than using swiotlb, the CC guest can share pages back with the host so host can copy the blob in, possibly using H/W accel. I mention this example because we may not need to support shared/private conversions at granularity finer than huge pages. The host and guest can negotiate the minimum size that can be converted and you never run into issue where subpages of a folio are differently shared. I can't think of a usecase where we need such granularity for converting private/shared. Jason, do you have scenario in mind? I couldn't tell if we now had a usecase or are brainstorming a solution to have a solution. Thanks, Elliot