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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 42964C77B75 for ; Fri, 19 May 2023 10:02:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:Date:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=GXHmMZlFgUKmIY6DTZxninPIb8Eq7Ys4nKdxKcHWuwI=; b=PzkgEB6tP0cBGe Z+qk5VO86g6V9vAK7+1iM1qbsQqNSq4qXPsVUHfKBap/NzPs/594dBLhrjvd69qTox5QB6m7LPXQc UYOJWgKvcPdwUymt6kx2b4eQ6/wKoFx8DEFw8WF3XANsi4zzd0Mu5gLGS3AQmLVqbbD74hzFrA2Fz oKLFAZSBnpUncY22Kgo6guND7+aTjVK9UCw5vDHJrt+zJPeIeebFhwR0BqQrv4EMK6VnIHO5MrTmb vwvuntqcyinAPuAGwY1GF+U8GqyVAUhoE6Cj2ORHxpt4tF/SAaCqXrMzaxSQn29uDcFK+CmjKInlt zFnmoPT+jGgL431wgkhA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pzww4-00FpL1-2T; Fri, 19 May 2023 10:02:08 +0000 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pzww2-00FpI6-01 for linux-arm-kernel@lists.infradead.org; Fri, 19 May 2023 10:02:07 +0000 Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2af20198f20so11772421fa.0 for ; Fri, 19 May 2023 03:02:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684490521; x=1687082521; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from:from:to :cc:subject:date:message-id:reply-to; bh=H1W3Mxvm971CbgIs6535/Aup+UtfhvG+TAFS3/65WyA=; b=X3EVcJrSTD2GB+mRsOX4o622yogTawhfhfmFNgE7Ax1o6lJPn7dR/2yI7NfxEbDxwr P6ynBjY+NRMzsKcCOHTTM/6j54vF6wPfxU6iQCPcAMaR8i+lGrKEnWrMxeVVoK9ypqZW X5/PPcj6hkjfKk1weA2i6Q6aIiv7+cCcJ00gqXpSC2nAFx3aAhJ00Nc8GpADtriwjaY5 Gj86aE628ccW6VLWYTAGgrgqPPLh9FO+gufmjMEZIvOTVI65JlXtqWsOWq5SX566AcMi y993rKEblzaG3lFB/HbkWSDY6uZbAPpRxstOo8nb9RRjq8gKCMOBFIJAInnH77e+Ge53 F2TQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684490521; x=1687082521; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=H1W3Mxvm971CbgIs6535/Aup+UtfhvG+TAFS3/65WyA=; b=IwmMbT31iXabqyafPE40blicA9QD6ieQXJbcutXYa595nfmoUwWcU8MC/qNPi/12sa RrEuBjK0sVlwmjMQ0W7/KbnKa7FE6ruLigJReW2/L+Xz7ARUmfcvIO9rKHrINqVozS5p fJ6BYvkhvNTDddq72Mbh8TsHnudhs9xD0BE24mzyAM/3+U1/0VFcBgnvHLZWHHbgANva vl2raY7LnV5OZeT448iM7GjV4yBYso7K8fCLdZ1DxqmVfA9nlRaNiP+J73ak3fpdp326 bDRSZMaEHzohzj3tzaCrLE160Xy83awhA2Dvkw+q5nEe4azFGYkTFP/j7aHBCooueArj 1s8w== X-Gm-Message-State: AC+VfDxuKsSmimlIiqSb82xHcPyBWatTIcYeSD3TQ3jDGkhhBPQH+8Bn I6M7kdqOqnIIRbeXgO79YFU= X-Google-Smtp-Source: ACHHUZ4OeGX9W7fs4IoWxUoIcWCCf32gCnZv/94bAAK/Z2OYS7sDCpcxiDNaKmFiTEjRZPuTDkWxpQ== X-Received: by 2002:a2e:b0ec:0:b0:2af:1db6:8f13 with SMTP id h12-20020a2eb0ec000000b002af1db68f13mr571754ljl.34.1684490521185; Fri, 19 May 2023 03:02:01 -0700 (PDT) Received: from pc636 (host-90-235-19-70.mobileonline.telia.com. [90.235.19.70]) by smtp.gmail.com with ESMTPSA id t16-20020a2e9d10000000b002aa3ad9014asm745669lji.54.2023.05.19.03.01.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 May 2023 03:01:59 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Fri, 19 May 2023 12:01:56 +0200 To: Thomas Gleixner Cc: Uladzislau Rezki , "Russell King (Oracle)" , Andrew Morton , linux-mm@kvack.org, Christoph Hellwig , Lorenzo Stoakes , Peter Zijlstra , Baoquan He , John Ogness , linux-arm-kernel@lists.infradead.org, Mark Rutland , Marc Zyngier , x86@kernel.org Subject: Re: Excessive TLB flush ranges Message-ID: References: <87y1lo7a0z.ffs@tglx> <87o7mk733x.ffs@tglx> <87leho6wd9.ffs@tglx> <87o7mj5fuz.ffs@tglx> <87edne6hra.ffs@tglx> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <87edne6hra.ffs@tglx> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230519_030206_052850_255444CC X-CRM114-Status: GOOD ( 34.93 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 T24gV2VkLCBNYXkgMTcsIDIwMjMgYXQgMDY6MzI6MjVQTSArMDIwMCwgVGhvbWFzIEdsZWl4bmVy IHdyb3RlOgo+IE9uIFdlZCwgTWF5IDE3IDIwMjMgYXQgMTQ6MTUsIFVsYWR6aXNsYXUgUmV6a2kg d3JvdGU6Cj4gPiBPbiBXZWQsIE1heSAxNywgMjAyMyBhdCAwMTo1ODo0NFBNICswMjAwLCBUaG9t YXMgR2xlaXhuZXIgd3JvdGU6Cj4gPj4gS2VlcGluZyBleGVjdXRhYmxlIG1hcHBpbmdzIGFyb3Vu ZCB1bnRpbCBzb21lIG90aGVyIGZsdXNoIGhhcHBlbnMgaXMKPiA+PiBvYnZpb3VzbHkgbmVpdGhl ciBhIGJyaWxsaWFudCBpZGVhIG5vciBjb3JyZWN0Lgo+ID4+IAo+ID4gSXQgYXZvaWRzIG9mIGJs b2NraW5nIGEgY2FsbGVyIG9uIHZmcmVlKCkgYnkgZGVmZXJyaW5nIHRoZSBmcmVlaW5nIGludG8K PiA+IGEgd29ya3F1ZXVlIGNvbnRleHQuIEF0IGxlYXN0IGkgZ290IHRoZSBmaWxsaW5nIHRoYXQg InlvdXIgdGFzayIgdGhhdAo+ID4gZG9lcyB2ZnJlZSgpIGJsb2NrcyBmb3IgdW5hY2NlcHRhYmxl IHRpbWUuIEl0IGNhbiBoYXBwZW4gb25seSBpZiBpdAo+ID4gcGVyZm9ybXMgVk1fRkxVU0hfUkVT RVRfUEVSTVMgZnJlZWluZyhvdGhlciBmcmVlaW5nIGFyZSBkZWZlcnJlZCk6Cj4gPgo+ID4gPHNu aXA+Cj4gPiBpZiAodW5saWtlbHkodm0tPmZsYWdzICYgVk1fRkxVU0hfUkVTRVRfUEVSTVMpKQo+ ID4gCXZtX3Jlc2V0X3Blcm1zKHZtKTsKPiA+IDxzbmlwPgo+ID4KPiA+IGluIHRoaXMgY2FzZSB0 aGUgdmZyZWUoKSBjYW4gdGFrZSBzb21lIHRpbWUgaW5zdGVhZCBvZiByZXR1cm5pbmcgYmFjayB0 bwo+ID4gYSB1c2VyIGFzYXAuIElzIHRoYXQgeW91ciBpc3N1ZT8gSSBhbSBub3QgdGFsa2luZyB0 aGF0IFRMQiBmbHVzaGluZyB0YWtlcwo+ID4gdGltZSwgaW4gdGhpcyBjYXNlIGhvbGRpbmcgb24g bXV0ZXggYWxzbyBjYW4gdGFrZSB0aW1lLgo+IAo+IFRoaXMgaXMgYWJzb2x1dGVseSBub3QgdGhl IHByb2JsZW0gYXQgYWxsLiBUaGlzIGNvbWVzIHZpYSBkb19leGl0KCkgYW5kCj4gSSBleHBsYWlu ZWQgYWxyZWFkeSBoZXJlOgo+IAo+ICBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvODcxcWpn OHdxZS5mZnNAdGdseAo+IAo+IHdoYXQgbWFkZSB1cyBsb29rIGludG8gdGhpcyBhbmQgSSdtIGhh cHB5IHRvIHF1b3RlIG15c2VsZiBmb3IgeW91cgo+IGNvbnZlbmlhbmNlOgo+IAo+ICAiVGhlIHNj ZW5hcmlvIHdoaWNoIG1hZGUgdXMgbG9vayBpcyB0aGF0IENQVTAgaXMgaG91c2VrZWVwaW5nIGFu ZCBDUFUxIGlzCj4gICBpc29sYXRlZCBmb3IgUlQuCj4gCj4gICBOb3cgQ1BVMCBkb2VzIHRoYXQg Zmx1c2ggbm9uc2Vuc2UgYW5kIHRoZSBSVCB3b3JrbG9hZCBvbiBDUFUxIHN1ZmZlcnMKPiAgIGJl Y2F1c2UgdGhlIGNvbXB1dGUgdGltZSBpcyBzdWRkZW5seSBmYWN0b3IgMi0zIGxhcmdlciwgSU9X LCBpdCBtaXNzZXMKPiAgIHRoZSBkZWFkbGluZS4gVGhhdCBtZWFucyBhIG9uZSBvZmYgZXZlbnQg aXMgYWxyZWFkeSBhIHByb2JsZW0uIgo+IAo+IFNvIGl0IGRvZXMgbm90IG1hdHRlciBhdCBhbGwg aG93IGxvbmcgdGhlIG9wZXJhdGlvbnMgb24gQ1BVMCB0YWtlLiBUaGUKPiBvbmx5IHRoaW5nIHdo aWNoIG1hdHRlcnMgaXMgaG93IG11Y2ggdGhlc2Ugb3BlcmF0aW9ucyBhZmZlY3QgdGhlCj4gd29y a2xvYWQgb24gQ1BVMS4KPiAKVGhhbmtzLiBJIGZvY3VzZWQgb24geW91ciBmaXJzdCBlbWFpbCwg d2hlcmUgeW91IGhhdmUgbm90IG1lbnRpb25lZCB5b3VyCnNlY29uZCBwYXJ0LCBleHBsYWluaW5n IHRoYXQgeW91IGhhdmUgYSBob3VzZWtlZXBpbmcgQ1BVIGFuZCBhbm90aGVyIGZvcgpSVCBhY3Rp dml0eS4KCj4KPiBUaGF0IG1hZGUgbWUgbG9vayBpbnRvIHRoaXMgY29hbGVzY2luZyBjb2RlLiBJ IHVuZGVyc3RhbmQgd2h5IHlvdSB3YW50Cj4gdG8gYmF0Y2ggYW5kIGNvYWxlc2NlIGFuZCByYXRo ZXIgZG8gYSByYXJlIGZ1bGwgdGxiIGZsdXNoIHRoYW4gc2VuZGluZwo+IGdhemlsbGlvbnMgb2Yg SVBJcy4KPiAKWW91ciBpc3N1ZXMgaGFzIG5vIGNvbm5lY3Rpb25zIHdpdGggbWVyZ2luZy4gQnV0 IHRoZSBwbGFjZSB5b3UgbG9va2VkCndhcyBjb3JyZWN0IDopCgo+Cj4gQnV0IHRoYXQgY3JlYXRl cyBhIHBvbGljeSBhdCB0aGUgY29yZSBjb2RlIHdoaWNoIGRvZXMgbm90IGxlYXZlIGFueQo+IGRl Y2lzaW9uIHRvIG1ha2UgZm9yIHRoZSBhcmNoaXRlY3R1cmUsIHdoZXRoZXIgaXQncyB3b3J0aCB0 byBkbyBmdWxsIG9yCj4gc2luZ2xlIGZsdXNoZXMuIFRoYXQncyB3aGF0IEkgd29ycmllZCBhYm91 dCBhbmQgbm90IGFib3V0IHRoZSBxdWVzdGlvbgo+IHdoZXRoZXIgdGhhdCBmcmVlIHRha2VzIDFt cyBvciAxMHVzLiBUaGF0J3MgYSBjb21wbGV0ZWx5IGRpZmZlcmVudAo+IGRlYmF0ZS4KPiAKPiBX aGV0aGVyIHRoYXQgbGlzdCBiYXNlZCBmbHVzaCB0dXJucyBvdXQgdG8gYmUgdGhlIGJldHRlciBz b2x1dGlvbiBvcgo+IG5vdCwgaGFzIHN0aWxsIHRvIGJlIGRlY2lkZWQgYnkgZGVlcGVyIGFuYWx5 c2lzLgo+CkkgaGFkIGEgbG9vayBob3cgcGVyLVZBIFRMQiBmbHVzaGluZyBiZWhhdmVzIG9uIHg4 Nl82NCB1bmRlciBoZWF2eSBsb2FkOiAKCjxzbmlwPgpjb21taXQgNzc2YTMzZWQ2M2YwZjE1YjVi M2Y2MjU0YmNiOTI3YTQ1ZTM3Mjk4ZCAoSEVBRCAtPiBtYXN0ZXIpCkF1dGhvcjogVWxhZHppc2xh dSBSZXpraSAoU29ueSkgPHVyZXpraUBnbWFpbC5jb20+CkRhdGU6ICAgRnJpIE1heSAxOSAxMToz NTozNSAyMDIzICswMjAwCgogICAgbW06IHZtYWxsb2M6IEZsdXNoIFRMQiBwZXItdmEKCiAgICBT aWduZWQtb2ZmLWJ5OiBVbGFkemlzbGF1IFJlemtpIChTb255KSA8dXJlemtpQGdtYWlsLmNvbT4K CmRpZmYgLS1naXQgYS9tbS92bWFsbG9jLmMgYi9tbS92bWFsbG9jLmMKaW5kZXggOTY4MzU3M2Yx MjI1Li42ZmY5NWYzZDFmYTEgMTAwNjQ0Ci0tLSBhL21tL3ZtYWxsb2MuYworKysgYi9tbS92bWFs bG9jLmMKQEAgLTE3MzksMTUgKzE3MzksMTQgQEAgc3RhdGljIGJvb2wgX19wdXJnZV92bWFwX2Fy ZWFfbGF6eSh1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIGVuZCkKICAgICAgICBp ZiAodW5saWtlbHkobGlzdF9lbXB0eSgmbG9jYWxfcHVyZ2VfbGlzdCkpKQogICAgICAgICAgICAg ICAgZ290byBvdXQ7CgotICAgICAgIHN0YXJ0ID0gbWluKHN0YXJ0LAotICAgICAgICAgICAgICAg bGlzdF9maXJzdF9lbnRyeSgmbG9jYWxfcHVyZ2VfbGlzdCwKLSAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IHZtYXBfYXJlYSwgbGlzdCktPnZhX3N0YXJ0KTsKKyAgICAgICAvKiBPSy4gQSBw ZXItY3B1IHdhbnRzIHRvIGZsdXNoIGFuIGV4YWN0IHJhbmdlLiAqLworICAgICAgIGlmIChzdGFy dCAhPSBVTE9OR19NQVgpCisgICAgICAgICAgICAgICBmbHVzaF90bGJfa2VybmVsX3JhbmdlKHN0 YXJ0LCBlbmQpOwoKLSAgICAgICBlbmQgPSBtYXgoZW5kLAotICAgICAgICAgICAgICAgbGlzdF9s YXN0X2VudHJ5KCZsb2NhbF9wdXJnZV9saXN0LAotICAgICAgICAgICAgICAgICAgICAgICBzdHJ1 Y3Qgdm1hcF9hcmVhLCBsaXN0KS0+dmFfZW5kKTsKKyAgICAgICAvKiBGbHVzaCBwZXItVkEuICov CisgICAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeSh2YSwgJmxvY2FsX3B1cmdlX2xpc3QsIGxpc3Qp CisgICAgICAgICAgICAgICBmbHVzaF90bGJfa2VybmVsX3JhbmdlKHZhLT52YV9zdGFydCwgdmEt PnZhX2VuZCk7CgotICAgICAgIGZsdXNoX3RsYl9rZXJuZWxfcmFuZ2Uoc3RhcnQsIGVuZCk7CiAg ICAgICAgcmVzY2hlZF90aHJlc2hvbGQgPSBsYXp5X21heF9wYWdlcygpIDw8IDE7CgogICAgICAg IHNwaW5fbG9jaygmZnJlZV92bWFwX2FyZWFfbG9jayk7CjxzbmlwPgoKVGhlcmUgYXJlIGF0IGxl YXN0IHR3byBvYnNlcnZhdGlvbjoKCjEuIGFzbV9zeXN2ZWNfY2FsbF9mdW5jdGlvbiBhZGRzIGV4 dHJhIDEyJSBpbiB0aGVybXMgb2YgY3ljbGVzCgojIHBlci1WQSBUTEIgZmx1c2gKICAgLSAxMi4w MCUgbmF0aXZlX3F1ZXVlZF9zcGluX2xvY2tfc2xvd3BhdGggICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICDilpIKICAgICAgLSAxMS45MCUgYXNtX3N5c3ZlY19jYWxsX2Z1 bmN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilpIK ICAgICAgICAgLSBzeXN2ZWNfY2FsbF9mdW5jdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilpIKICAgICAgICAgICBfX3N5c3ZlY19jYWxs X2Z1bmN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICDilpIKICAgICAgICAgLSBfX2ZsdXNoX3NtcF9jYWxsX2Z1bmN0aW9uX3F1ZXVlICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilpIKICAgICAgICAgICAgLSAx LjY0JSBfX2ZsdXNoX3RsYl9hbGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICDilpIKICAgICAgICAgICAgICAgICBuYXRpdmVfZmx1c2hfdGxiX2dsb2Jh bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilpIKICAgICAg ICAgICAgICAgICBuYXRpdmVfd3JpdGVfY3I0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICDilpIKCiMgZGVmYXVsdAowLjE4JSAgICAgMC4xNiUgIFtr ZXJuZWxdICAgICAgICAgICAgW2tdIGFzbV9zeXN2ZWNfY2FsbF9mdW5jdGlvbgoKMi4gTWVtb3J5 IGZvb3RwcmludCBncm93cyh1bmRlciBoZWF2eSBsb2FkKSBiZWNhdXNlIHRoZSBUTEItZmx1c2gg KyBleHRyYSBsYXp5LWxpc3Qgc2Nhbgp0YWtlIGxvbmdlciB0aW1lLgoKSG9wZSBpdCBjb3VsZCBi ZSBzb21laG93IHVzZWZ1bCBmb3IgeW91LgoKLS0KVWxhZHppc2xhdSBSZXpraQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBt YWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo= 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 51954C77B7A for ; Fri, 19 May 2023 10:02:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EAA10280001; Fri, 19 May 2023 06:02:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E333F900003; Fri, 19 May 2023 06:02:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CFD9E280001; Fri, 19 May 2023 06:02:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id BEC3F900003 for ; Fri, 19 May 2023 06:02:06 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 72F6A1A0A26 for ; Fri, 19 May 2023 10:02:06 +0000 (UTC) X-FDA: 80806563852.12.0C1B080 Received: from mail-lj1-f172.google.com (mail-lj1-f172.google.com [209.85.208.172]) by imf09.hostedemail.com (Postfix) with ESMTP id 9123314001A for ; Fri, 19 May 2023 10:02:03 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=X3EVcJrS; spf=pass (imf09.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.172 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684490523; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=H1W3Mxvm971CbgIs6535/Aup+UtfhvG+TAFS3/65WyA=; b=pTp3E76adyaPnec00m19M0w4QlAUKnufgYjuE/uyZbm44GA481Z8a2aCyd69NK5uJWYVgZ quD37nNMZBJrTUhCwfw8HJFuUl2GvIP462Kp+Zshzsv7op4JvwouuGrzu7f/uTR17MBrPd nYsdq4Ma7O32JzAcu5PIAxzmTeuogAY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684490523; a=rsa-sha256; cv=none; b=hkR3H4XlT222TPMFPM2cIHyOlmA44HYXlPc94onYDqVEO5Z3DDgcUjzcZJJMrEADy6NeTQ d7MMXYzEbEiGKAv9Eo7gV8464Is9UoUnWZSy7rZJP/6X067VLTsyHf74XRzh0qQo1jPdBU LopQI0kGVVbi/uzN09YVG4jm6/9lHO4= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=X3EVcJrS; spf=pass (imf09.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.172 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-lj1-f172.google.com with SMTP id 38308e7fff4ca-2af28a07be9so879701fa.2 for ; Fri, 19 May 2023 03:02:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684490521; x=1687082521; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from:from:to :cc:subject:date:message-id:reply-to; bh=H1W3Mxvm971CbgIs6535/Aup+UtfhvG+TAFS3/65WyA=; b=X3EVcJrSTD2GB+mRsOX4o622yogTawhfhfmFNgE7Ax1o6lJPn7dR/2yI7NfxEbDxwr P6ynBjY+NRMzsKcCOHTTM/6j54vF6wPfxU6iQCPcAMaR8i+lGrKEnWrMxeVVoK9ypqZW X5/PPcj6hkjfKk1weA2i6Q6aIiv7+cCcJ00gqXpSC2nAFx3aAhJ00Nc8GpADtriwjaY5 Gj86aE628ccW6VLWYTAGgrgqPPLh9FO+gufmjMEZIvOTVI65JlXtqWsOWq5SX566AcMi y993rKEblzaG3lFB/HbkWSDY6uZbAPpRxstOo8nb9RRjq8gKCMOBFIJAInnH77e+Ge53 F2TQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684490521; x=1687082521; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:date:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=H1W3Mxvm971CbgIs6535/Aup+UtfhvG+TAFS3/65WyA=; b=FmxElM8qVTk/z09U1LYwzdv9eh3YDK/ya4zQp23BLO+QhZxIqlH3GK7+XgKufkxaBm VWKhDO1sNv8WE4wXEPT3/C/oWXWbHYZUPu1vTiibmWlBrwzsofQhga/v+2D0Vj8t1AW1 u5oGLM3GvqhvnPFRRhpJvfcG3/0UxEyeuXq0RfPQisFjAkwSvMiYgHy4T5yH4pO3a9Qa RGuXqz9dGs8Pz6Zu0ILhs0/odTQc59wAzGiCohjpzbKiize/ehlO1DFzYwivjEDCC2kS X1yuCibegtihEmx9kRhq9FTQDUzyXEIFTtsBYzbu4KriS7vCbHCQmxu/40RFx0ftr5Ed LljQ== X-Gm-Message-State: AC+VfDw1+YTkbUWgHXjmEZG4C/uFdrzTQcYPjOYCUewOQ+v9vNmMIwci /7AftfO+zJu9rfhTQkIBJug= X-Google-Smtp-Source: ACHHUZ4OeGX9W7fs4IoWxUoIcWCCf32gCnZv/94bAAK/Z2OYS7sDCpcxiDNaKmFiTEjRZPuTDkWxpQ== X-Received: by 2002:a2e:b0ec:0:b0:2af:1db6:8f13 with SMTP id h12-20020a2eb0ec000000b002af1db68f13mr571754ljl.34.1684490521185; Fri, 19 May 2023 03:02:01 -0700 (PDT) Received: from pc636 (host-90-235-19-70.mobileonline.telia.com. [90.235.19.70]) by smtp.gmail.com with ESMTPSA id t16-20020a2e9d10000000b002aa3ad9014asm745669lji.54.2023.05.19.03.01.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 May 2023 03:01:59 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Fri, 19 May 2023 12:01:56 +0200 To: Thomas Gleixner Cc: Uladzislau Rezki , "Russell King (Oracle)" , Andrew Morton , linux-mm@kvack.org, Christoph Hellwig , Lorenzo Stoakes , Peter Zijlstra , Baoquan He , John Ogness , linux-arm-kernel@lists.infradead.org, Mark Rutland , Marc Zyngier , x86@kernel.org Subject: Re: Excessive TLB flush ranges Message-ID: References: <87y1lo7a0z.ffs@tglx> <87o7mk733x.ffs@tglx> <87leho6wd9.ffs@tglx> <87o7mj5fuz.ffs@tglx> <87edne6hra.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <87edne6hra.ffs@tglx> X-Rspamd-Queue-Id: 9123314001A X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: du9fuhhkhmmxchyxtqaj1p4ieyrf15hr X-HE-Tag: 1684490523-522444 X-HE-Meta: U2FsdGVkX19Hmxp4mHSJXWOAhTsOHWtgzLOuz06ca0JbLQzB+a5ixZkDEKUv9SAypZzVUfAG+cXWUZLWSvlTIW0Emwb+LGW6/4uc0668gsVs4REe863Mq1S4ewnmFeQiJgnd52e3IIcAJIgemcum+f9b6mtHvYvvYTKFKU1EJSEIzepiHcuC6QVbcLtWcQ5RV0dIAMQj/0jbf4Y3jl3yUmZN7TFL9FP4JQvSzhZtuiG35OJvcYpsgqX2ApQRVIcgO/m38uBq8n1IFs9yY5VrZPOP9M3VnVLMUGSflyNFhDgA4Md+J590Roj8K/iM0DNeBKpNWjI5Xm4i/ewAarp4BGUQGmCWPSOz53qZQhgP3nVnbvzUjg0h9nX8IjjLDGNsOK9B5uH53mj9boK0X7s0wOEeRDcURkJnOCdCleTi/SXT2mLb6c/CV8K5jMblbkgtYsrA2/bBGMTUTfhBobTPtRIGXRnmJ1kzIjgSqEvM49Hv0c0+TEsmH+OaqxbV8pZbNs1F0Iu0/PH492ZoFnmxVV+DM+QeKmXZ1rPd+HH8qKt40muC53xwrd52S8p5sH0jJrCWB8+ITxZM2b0wa5X2+RXaTAubSnf0zGxMH8ZEWxjC9wFfsIEXc7sU+zz/TZRStMowCYmKNjZnFgxZ47T4LtNoKWYvCvnz2OgkyMtzODUzy/6ttr9IgVmuGnntGSZ0BfCMdP8y+oKGdJuKj7J4zk/z+PEM+8SBcLFLoyd7FtWwqoD8+fuuJ8BKzoQ7hxvwEVMDWaDyA5bXmbMLEFsclDi/o2uJifC8bCd/FHrSEi1ZBAnc9K7krr8mihkPd9M6TPrWsoi13s+8mOPf+G46q+5FsuBOtn8cCXDeZfQkeeEI2506XYL51HkxlbOcCJMbNNjed04GzCmB2c6NgasSRZu0E3weORxUTUaHpibg1o9KLwfXHSo7ml+/U4ahwfrrnBSQy11KDjTeZZFoxsF reti4LPC TcKpcgpXdlnWMNt9PelGK53m9bRaNtyl5D5WEv/hfEGvfov8eVN+NPnuHtld4gDHSFxMCP+rAsedREg76ql52JsRKAimAIsKopDlvLjI//IN85C3PAAjdyog/ru8OExVEyluGXFnWsq0Y/TINZPO5Y89VDv4BNFlI2VE8/mpBaEgI0YJZcrXnifeOVxsq2GrDQK6F/XsIOIImj6lk/KVjXQm6Pm6g0TnVNX9eTrcW58dmEUlz574ZBe3fFMmL9QLflfsF/GiBA28NTUxJPCJjwvNEL2SflP8spNm3eFTqXc7AdZpoQoz8bM2rWqkjSLYew6bv3vH2dqrbXOnp68cYuUJg+6Vy4xjg32p/1bt1yLFAn3dpH9CGtRxlD8jxXXNbbAyh3CfhWE9m6e/tvDGlMbdBIr4BTl0ippErYFpTPxMc6VlFAzYqbImDd0EDmIk+h4XIbK7jQbYwdCB2QjTeLLsjMnt/FVAfugjeuW1zQgz61GASgLvI48xNWL+t7JUVGEcmL9gQrymXsuI= 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: On Wed, May 17, 2023 at 06:32:25PM +0200, Thomas Gleixner wrote: > On Wed, May 17 2023 at 14:15, Uladzislau Rezki wrote: > > On Wed, May 17, 2023 at 01:58:44PM +0200, Thomas Gleixner wrote: > >> Keeping executable mappings around until some other flush happens is > >> obviously neither a brilliant idea nor correct. > >> > > It avoids of blocking a caller on vfree() by deferring the freeing into > > a workqueue context. At least i got the filling that "your task" that > > does vfree() blocks for unacceptable time. It can happen only if it > > performs VM_FLUSH_RESET_PERMS freeing(other freeing are deferred): > > > > > > if (unlikely(vm->flags & VM_FLUSH_RESET_PERMS)) > > vm_reset_perms(vm); > > > > > > in this case the vfree() can take some time instead of returning back to > > a user asap. Is that your issue? I am not talking that TLB flushing takes > > time, in this case holding on mutex also can take time. > > This is absolutely not the problem at all. This comes via do_exit() and > I explained already here: > > https://lore.kernel.org/all/871qjg8wqe.ffs@tglx > > what made us look into this and I'm happy to quote myself for your > conveniance: > > "The scenario which made us look is that CPU0 is housekeeping and CPU1 is > isolated for RT. > > Now CPU0 does that flush nonsense and the RT workload on CPU1 suffers > because the compute time is suddenly factor 2-3 larger, IOW, it misses > the deadline. That means a one off event is already a problem." > > So it does not matter at all how long the operations on CPU0 take. The > only thing which matters is how much these operations affect the > workload on CPU1. > Thanks. I focused on your first email, where you have not mentioned your second part, explaining that you have a housekeeping CPU and another for RT activity. > > That made me look into this coalescing code. I understand why you want > to batch and coalesce and rather do a rare full tlb flush than sending > gazillions of IPIs. > Your issues has no connections with merging. But the place you looked was correct :) > > But that creates a policy at the core code which does not leave any > decision to make for the architecture, whether it's worth to do full or > single flushes. That's what I worried about and not about the question > whether that free takes 1ms or 10us. That's a completely different > debate. > > Whether that list based flush turns out to be the better solution or > not, has still to be decided by deeper analysis. > I had a look how per-VA TLB flushing behaves on x86_64 under heavy load: commit 776a33ed63f0f15b5b3f6254bcb927a45e37298d (HEAD -> master) Author: Uladzislau Rezki (Sony) Date: Fri May 19 11:35:35 2023 +0200 mm: vmalloc: Flush TLB per-va Signed-off-by: Uladzislau Rezki (Sony) diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 9683573f1225..6ff95f3d1fa1 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -1739,15 +1739,14 @@ static bool __purge_vmap_area_lazy(unsigned long start, unsigned long end) if (unlikely(list_empty(&local_purge_list))) goto out; - start = min(start, - list_first_entry(&local_purge_list, - struct vmap_area, list)->va_start); + /* OK. A per-cpu wants to flush an exact range. */ + if (start != ULONG_MAX) + flush_tlb_kernel_range(start, end); - end = max(end, - list_last_entry(&local_purge_list, - struct vmap_area, list)->va_end); + /* Flush per-VA. */ + list_for_each_entry(va, &local_purge_list, list) + flush_tlb_kernel_range(va->va_start, va->va_end); - flush_tlb_kernel_range(start, end); resched_threshold = lazy_max_pages() << 1; spin_lock(&free_vmap_area_lock); There are at least two observation: 1. asm_sysvec_call_function adds extra 12% in therms of cycles # per-VA TLB flush - 12.00% native_queued_spin_lock_slowpath ▒ - 11.90% asm_sysvec_call_function ▒ - sysvec_call_function ▒ __sysvec_call_function ▒ - __flush_smp_call_function_queue ▒ - 1.64% __flush_tlb_all ▒ native_flush_tlb_global ▒ native_write_cr4 ▒ # default 0.18% 0.16% [kernel] [k] asm_sysvec_call_function 2. Memory footprint grows(under heavy load) because the TLB-flush + extra lazy-list scan take longer time. Hope it could be somehow useful for you. -- Uladzislau Rezki