[Mesa-dev] [RFC] panfrost: Add DRM backend

Tomeu Vizoso tomeu.vizoso at collabora.com
Wed Mar 6 08:10:52 UTC 2019


On 3/5/19 4:24 PM, Alyssa Rosenzweig wrote:
>> One is that with kbase I don't see any noticeable pauses during the very
>> first scene in glmark2.
> 
> ...That sounds like a good thing? :)

I was assuming that the horse should spin smoothly, and not pausing every 
second or so, as it happens with the DRM driver.

>> Another is that with the DRM driver I don't see the wallpaper in GNOME Shell.
> 
> GNOME Shell is very broken under Panfrost; that's not a kernel-space
> regression (but a userspace one).

Yeah, but with kbase instead of the DRM driver, at least the wallpaper 
gets rendered :)

> Does glmark's -brefract and -bshadow demo work?

It's complicated :)

With glmark2-drm, the rendering seems to be the same with both kernel 
drivers.

With glmark2-es2-wayland on Weston:

- With the DRM driver, -brefract doesn't render at all, I get lots of JS 
fault interrupts.

- With the DRM driver, -bshadow renders a first frame only, but 
interestingly enough I can see the horse's shadow, which I haven't seen 
otherwise in any other combination (not even with kbase and glmark2-drm). 
After the first frame I start getting MMU faults.

- With kbase, -brefract renders even better than on KMS. I suspect 
something wrong with synchronization that causes unfinished content to be 
presented on KMS.

- With kbase, -bshadow renders even better than on KMS, but the shadow 
doesn't seem to be whole. I suspect something wrong with synchronization 
that causes unfinished content to be presented on KMS, and maybe also on 
Wayland (with GPU composition).

Any ideas about what are the underlying problems to be solved?

> I'm also curious about
> performance, though honestly I wouldn't be surprised if we end up with a
> slight advantage there when all is said and done..

Yeah, TBH, I'm running glmark2 with a hack to sync to refresh rate 
because otherwise it tries to render at 1500FPS and stumbles upon all the 
races in my crappy kernel code :)

Cheers,

Tomeu


More information about the mesa-dev mailing list