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.5 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 A0BA1C64E7A for ; Wed, 21 Oct 2020 08:57:24 +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 3703C223FB for ; Wed, 21 Oct 2020 08:57:24 +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="UPG0GcaS" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3703C223FB 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 443B36EAC8; Wed, 21 Oct 2020 08:57:19 +0000 (UTC) Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by gabe.freedesktop.org (Postfix) with ESMTPS id 406F36EA95 for ; Wed, 21 Oct 2020 08:57:14 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id n15so2163117wrq.2 for ; Wed, 21 Oct 2020 01:57:14 -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=hPBU4fd0tsYMcwp3ePz/Ho5qxuZVtGOvHiVJ9lQm7jY=; b=UPG0GcaSTYJzjNnzuql1oJmuf2ORiGcXQtqBG64S8CJ+9ZNvyS7CG072HrAMR+73AB jB8MJNaRilWsUd4vS9zDKwBxbBP/BpyY0v72COGfai/Je6t+7CKMe5spgkDoEsWn64wK NHlOVjp/UNJrgmhaKbuEgaJ1CW341WCoy+fng= 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=hPBU4fd0tsYMcwp3ePz/Ho5qxuZVtGOvHiVJ9lQm7jY=; b=TGnvVr0Lo8WWbQquujqLhHI9pIvdlBxC8256T2fFO43AfwtYypI/Sh0D252JEPhgKw xf3a7ronwU4zPzDhMVUfCwGOSVnqrtgxjeigEzd7H98k0bPrFDITlXKKMRlc0JXX5JyQ QVgF3bFLr7NxgD9aNowrE0jRfkojakfBWBaHb1rI4hGRwi/jsRV+KEyTKArnNqDnlrCH guAzYwlu7col68KJGlgi2gxhWW6OcnVreFsOwa496OMCi/wrYET7sUwrTlUBykc4EXxi IAYJZADPZ4HSjIM/0dAxtAdIlcUOizbUZN4vwkhh4C0YAqMb7EcCj8KnYmj10DYQ1Pil +8Aw== X-Gm-Message-State: AOAM533Zl9hVxT8tSWQOq6v1yUeo9JRJCV+9gSdpp75sphraNRVb2fj0 +LIO1XFCuCEq3RQ/j+w0jpEYy5JlZ6e6ZcPt X-Google-Smtp-Source: ABdhPJxiUy0VPgMwBx+Gtgt9KHB4VMhTjzmZk29+O/BmQINbhNhalI0SnUGt8xo9L8gxRohjGILhBg== X-Received: by 2002:a5d:5009:: with SMTP id e9mr3539097wrt.104.1603270632595; Wed, 21 Oct 2020 01:57:12 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id q8sm2675939wro.32.2020.10.21.01.57.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 21 Oct 2020 01:57:11 -0700 (PDT) From: Daniel Vetter To: DRI Development , LKML Subject: [PATCH v3 07/16] mm: Close race in generic_access_phys Date: Wed, 21 Oct 2020 10:56:46 +0200 Message-Id: <20201021085655.1192025-8-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201021085655.1192025-1-daniel.vetter@ffwll.ch> References: <20201021085655.1192025-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 , Kees Cook , kvm@vger.kernel.org, Jason Gunthorpe , Dave Airlie , Daniel Vetter , Daniel Vetter , linux-mm@kvack.org, =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , John Hubbard , Daniel Vetter , Dan Williams , Andrew Morton , 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" V2F5IGJhY2sgaXQgd2FzIGEgcmVhc29uYWJsZSBhc3N1bXB0aW9ucyB0aGF0IGlvbWVtIG1hcHBp bmdzIG5ldmVyCmNoYW5nZSB0aGUgcGZuIHJhbmdlIHRoZXkgcG9pbnQgYXQuIEJ1dCB0aGlzIGhh cyBjaGFuZ2VkOgoKLSBncHUgZHJpdmVycyBkeW5hbWljYWxseSBtYW5hZ2UgdGhlaXIgbWVtb3J5 IG5vd2FkYXlzLCBpbnZhbGlkYXRpbmcKICBwdGVzIHdpdGggdW5tYXBfbWFwcGluZ19yYW5nZSB3 aGVuIGJ1ZmZlcnMgZ2V0IG1vdmVkCgotIGNvbnRpZ3VvdXMgZG1hIGFsbG9jYXRpb25zIGhhdmUg bW92ZWQgZnJvbSBkZWRpY2F0ZWQgY2FydmV0b3V0cyB0bwogIGNtYSByZWdpb25zLiBUaGlzIG1l YW5zIGlmIHdlIG1pc3MgdGhlIHVubWFwIHRoZSBwZm4gbWlnaHQgY29udGFpbgogIHBhZ2VjYWNo ZSBvciBhbm9uIG1lbW9yeSAod2VsbCBhbnl0aGluZyBhbGxvY2F0ZWQgd2l0aCBHRlBfTU9WRUFC TEUpCgotIGV2ZW4gL2Rldi9tZW0gbm93IGludmFsaWRhdGVzIG1hcHBpbmdzIHdoZW4gdGhlIGtl cm5lbCByZXF1ZXN0cyB0aGF0CiAgaW9tZW0gcmVnaW9uIHdoZW4gQ09ORklHX0lPX1NUUklDVF9E RVZNRU0gaXMgc2V0LCBzZWUgMzIzNGFjNjY0YTg3CiAgKCIvZGV2L21lbTogUmV2b2tlIG1hcHBp bmdzIHdoZW4gYSBkcml2ZXIgY2xhaW1zIHRoZSByZWdpb24iKQoKQWNjZXNzaW5nIHBmbnMgb2J0 YWluZWQgZnJvbSBwdGVzIHdpdGhvdXQgaG9sZGluZyBhbGwgdGhlIGxvY2tzIGlzCnRoZXJlZm9y ZSBubyBsb25nZXIgYSBnb29kIGlkZWEuIEZpeCB0aGlzLgoKU2luY2UgaW9yZW1hcCBtaWdodCBu ZWVkIHRvIG1hbmlwdWxhdGUgcGFnZXRhYmxlcyB0b28gd2UgbmVlZCB0byBkcm9wCnRoZSBwdCBs b2NrIGFuZCBoYXZlIGEgcmV0cnkgbG9vcCBpZiB3ZSByYWNlZC4KCldoaWxlIGF0IGl0LCBhbHNv IGFkZCBrZXJuZWxkb2MgYW5kIGltcHJvdmUgdGhlIGNvbW1lbnQgZm9yIHRoZQp2bWFfb3BzLT5h Y2Nlc3MgZnVuY3Rpb24uIEl0J3MgZm9yIGFjY2Vzc2luZywgbm90IGZvciBtb3ZpbmcgdGhlCm1l bW9yeSBmcm9tIGlvbWVtIHRvIHN5c3RlbSBtZW1vcnksIGFzIHRoZSBvbGQgY29tbWVudCBzZWVt ZWQgdG8Kc3VnZ2VzdC4KClJlZmVyZW5jZXM6IDI4YjJlZTIwYzdjYiAoImFjY2Vzc19wcm9jZXNz X3ZtIGRldmljZSBtZW1vcnkgaW5mcmFzdHJ1Y3R1cmUiKQpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwg VmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KQ2M6IEphc29uIEd1bnRob3JwZSA8amdn QHppZXBlLmNhPgpDYzogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+CkNj OiBLZWVzIENvb2sgPGtlZXNjb29rQGNocm9taXVtLm9yZz4KQ2M6IEJlbmphbWluIEhlcnJlbnNt aWR0IDxiZW5oQGtlcm5lbC5jcmFzaGluZy5vcmc+CkNjOiBEYXZlIEFpcmxpZSA8YWlybGllZEBs aW51eC5pZT4KQ2M6IEFuZHJldyBNb3J0b24gPGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+CkNj OiBKb2huIEh1YmJhcmQgPGpodWJiYXJkQG52aWRpYS5jb20+CkNjOiBKw6lyw7RtZSBHbGlzc2Ug PGpnbGlzc2VAcmVkaGF0LmNvbT4KQ2M6IEphbiBLYXJhIDxqYWNrQHN1c2UuY3o+CkNjOiBEYW4g V2lsbGlhbXMgPGRhbi5qLndpbGxpYW1zQGludGVsLmNvbT4KQ2M6IGxpbnV4LW1tQGt2YWNrLm9y ZwpDYzogbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCkNjOiBsaW51eC1zYW1z dW5nLXNvY0B2Z2VyLmtlcm5lbC5vcmcKQ2M6IGxpbnV4LW1lZGlhQHZnZXIua2VybmVsLm9yZwpT aWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNvbT4KLS0K djI6IEZpeCBpbnZlcnNpb24gaW4gdGhlIHJldHJ5IGNoZWNrIChKb2huKS4KLS0tCiBpbmNsdWRl L2xpbnV4L21tLmggfCAgMyArKy0KIG1tL21lbW9yeS5jICAgICAgICB8IDQ0ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDQ0IGlu c2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9t bS5oIGIvaW5jbHVkZS9saW51eC9tbS5oCmluZGV4IGFjZDYwZmJmMWE1YS4uMmExNjYzMWMxZmRh IDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L21tLmgKKysrIGIvaW5jbHVkZS9saW51eC9tbS5o CkBAIC01NjYsNyArNTY2LDggQEAgc3RydWN0IHZtX29wZXJhdGlvbnNfc3RydWN0IHsKIAl2bV9m YXVsdF90ICgqcGZuX21rd3JpdGUpKHN0cnVjdCB2bV9mYXVsdCAqdm1mKTsKIAogCS8qIGNhbGxl ZCBieSBhY2Nlc3NfcHJvY2Vzc192bSB3aGVuIGdldF91c2VyX3BhZ2VzKCkgZmFpbHMsIHR5cGlj YWxseQotCSAqIGZvciB1c2UgYnkgc3BlY2lhbCBWTUFzIHRoYXQgY2FuIHN3aXRjaCBiZXR3ZWVu IG1lbW9yeSBhbmQgaGFyZHdhcmUKKwkgKiBmb3IgdXNlIGJ5IHNwZWNpYWwgVk1Bcy4gU2VlIGFs c28gZ2VuZXJpY19hY2Nlc3NfcGh5cygpIGZvciBhIGdlbmVyaWMKKwkgKiBpbXBsZW1lbnRhdGlv biB1c2VmdWwgZm9yIGFueSBpb21lbSBtYXBwaW5nLgogCSAqLwogCWludCAoKmFjY2Vzcykoc3Ry dWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHVuc2lnbmVkIGxvbmcgYWRkciwKIAkJICAgICAgdm9p ZCAqYnVmLCBpbnQgbGVuLCBpbnQgd3JpdGUpOwpkaWZmIC0tZ2l0IGEvbW0vbWVtb3J5LmMgYi9t bS9tZW1vcnkuYwppbmRleCBlZWFlNTkwZTUyNmEuLmZmZjgxNzYwOGViNCAxMDA2NDQKLS0tIGEv bW0vbWVtb3J5LmMKKysrIGIvbW0vbWVtb3J5LmMKQEAgLTQ4NDAsMjggKzQ4NDAsNjggQEAgaW50 IGZvbGxvd19waHlzKHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLAogCXJldHVybiByZXQ7CiB9 CiAKKy8qKgorICogZ2VuZXJpY19hY2Nlc3NfcGh5cyAtIGdlbmVyaWMgaW1wbGVtZW50YXRpb24g Zm9yIGlvbWVtIG1tYXAgYWNjZXNzCisgKiBAdm1hOiB0aGUgdm1hIHRvIGFjY2VzcworICogQGFk ZHI6IHVzZXJzcGFjZSBhZGRyZXMsIG5vdCByZWxhdGl2ZSBvZmZzZXQgd2l0aGluIEB2bWEKKyAq IEBidWY6IGJ1ZmZlciB0byByZWFkL3dyaXRlCisgKiBAbGVuOiBsZW5ndGggb2YgdHJhbnNmZXIK KyAqIEB3cml0ZTogc2V0IHRvIEZPTExfV1JJVEUgd2hlbiB3cml0aW5nLCBvdGhlcndpc2UgcmVh ZGluZworICoKKyAqIFRoaXMgaXMgYSBnZW5lcmljIGltcGxlbWVudGF0aW9uIGZvciAmdm1fb3Bl cmF0aW9uc19zdHJ1Y3QuYWNjZXNzIGZvciBhbgorICogaW9tZW0gbWFwcGluZy4gVGhpcyBjYWxs YmFjayBpcyB1c2VkIGJ5IGFjY2Vzc19wcm9jZXNzX3ZtKCkgd2hlbiB0aGUgQHZtYSBpcworICog bm90IHBhZ2UgYmFzZWQuCisgKi8KIGludCBnZW5lcmljX2FjY2Vzc19waHlzKHN0cnVjdCB2bV9h cmVhX3N0cnVjdCAqdm1hLCB1bnNpZ25lZCBsb25nIGFkZHIsCiAJCQl2b2lkICpidWYsIGludCBs ZW4sIGludCB3cml0ZSkKIHsKIAlyZXNvdXJjZV9zaXplX3QgcGh5c19hZGRyOwogCXVuc2lnbmVk IGxvbmcgcHJvdCA9IDA7CiAJdm9pZCBfX2lvbWVtICptYWRkcjsKKwlwdGVfdCAqcHRlcCwgcHRl OworCXNwaW5sb2NrX3QgKnB0bDsKIAlpbnQgb2Zmc2V0ID0gYWRkciAmIChQQUdFX1NJWkUtMSk7 CisJaW50IHJldCA9IC1FSU5WQUw7CisKKwlpZiAoISh2bWEtPnZtX2ZsYWdzICYgKFZNX0lPIHwg Vk1fUEZOTUFQKSkpCisJCXJldHVybiAtRUlOVkFMOworCityZXRyeToKKwlpZiAoZm9sbG93X3B0 ZSh2bWEtPnZtX21tLCBhZGRyLCAmcHRlcCwgJnB0bCkpCisJCXJldHVybiAtRUlOVkFMOworCXB0 ZSA9ICpwdGVwOworCXB0ZV91bm1hcF91bmxvY2socHRlcCwgcHRsKTsKIAotCWlmIChmb2xsb3df cGh5cyh2bWEsIGFkZHIsIHdyaXRlLCAmcHJvdCwgJnBoeXNfYWRkcikpCisJcHJvdCA9IHBncHJv dF92YWwocHRlX3BncHJvdChwdGUpKTsKKwlwaHlzX2FkZHIgPSAocmVzb3VyY2Vfc2l6ZV90KXB0 ZV9wZm4ocHRlKSA8PCBQQUdFX1NISUZUOworCisJaWYgKCh3cml0ZSAmIEZPTExfV1JJVEUpICYm ICFwdGVfd3JpdGUocHRlKSkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKIAltYWRkciA9IGlvcmVtYXBf cHJvdChwaHlzX2FkZHIsIFBBR0VfQUxJR04obGVuICsgb2Zmc2V0KSwgcHJvdCk7CiAJaWYgKCFt YWRkcikKIAkJcmV0dXJuIC1FTk9NRU07CiAKKwlpZiAoZm9sbG93X3B0ZSh2bWEtPnZtX21tLCBh ZGRyLCAmcHRlcCwgJnB0bCkpCisJCWdvdG8gb3V0X3VubWFwOworCisJaWYgKCFwdGVfc2FtZShw dGUsICpwdGVwKSkgeworCQlwdGVfdW5tYXBfdW5sb2NrKHB0ZXAsIHB0bCk7CisJCWlvdW5tYXAo bWFkZHIpOworCisJCWdvdG8gcmV0cnk7CisJfQorCiAJaWYgKHdyaXRlKQogCQltZW1jcHlfdG9p byhtYWRkciArIG9mZnNldCwgYnVmLCBsZW4pOwogCWVsc2UKIAkJbWVtY3B5X2Zyb21pbyhidWYs IG1hZGRyICsgb2Zmc2V0LCBsZW4pOworCXJldCA9IGxlbjsKKwlwdGVfdW5tYXBfdW5sb2NrKHB0 ZXAsIHB0bCk7CitvdXRfdW5tYXA6CiAJaW91bm1hcChtYWRkcik7CiAKLQlyZXR1cm4gbGVuOwor CXJldHVybiByZXQ7CiB9CiBFWFBPUlRfU1lNQk9MX0dQTChnZW5lcmljX2FjY2Vzc19waHlzKTsK ICNlbmRpZgotLSAKMi4yOC4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK