From: "Thomas Hellström (VMware)" <thomas_os@shipmail.org>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: Guillaume.Gardet@arm.com, David Airlie <airlied@linux.ie>,
open list <linux-kernel@vger.kernel.org>,
dri-devel@lists.freedesktop.org, gurchetansingh@chromium.org,
yuq825@gmail.com, tzimmermann@suse.de
Subject: Re: [PATCH v5 1/3] drm/shmem: add support for per object caching flags.
Date: Thu, 27 Feb 2020 14:49:25 +0100 [thread overview]
Message-ID: <b6f21041-d114-96c5-8f86-13eafd102c5d@shipmail.org> (raw)
In-Reply-To: <78eb099e-020f-91d1-672e-15176bf12cd4@shipmail.org>
On 2/27/20 2:44 PM, Thomas Hellström (VMware) wrote:
> Hi,
>
> On 2/27/20 2:21 PM, Gerd Hoffmann wrote:
>> Hi,
>>
>>>> So I'd like to push patches 1+2 to -fixes and sort everything else
>>>> later
>>>> in -next. OK?
>>> OK with me.
>> Done.
>>
>>>> [ context: why shmem helpers use pgprot_writecombine +
>>>> pgprot_decrypted?
>>>> we get conflicting mappings because of that, linear kernel
>>>> map vs. gem object vmap/mmap ]
>>> Do we have any idea what drivers are actually using
>>> write-combine and decrypted?
>> drivers/gpu/drm# find -name Kconfig* -print | xargs grep -l
>> DRM_GEM_SHMEM_HELPER
>> ./lima/Kconfig
>> ./tiny/Kconfig
>> ./cirrus/Kconfig
>> ./Kconfig
>> ./panfrost/Kconfig
>> ./udl/Kconfig
>> ./v3d/Kconfig
>> ./virtio/Kconfig
>>
>> virtio needs cached.
>> cirrus+udl should be ok with cached too.
>>
>> Not clue about the others (lima, tiny, panfrost, v3d). Maybe they use
>> write-combine just because this is what they got by default from
>> drm_gem_mmap_obj(). Maybe they actually need that. Trying to Cc:
>> maintainters (and drop stable@).
>>
>> On decrypted: I guess that is only relevant for virtual machines, i.e.
>> virtio-gpu and cirrus?
>>
>> virtio-gpu needs it, otherwise the host can't show the virtual display.
>> cirrus bounces everything via blits to vram, so it should be ok without
>> decrypted. I guess that implies we should make decrypted configurable.
>
> Decrypted here is clearly incorrect and violates the SEV spec,
> regardless of a config option.
> The only correct way is currently to use dma_alloc_coherent() and
> mmap_coherent() to allocate decrypted memory and then use the
> pgprot_decrypted flag.
>
> Since the same page is aliased with two physical addresses (one
> encrypted and one decrypted) switching memory from one to the other
> needs extensive handling even to flush stale vmaps...
>
> So if virtio-gpu needs it for some bos, it should move away from shmem
> for those bos.
(But this is of course up to the virtio-gpu and drm maintainers), but
IMO, again, pgprot_decrypted() shouldn't be part of generic helpers.
/Thomas
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2020-02-27 13:49 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-26 15:47 [PATCH v5 0/3] drm/virtio: fix mmap page attributes Gerd Hoffmann
2020-02-26 15:47 ` [PATCH v5 1/3] drm/shmem: add support for per object caching flags Gerd Hoffmann
2020-02-26 16:51 ` Guillaume Gardet
2020-02-26 18:24 ` Thomas Hellström (VMware)
2020-02-27 0:02 ` Chia-I Wu
2020-02-27 7:16 ` Thomas Hellström (VMware)
2020-02-27 7:53 ` Gerd Hoffmann
2020-02-27 8:10 ` Thomas Hellström (VMware)
2020-02-27 10:56 ` Gerd Hoffmann
2020-02-27 12:16 ` Thomas Hellström (VMware)
2020-02-27 13:21 ` Gerd Hoffmann
2020-02-27 13:44 ` Thomas Hellström (VMware)
2020-02-27 13:49 ` Thomas Hellström (VMware) [this message]
2020-02-28 9:49 ` Gerd Hoffmann
2020-02-28 9:54 ` Thomas Hellström (VMware)
2020-02-28 10:46 ` Gerd Hoffmann
2020-03-02 1:56 ` Qiang Yu
2020-02-26 15:47 ` [PATCH v5 2/3] drm/virtio: fix mmap page attributes Gerd Hoffmann
2020-02-26 16:52 ` Guillaume Gardet
2020-02-26 15:47 ` [PATCH v5 3/3] drm/udl: simplify gem object mapping Gerd Hoffmann
2020-02-26 17:03 ` [PATCH v5 0/3] drm/virtio: fix mmap page attributes Gurchetan Singh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b6f21041-d114-96c5-8f86-13eafd102c5d@shipmail.org \
--to=thomas_os@shipmail.org \
--cc=Guillaume.Gardet@arm.com \
--cc=airlied@linux.ie \
--cc=dri-devel@lists.freedesktop.org \
--cc=gurchetansingh@chromium.org \
--cc=kraxel@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tzimmermann@suse.de \
--cc=yuq825@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).