From mboxrd@z Thu Jan 1 00:00:00 1970 From: Borislav Petkov Subject: Re: [PATCH 6/6] x86: Use clwb in drm_clflush_virt_range Date: Thu, 13 Nov 2014 12:20:17 +0100 Message-ID: <20141113112017.GA14416@pd.tnic> References: <1415731396-19364-1-git-send-email-ross.zwisler@linux.intel.com> <1415731396-19364-7-git-send-email-ross.zwisler@linux.intel.com> <5464220D.6090204@amacapital.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.skyhub.de (mail.skyhub.de [78.46.96.112]) by gabe.freedesktop.org (Postfix) with ESMTP id A073A6EAE2 for ; Thu, 13 Nov 2014 03:20:26 -0800 (PST) Content-Disposition: inline In-Reply-To: <5464220D.6090204@amacapital.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Andy Lutomirski Cc: x86@kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Ingo Molnar , Ross Zwisler , H Peter Anvin , Thomas Gleixner List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBOb3YgMTIsIDIwMTQgYXQgMDc6MTQ6MjFQTSAtMDgwMCwgQW5keSBMdXRvbWlyc2tp IHdyb3RlOgo+IE9uIDExLzExLzIwMTQgMTA6NDMgQU0sIFJvc3MgWndpc2xlciB3cm90ZToKPiA+ IElmIGNsd2IgaXMgYXZhaWxhYmxlIG9uIHRoZSBzeXN0ZW0sIHVzZSBpdCBpbiBkcm1fY2xmbHVz aF92aXJ0X3JhbmdlLgo+ID4gSWYgY2x3YiBpcyBub3QgYXZhaWxhYmxlLCBmYWxsIGJhY2sgdG8g Y2xmbHVzaG9wdCBpZiB5b3UgY2FuLgo+ID4gSWYgY2xmbHVzaG9wdCBpcyBub3Qgc3VwcG9ydGVk LCBmYWxsIGFsbCB0aGUgd2F5IGJhY2sgdG8gY2xmbHVzaC4KPiAKPiBJIGRvbid0IGtub3cgZXhh Y3RseSB3aGF0IGRybV9jbGZsdXNoX3ZpcnRfcmFuZ2UgKGFuZCB0aGUgb3RoZXIKPiBmdW5jdGlv bnMgeW91J3JlIG1vZGlmeWluZyBzaW1pbGFybHkpIGFyZSBmb3IsIGJ1dCBpdCBzZWVtcyBwbGF1 c2libGUgdG8KPiBtZSB0aGF0IHRoZXkncmUgdXNlZCBiZWZvcmUgcmVhZHMgdG8gbWFrZSBzdXJl IHRoYXQgbm9uLWNvaGVyZW50IG1lbW9yeQo+IHNlZXMgdXBkYXRlZCBkYXRhLiAgSWYgdGhhdCdz IHRydWUsIHRoZW4gdGhpcyB3aWxsIGJyZWFrIGl0LgoKV2h5IHdvdWxkIGl0IGJyZWFrIGl0PyBU aGUgdXBkYXRlZCBjYWNoZWxpbmVzIHdpbGwgYmUgaW4gbWVtb3J5IGFuZApzdWJzZXF1ZW50IHJl YWRzIHdpbGwgYmUgc2VydmljZWQgZnJvbSB0aGUgY2FjaGUgaW5zdGVhZCBmcm9tIGdvaW5nIHRv Cm1lbW9yeSBhcyBpdCBpcyBub3QgaW52YWxpZGF0ZWQgYXMgaXQgd291bGQgYmUgYnkgQ0xGTFVT SC4KCi9tZSBpcyBwdXp6bGVkLgoKLS0gClJlZ2FyZHMvR3J1c3MsCiAgICBCb3Jpcy4KClNlbnQg ZnJvbSBhIGZhdCBjcmF0ZSB1bmRlciBteSBkZXNrLiBGb3JtYXR0aW5nIGlzIGZpbmUuCi0tCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932321AbaKMLUa (ORCPT ); Thu, 13 Nov 2014 06:20:30 -0500 Received: from mail.skyhub.de ([78.46.96.112]:55880 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932396AbaKMLUY (ORCPT ); Thu, 13 Nov 2014 06:20:24 -0500 Date: Thu, 13 Nov 2014 12:20:17 +0100 From: Borislav Petkov To: Andy Lutomirski Cc: Ross Zwisler , linux-kernel@vger.kernel.org, H Peter Anvin , Ingo Molnar , Thomas Gleixner , David Airlie , dri-devel@lists.freedesktop.org, x86@kernel.org Subject: Re: [PATCH 6/6] x86: Use clwb in drm_clflush_virt_range Message-ID: <20141113112017.GA14416@pd.tnic> References: <1415731396-19364-1-git-send-email-ross.zwisler@linux.intel.com> <1415731396-19364-7-git-send-email-ross.zwisler@linux.intel.com> <5464220D.6090204@amacapital.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <5464220D.6090204@amacapital.net> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Nov 12, 2014 at 07:14:21PM -0800, Andy Lutomirski wrote: > On 11/11/2014 10:43 AM, Ross Zwisler wrote: > > If clwb is available on the system, use it in drm_clflush_virt_range. > > If clwb is not available, fall back to clflushopt if you can. > > If clflushopt is not supported, fall all the way back to clflush. > > I don't know exactly what drm_clflush_virt_range (and the other > functions you're modifying similarly) are for, but it seems plausible to > me that they're used before reads to make sure that non-coherent memory > sees updated data. If that's true, then this will break it. Why would it break it? The updated cachelines will be in memory and subsequent reads will be serviced from the cache instead from going to memory as it is not invalidated as it would be by CLFLUSH. /me is puzzled. -- Regards/Gruss, Boris. Sent from a fat crate under my desk. Formatting is fine. --