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 X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3E4AC47423 for ; Wed, 7 Oct 2020 16:45:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 9B39E2087D for ; Wed, 7 Oct 2020 16:45:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="ZCR6epNG" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728745AbgJGQpL (ORCPT ); Wed, 7 Oct 2020 12:45:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52670 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728159AbgJGQom (ORCPT ); Wed, 7 Oct 2020 12:44:42 -0400 Received: from mail-wm1-x343.google.com (mail-wm1-x343.google.com [IPv6:2a00:1450:4864:20::343]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 826CBC0613D7 for ; Wed, 7 Oct 2020 09:44:41 -0700 (PDT) Received: by mail-wm1-x343.google.com with SMTP id p15so3041874wmi.4 for ; Wed, 07 Oct 2020 09:44:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=ZCR6epNGq4y9pMu5KQprul9p0e5pbHRNVWh8gfzFX5t78d6KExLodPu0cge87TbHQ7 IFCUDLlXaw9OhMaO8M6ZionCebVY74YdmCbAxhY4ZzIXmKSQNldnw8FEWkuV3IgYHDwi 4BgN7dseD1BVSXWfbIbpwPFDfQHHYpunWAI44= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=owER/lus6dYp3KwXmDfBjSpLAdD7TvtfD8HMzpQcjRC1OnsXQ1P+w7TlJvmYFFuHHW ZlJXGcsqRyoBWRE8FZmDolIrWC7bMGvR+Eg5mUROYZkpsiHrw7Z06+xlWUuuWfvLWzk0 wVywhMzvok2T/xh1XGSnoHwYztSwsTQMu39gXEDzN7NZvbGsQh14SnYO+BwUi/HqXfru 6E503PlVPJEtR8fag27fFwdZR3yjZp+hWrAr0tVi05VcG9RGbn7fVHQMWFEMhXQdZP99 MuA5nlyT9wplTzDx3/FEM918Qybypq5N8N7sDp/go5LdQ05CRzC3fz8CebYfgC4KQppV PBmQ== X-Gm-Message-State: AOAM533iBG024XSHDhSKlXlQvntCb4mQAQPNLdRiVunwUnn8kR6VKpXO 5Ld1FJGSvTyVzjFZnaLUOCddhQ== X-Google-Smtp-Source: ABdhPJzV4N2gLoUB2iCJL2idqYl1jr0gD0FniH6eb95jw+Xbq6j8k/dKxJZkk3IRomSCwD32oRnJ8Q== X-Received: by 2002:a1c:a7cc:: with SMTP id q195mr4218149wme.8.1602089080062; Wed, 07 Oct 2020 09:44:40 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id z191sm3332280wme.40.2020.10.07.09.44.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Oct 2020 09:44:39 -0700 (PDT) From: Daniel Vetter To: DRI Development , LKML Cc: kvm@vger.kernel.org, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-media@vger.kernel.org, linux-s390@vger.kernel.org, Daniel Vetter , Daniel Vetter , Jason Gunthorpe , Pawel Osciak , Marek Szyprowski , Kyungmin Park , Tomasz Figa , Mauro Carvalho Chehab , Andrew Morton , John Hubbard , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Jan Kara , Dan Williams Subject: [PATCH 05/13] mm/frame-vector: Use FOLL_LONGTERM Date: Wed, 7 Oct 2020 18:44:18 +0200 Message-Id: <20201007164426.1812530-6-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> References: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is used by media/videbuf2 for persistent dma mappings, not just for a single dma operation and then freed again, so needs FOLL_LONGTERM. Unfortunately current pup_locked doesn't support FOLL_LONGTERM due to locking issues. Rework the code to pull the pup path out from the mmap_sem critical section as suggested by Jason. Signed-off-by: Daniel Vetter Cc: Jason Gunthorpe Cc: Pawel Osciak Cc: Marek Szyprowski Cc: Kyungmin Park Cc: Tomasz Figa Cc: Mauro Carvalho Chehab Cc: Andrew Morton Cc: John Hubbard Cc: Jérôme Glisse Cc: Jan Kara Cc: Dan Williams Cc: linux-mm@kvack.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org Cc: linux-media@vger.kernel.org --- mm/frame_vector.c | 36 +++++++++++------------------------- 1 file changed, 11 insertions(+), 25 deletions(-) diff --git a/mm/frame_vector.c b/mm/frame_vector.c index 10f82d5643b6..39db520a51dc 100644 --- a/mm/frame_vector.c +++ b/mm/frame_vector.c @@ -38,7 +38,6 @@ int get_vaddr_frames(unsigned long start, unsigned int nr_frames, struct vm_area_struct *vma; int ret = 0; int err; - int locked; if (nr_frames == 0) return 0; @@ -48,35 +47,22 @@ int get_vaddr_frames(unsigned long start, unsigned int nr_frames, start = untagged_addr(start); + ret = pin_user_pages_fast(start, nr_frames, + FOLL_FORCE | FOLL_WRITE | FOLL_LONGTERM, + (struct page **)(vec->ptrs)); + if (ret > 0) { + vec->got_ref = true; + vec->is_pfns = false; + goto out_unlocked; + } + mmap_read_lock(mm); - locked = 1; vma = find_vma_intersection(mm, start, start + 1); if (!vma) { ret = -EFAULT; goto out; } - /* - * While get_vaddr_frames() could be used for transient (kernel - * controlled lifetime) pinning of memory pages all current - * users establish long term (userspace controlled lifetime) - * page pinning. Treat get_vaddr_frames() like - * get_user_pages_longterm() and disallow it for filesystem-dax - * mappings. - */ - if (vma_is_fsdax(vma)) { - ret = -EOPNOTSUPP; - goto out; - } - - if (!(vma->vm_flags & (VM_IO | VM_PFNMAP))) { - vec->got_ref = true; - vec->is_pfns = false; - ret = pin_user_pages_locked(start, nr_frames, - gup_flags, (struct page **)(vec->ptrs), &locked); - goto out; - } - vec->got_ref = false; vec->is_pfns = true; do { @@ -101,8 +87,8 @@ int get_vaddr_frames(unsigned long start, unsigned int nr_frames, vma = find_vma_intersection(mm, start, start + 1); } while (vma && vma->vm_flags & (VM_IO | VM_PFNMAP)); out: - if (locked) - mmap_read_unlock(mm); + mmap_read_unlock(mm); +out_unlocked: if (!ret) ret = -EFAULT; if (ret > 0) -- 2.28.0 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 X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5490DC41604 for ; Wed, 7 Oct 2020 16:47:07 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id CCAD120739 for ; Wed, 7 Oct 2020 16:47:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="xj8qFw+1"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="ZCR6epNG" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CCAD120739 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=N0z5CQuutQg0lARAZJ5d8Mw5kLVXlCoSRkNMIAbitec=; b=xj8qFw+1Ux5pZxzYDb2+7UAcu nrfjd0P8Ln5Wn6o1bj+sJYt2vBtc63XhXsepH+JPHEPCMnElfmB9aIm6nZOvtWspWo5VCr2vTCIJY n0NpruGxEtikMTQzPE2H/M527mHbDkVqB0SCDkLuQzvBh6QLeZqt3ndUQ8/lqTu5cVhzLWqaXugDN WcXOeFJ0zy12AFRwWY9uJ/pEultAFnRszqyRbshHyyyKyDLxEVcei15eMWQBU4wLHVIkuVDRZIVPy eNgdF8StqnZkqWhfvN0HA0zKfUbbFgCLpvbuiGwo283Ot+HC4SgkI94GqzBjF8DPKRZ/gQVeYnaRq Jx1dBAnNQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQCZA-0001TK-Ty; Wed, 07 Oct 2020 16:45:25 +0000 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kQCYT-00018x-9L for linux-arm-kernel@lists.infradead.org; Wed, 07 Oct 2020 16:44:50 +0000 Received: by mail-wm1-x341.google.com with SMTP id d3so3132768wma.4 for ; Wed, 07 Oct 2020 09:44:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=ZCR6epNGq4y9pMu5KQprul9p0e5pbHRNVWh8gfzFX5t78d6KExLodPu0cge87TbHQ7 IFCUDLlXaw9OhMaO8M6ZionCebVY74YdmCbAxhY4ZzIXmKSQNldnw8FEWkuV3IgYHDwi 4BgN7dseD1BVSXWfbIbpwPFDfQHHYpunWAI44= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=B1pJymi8sXrvT3ye5H/mVY3URlt8Bi1mHTUdpQnVhxbiEMh6e/DUHsWy2eBGkk91fY JLyPUWHGK4BMA3HWmarPhKfJ5q+jJsqg0g6Pf+WiaYWAbGek3OasAd9yFBziPx0sRChf flGXGdjUVNOpk5sqj+8m7XFDpF90u1XlhwuSLWSKFz1wFJbH+rP2X5eXdOnz6xQeLga9 /o0ZwtNauOx80rOtuGEboRKNO2Lv2NIe98Qz1Imtd/bfoT3wTt5luFu8pgD97jqT4Ygw W+ORO58Tq432Dy2Qkx78C0YiyqdNs8hHUFBVLyXsM1qanA8InghmecczyPn0M2fqA5HD T15g== X-Gm-Message-State: AOAM532KaAr6bPPaXix4JjZNIROHVXgzKHvGbMX8/LKwHesCBQjwwaiy 8FUrtNcUcMgJLvoayKkHrbhR2A== X-Google-Smtp-Source: ABdhPJzV4N2gLoUB2iCJL2idqYl1jr0gD0FniH6eb95jw+Xbq6j8k/dKxJZkk3IRomSCwD32oRnJ8Q== X-Received: by 2002:a1c:a7cc:: with SMTP id q195mr4218149wme.8.1602089080062; Wed, 07 Oct 2020 09:44:40 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id z191sm3332280wme.40.2020.10.07.09.44.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Oct 2020 09:44:39 -0700 (PDT) From: Daniel Vetter To: DRI Development , LKML Subject: [PATCH 05/13] mm/frame-vector: Use FOLL_LONGTERM Date: Wed, 7 Oct 2020 18:44:18 +0200 Message-Id: <20201007164426.1812530-6-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> References: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201007_124441_449129_9CFF2EBC X-CRM114-Status: GOOD ( 19.05 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Jan Kara , Pawel Osciak , kvm@vger.kernel.org, Jason Gunthorpe , Daniel Vetter , Mauro Carvalho Chehab , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Tomasz Figa , linux-mm@kvack.org, Kyungmin Park , John Hubbard , Daniel Vetter , Andrew Morton , Marek Szyprowski , Dan Williams , linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org VGhpcyBpcyB1c2VkIGJ5IG1lZGlhL3ZpZGVidWYyIGZvciBwZXJzaXN0ZW50IGRtYSBtYXBwaW5n cywgbm90IGp1c3QKZm9yIGEgc2luZ2xlIGRtYSBvcGVyYXRpb24gYW5kIHRoZW4gZnJlZWQgYWdh aW4sIHNvIG5lZWRzCkZPTExfTE9OR1RFUk0uCgpVbmZvcnR1bmF0ZWx5IGN1cnJlbnQgcHVwX2xv Y2tlZCBkb2Vzbid0IHN1cHBvcnQgRk9MTF9MT05HVEVSTSBkdWUgdG8KbG9ja2luZyBpc3N1ZXMu IFJld29yayB0aGUgY29kZSB0byBwdWxsIHRoZSBwdXAgcGF0aCBvdXQgZnJvbSB0aGUKbW1hcF9z ZW0gY3JpdGljYWwgc2VjdGlvbiBhcyBzdWdnZXN0ZWQgYnkgSmFzb24uCgpTaWduZWQtb2ZmLWJ5 OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KQ2M6IEphc29uIEd1bnRo b3JwZSA8amdnQHppZXBlLmNhPgpDYzogUGF3ZWwgT3NjaWFrIDxwYXdlbEBvc2NpYWsuY29tPgpD YzogTWFyZWsgU3p5cHJvd3NraSA8bS5zenlwcm93c2tpQHNhbXN1bmcuY29tPgpDYzogS3l1bmdt aW4gUGFyayA8a3l1bmdtaW4ucGFya0BzYW1zdW5nLmNvbT4KQ2M6IFRvbWFzeiBGaWdhIDx0Zmln YUBjaHJvbWl1bS5vcmc+CkNjOiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVoYWJAa2VybmVs Lm9yZz4KQ2M6IEFuZHJldyBNb3J0b24gPGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+CkNjOiBK b2huIEh1YmJhcmQgPGpodWJiYXJkQG52aWRpYS5jb20+CkNjOiBKw6lyw7RtZSBHbGlzc2UgPGpn bGlzc2VAcmVkaGF0LmNvbT4KQ2M6IEphbiBLYXJhIDxqYWNrQHN1c2UuY3o+CkNjOiBEYW4gV2ls bGlhbXMgPGRhbi5qLndpbGxpYW1zQGludGVsLmNvbT4KQ2M6IGxpbnV4LW1tQGt2YWNrLm9yZwpD YzogbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCkNjOiBsaW51eC1zYW1zdW5n LXNvY0B2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwotLS0K IG1tL2ZyYW1lX3ZlY3Rvci5jIHwgMzYgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvbW0vZnJhbWVfdmVjdG9yLmMgYi9tbS9mcmFtZV92ZWN0b3IuYwppbmRleCAx MGY4MmQ1NjQzYjYuLjM5ZGI1MjBhNTFkYyAxMDA2NDQKLS0tIGEvbW0vZnJhbWVfdmVjdG9yLmMK KysrIGIvbW0vZnJhbWVfdmVjdG9yLmMKQEAgLTM4LDcgKzM4LDYgQEAgaW50IGdldF92YWRkcl9m cmFtZXModW5zaWduZWQgbG9uZyBzdGFydCwgdW5zaWduZWQgaW50IG5yX2ZyYW1lcywKIAlzdHJ1 Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYTsKIAlpbnQgcmV0ID0gMDsKIAlpbnQgZXJyOwotCWludCBs b2NrZWQ7CiAKIAlpZiAobnJfZnJhbWVzID09IDApCiAJCXJldHVybiAwOwpAQCAtNDgsMzUgKzQ3 LDIyIEBAIGludCBnZXRfdmFkZHJfZnJhbWVzKHVuc2lnbmVkIGxvbmcgc3RhcnQsIHVuc2lnbmVk IGludCBucl9mcmFtZXMsCiAKIAlzdGFydCA9IHVudGFnZ2VkX2FkZHIoc3RhcnQpOwogCisJcmV0 ID0gcGluX3VzZXJfcGFnZXNfZmFzdChzdGFydCwgbnJfZnJhbWVzLAorCQkJCSAgRk9MTF9GT1JD RSB8IEZPTExfV1JJVEUgfCBGT0xMX0xPTkdURVJNLAorCQkJCSAgKHN0cnVjdCBwYWdlICoqKSh2 ZWMtPnB0cnMpKTsKKwlpZiAocmV0ID4gMCkgeworCQl2ZWMtPmdvdF9yZWYgPSB0cnVlOworCQl2 ZWMtPmlzX3BmbnMgPSBmYWxzZTsKKwkJZ290byBvdXRfdW5sb2NrZWQ7CisJfQorCiAJbW1hcF9y ZWFkX2xvY2sobW0pOwotCWxvY2tlZCA9IDE7CiAJdm1hID0gZmluZF92bWFfaW50ZXJzZWN0aW9u KG1tLCBzdGFydCwgc3RhcnQgKyAxKTsKIAlpZiAoIXZtYSkgewogCQlyZXQgPSAtRUZBVUxUOwog CQlnb3RvIG91dDsKIAl9CiAKLQkvKgotCSAqIFdoaWxlIGdldF92YWRkcl9mcmFtZXMoKSBjb3Vs ZCBiZSB1c2VkIGZvciB0cmFuc2llbnQgKGtlcm5lbAotCSAqIGNvbnRyb2xsZWQgbGlmZXRpbWUp IHBpbm5pbmcgb2YgbWVtb3J5IHBhZ2VzIGFsbCBjdXJyZW50Ci0JICogdXNlcnMgZXN0YWJsaXNo IGxvbmcgdGVybSAodXNlcnNwYWNlIGNvbnRyb2xsZWQgbGlmZXRpbWUpCi0JICogcGFnZSBwaW5u aW5nLiBUcmVhdCBnZXRfdmFkZHJfZnJhbWVzKCkgbGlrZQotCSAqIGdldF91c2VyX3BhZ2VzX2xv bmd0ZXJtKCkgYW5kIGRpc2FsbG93IGl0IGZvciBmaWxlc3lzdGVtLWRheAotCSAqIG1hcHBpbmdz LgotCSAqLwotCWlmICh2bWFfaXNfZnNkYXgodm1hKSkgewotCQlyZXQgPSAtRU9QTk9UU1VQUDsK LQkJZ290byBvdXQ7Ci0JfQotCi0JaWYgKCEodm1hLT52bV9mbGFncyAmIChWTV9JTyB8IFZNX1BG Tk1BUCkpKSB7Ci0JCXZlYy0+Z290X3JlZiA9IHRydWU7Ci0JCXZlYy0+aXNfcGZucyA9IGZhbHNl OwotCQlyZXQgPSBwaW5fdXNlcl9wYWdlc19sb2NrZWQoc3RhcnQsIG5yX2ZyYW1lcywKLQkJCWd1 cF9mbGFncywgKHN0cnVjdCBwYWdlICoqKSh2ZWMtPnB0cnMpLCAmbG9ja2VkKTsKLQkJZ290byBv dXQ7Ci0JfQotCiAJdmVjLT5nb3RfcmVmID0gZmFsc2U7CiAJdmVjLT5pc19wZm5zID0gdHJ1ZTsK IAlkbyB7CkBAIC0xMDEsOCArODcsOCBAQCBpbnQgZ2V0X3ZhZGRyX2ZyYW1lcyh1bnNpZ25lZCBs b25nIHN0YXJ0LCB1bnNpZ25lZCBpbnQgbnJfZnJhbWVzLAogCQl2bWEgPSBmaW5kX3ZtYV9pbnRl cnNlY3Rpb24obW0sIHN0YXJ0LCBzdGFydCArIDEpOwogCX0gd2hpbGUgKHZtYSAmJiB2bWEtPnZt X2ZsYWdzICYgKFZNX0lPIHwgVk1fUEZOTUFQKSk7CiBvdXQ6Ci0JaWYgKGxvY2tlZCkKLQkJbW1h cF9yZWFkX3VubG9jayhtbSk7CisJbW1hcF9yZWFkX3VubG9jayhtbSk7CitvdXRfdW5sb2NrZWQ6 CiAJaWYgKCFyZXQpCiAJCXJldCA9IC1FRkFVTFQ7CiAJaWYgKHJldCA+IDApCi0tIAoyLjI4LjAK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1h cm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5v cmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0t a2VybmVsCg== 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 X-Spam-Level: X-Spam-Status: No, score=-12.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4AF44C4727F for ; Wed, 7 Oct 2020 16:44:47 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D61CC206BE for ; Wed, 7 Oct 2020 16:44:46 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="ZCR6epNG" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D61CC206BE Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id BD9466E8AD; Wed, 7 Oct 2020 16:44:43 +0000 (UTC) Received: from mail-wm1-x342.google.com (mail-wm1-x342.google.com [IPv6:2a00:1450:4864:20::342]) by gabe.freedesktop.org (Postfix) with ESMTPS id B12866E956 for ; Wed, 7 Oct 2020 16:44:41 +0000 (UTC) Received: by mail-wm1-x342.google.com with SMTP id v12so3137770wmh.3 for ; Wed, 07 Oct 2020 09:44:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=ZCR6epNGq4y9pMu5KQprul9p0e5pbHRNVWh8gfzFX5t78d6KExLodPu0cge87TbHQ7 IFCUDLlXaw9OhMaO8M6ZionCebVY74YdmCbAxhY4ZzIXmKSQNldnw8FEWkuV3IgYHDwi 4BgN7dseD1BVSXWfbIbpwPFDfQHHYpunWAI44= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=tumapzZxvtArZNF04352kaumd5zWdbY4K/o9+R8ZPiU=; b=PEybcDBmmf7i1BI3yf/4iyReLanBtHsDhutbKMU+hX05ilEIyVBKc5fftMZtHqReVs jntIegaXfJfy8fxu+CHOV7Nt8+bOBkrRco+z9qYzX8+qsDkpOclBKrfanVwL0z/7tZyP G9d90yD1JQLA+2V3s/8XduCgmmnR4jCUoV+PZ5jeHB4yMWXhr97v0dMzBqHWVQ10VC0C qmCvWGFLMfHHU3SltRyJo0D2eUBZCy3tbhCGzzd/Y1wV2ZBOtBuVmsvtK+ki7PL5e8Az G0dLh2FCmvyMk/WstmgCbNkyOol0nf7ChlPns3WhhTh/TZaU3EAmd+IcwF913NTp+qqj jh1A== X-Gm-Message-State: AOAM530hfdfZoDzsbdj1zK+s9FpsJl4W5QUgWfQ+0Dv/QBvQj51lpoxH dEsZQeCTzUguIVaWu/bvcXbOdSUscXjFNRVs X-Google-Smtp-Source: ABdhPJzV4N2gLoUB2iCJL2idqYl1jr0gD0FniH6eb95jw+Xbq6j8k/dKxJZkk3IRomSCwD32oRnJ8Q== X-Received: by 2002:a1c:a7cc:: with SMTP id q195mr4218149wme.8.1602089080062; Wed, 07 Oct 2020 09:44:40 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id z191sm3332280wme.40.2020.10.07.09.44.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Oct 2020 09:44:39 -0700 (PDT) From: Daniel Vetter To: DRI Development , LKML Subject: [PATCH 05/13] mm/frame-vector: Use FOLL_LONGTERM Date: Wed, 7 Oct 2020 18:44:18 +0200 Message-Id: <20201007164426.1812530-6-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> References: <20201007164426.1812530-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-s390@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Jan Kara , Pawel Osciak , kvm@vger.kernel.org, Jason Gunthorpe , Daniel Vetter , Mauro Carvalho Chehab , =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Tomasz Figa , linux-mm@kvack.org, Kyungmin Park , John Hubbard , Daniel Vetter , Andrew Morton , Marek Szyprowski , Dan Williams , linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" VGhpcyBpcyB1c2VkIGJ5IG1lZGlhL3ZpZGVidWYyIGZvciBwZXJzaXN0ZW50IGRtYSBtYXBwaW5n cywgbm90IGp1c3QKZm9yIGEgc2luZ2xlIGRtYSBvcGVyYXRpb24gYW5kIHRoZW4gZnJlZWQgYWdh aW4sIHNvIG5lZWRzCkZPTExfTE9OR1RFUk0uCgpVbmZvcnR1bmF0ZWx5IGN1cnJlbnQgcHVwX2xv Y2tlZCBkb2Vzbid0IHN1cHBvcnQgRk9MTF9MT05HVEVSTSBkdWUgdG8KbG9ja2luZyBpc3N1ZXMu IFJld29yayB0aGUgY29kZSB0byBwdWxsIHRoZSBwdXAgcGF0aCBvdXQgZnJvbSB0aGUKbW1hcF9z ZW0gY3JpdGljYWwgc2VjdGlvbiBhcyBzdWdnZXN0ZWQgYnkgSmFzb24uCgpTaWduZWQtb2ZmLWJ5 OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KQ2M6IEphc29uIEd1bnRo b3JwZSA8amdnQHppZXBlLmNhPgpDYzogUGF3ZWwgT3NjaWFrIDxwYXdlbEBvc2NpYWsuY29tPgpD YzogTWFyZWsgU3p5cHJvd3NraSA8bS5zenlwcm93c2tpQHNhbXN1bmcuY29tPgpDYzogS3l1bmdt aW4gUGFyayA8a3l1bmdtaW4ucGFya0BzYW1zdW5nLmNvbT4KQ2M6IFRvbWFzeiBGaWdhIDx0Zmln YUBjaHJvbWl1bS5vcmc+CkNjOiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVoYWJAa2VybmVs Lm9yZz4KQ2M6IEFuZHJldyBNb3J0b24gPGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+CkNjOiBK b2huIEh1YmJhcmQgPGpodWJiYXJkQG52aWRpYS5jb20+CkNjOiBKw6lyw7RtZSBHbGlzc2UgPGpn bGlzc2VAcmVkaGF0LmNvbT4KQ2M6IEphbiBLYXJhIDxqYWNrQHN1c2UuY3o+CkNjOiBEYW4gV2ls bGlhbXMgPGRhbi5qLndpbGxpYW1zQGludGVsLmNvbT4KQ2M6IGxpbnV4LW1tQGt2YWNrLm9yZwpD YzogbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCkNjOiBsaW51eC1zYW1zdW5n LXNvY0B2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwotLS0K IG1tL2ZyYW1lX3ZlY3Rvci5jIHwgMzYgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvbW0vZnJhbWVfdmVjdG9yLmMgYi9tbS9mcmFtZV92ZWN0b3IuYwppbmRleCAx MGY4MmQ1NjQzYjYuLjM5ZGI1MjBhNTFkYyAxMDA2NDQKLS0tIGEvbW0vZnJhbWVfdmVjdG9yLmMK KysrIGIvbW0vZnJhbWVfdmVjdG9yLmMKQEAgLTM4LDcgKzM4LDYgQEAgaW50IGdldF92YWRkcl9m cmFtZXModW5zaWduZWQgbG9uZyBzdGFydCwgdW5zaWduZWQgaW50IG5yX2ZyYW1lcywKIAlzdHJ1 Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYTsKIAlpbnQgcmV0ID0gMDsKIAlpbnQgZXJyOwotCWludCBs b2NrZWQ7CiAKIAlpZiAobnJfZnJhbWVzID09IDApCiAJCXJldHVybiAwOwpAQCAtNDgsMzUgKzQ3 LDIyIEBAIGludCBnZXRfdmFkZHJfZnJhbWVzKHVuc2lnbmVkIGxvbmcgc3RhcnQsIHVuc2lnbmVk IGludCBucl9mcmFtZXMsCiAKIAlzdGFydCA9IHVudGFnZ2VkX2FkZHIoc3RhcnQpOwogCisJcmV0 ID0gcGluX3VzZXJfcGFnZXNfZmFzdChzdGFydCwgbnJfZnJhbWVzLAorCQkJCSAgRk9MTF9GT1JD RSB8IEZPTExfV1JJVEUgfCBGT0xMX0xPTkdURVJNLAorCQkJCSAgKHN0cnVjdCBwYWdlICoqKSh2 ZWMtPnB0cnMpKTsKKwlpZiAocmV0ID4gMCkgeworCQl2ZWMtPmdvdF9yZWYgPSB0cnVlOworCQl2 ZWMtPmlzX3BmbnMgPSBmYWxzZTsKKwkJZ290byBvdXRfdW5sb2NrZWQ7CisJfQorCiAJbW1hcF9y ZWFkX2xvY2sobW0pOwotCWxvY2tlZCA9IDE7CiAJdm1hID0gZmluZF92bWFfaW50ZXJzZWN0aW9u KG1tLCBzdGFydCwgc3RhcnQgKyAxKTsKIAlpZiAoIXZtYSkgewogCQlyZXQgPSAtRUZBVUxUOwog CQlnb3RvIG91dDsKIAl9CiAKLQkvKgotCSAqIFdoaWxlIGdldF92YWRkcl9mcmFtZXMoKSBjb3Vs ZCBiZSB1c2VkIGZvciB0cmFuc2llbnQgKGtlcm5lbAotCSAqIGNvbnRyb2xsZWQgbGlmZXRpbWUp IHBpbm5pbmcgb2YgbWVtb3J5IHBhZ2VzIGFsbCBjdXJyZW50Ci0JICogdXNlcnMgZXN0YWJsaXNo IGxvbmcgdGVybSAodXNlcnNwYWNlIGNvbnRyb2xsZWQgbGlmZXRpbWUpCi0JICogcGFnZSBwaW5u aW5nLiBUcmVhdCBnZXRfdmFkZHJfZnJhbWVzKCkgbGlrZQotCSAqIGdldF91c2VyX3BhZ2VzX2xv bmd0ZXJtKCkgYW5kIGRpc2FsbG93IGl0IGZvciBmaWxlc3lzdGVtLWRheAotCSAqIG1hcHBpbmdz LgotCSAqLwotCWlmICh2bWFfaXNfZnNkYXgodm1hKSkgewotCQlyZXQgPSAtRU9QTk9UU1VQUDsK LQkJZ290byBvdXQ7Ci0JfQotCi0JaWYgKCEodm1hLT52bV9mbGFncyAmIChWTV9JTyB8IFZNX1BG Tk1BUCkpKSB7Ci0JCXZlYy0+Z290X3JlZiA9IHRydWU7Ci0JCXZlYy0+aXNfcGZucyA9IGZhbHNl OwotCQlyZXQgPSBwaW5fdXNlcl9wYWdlc19sb2NrZWQoc3RhcnQsIG5yX2ZyYW1lcywKLQkJCWd1 cF9mbGFncywgKHN0cnVjdCBwYWdlICoqKSh2ZWMtPnB0cnMpLCAmbG9ja2VkKTsKLQkJZ290byBv dXQ7Ci0JfQotCiAJdmVjLT5nb3RfcmVmID0gZmFsc2U7CiAJdmVjLT5pc19wZm5zID0gdHJ1ZTsK IAlkbyB7CkBAIC0xMDEsOCArODcsOCBAQCBpbnQgZ2V0X3ZhZGRyX2ZyYW1lcyh1bnNpZ25lZCBs b25nIHN0YXJ0LCB1bnNpZ25lZCBpbnQgbnJfZnJhbWVzLAogCQl2bWEgPSBmaW5kX3ZtYV9pbnRl cnNlY3Rpb24obW0sIHN0YXJ0LCBzdGFydCArIDEpOwogCX0gd2hpbGUgKHZtYSAmJiB2bWEtPnZt X2ZsYWdzICYgKFZNX0lPIHwgVk1fUEZOTUFQKSk7CiBvdXQ6Ci0JaWYgKGxvY2tlZCkKLQkJbW1h cF9yZWFkX3VubG9jayhtbSk7CisJbW1hcF9yZWFkX3VubG9jayhtbSk7CitvdXRfdW5sb2NrZWQ6 CiAJaWYgKCFyZXQpCiAJCXJldCA9IC1FRkFVTFQ7CiAJaWYgKHJldCA+IDApCi0tIAoyLjI4LjAK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=