mbox series

[0/3] drm/vboxvideo: Use generic fbdev and framebuffer

Message ID 20191011134808.3955-1-tzimmermann@suse.de (mailing list archive)
Headers show
Series drm/vboxvideo: Use generic fbdev and framebuffer | expand

Message

Thomas Zimmermann Oct. 11, 2019, 1:48 p.m. UTC
The vboxvideo driver provides its own implementation for fbdev emulation
and framebuffers. Both can be replaced by DRM's generic code.

All patches have been tested on VirtualBox 6.0.12.

Thomas Zimmermann (3):
  drm/vboxvideo: Switch to generic fbdev emulation
  drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
  drm/vboxvideo: Replace struct vram_framebuffer with generic
    implemenation

 drivers/gpu/drm/vboxvideo/Makefile    |   2 +-
 drivers/gpu/drm/vboxvideo/vbox_drv.c  |  14 +--
 drivers/gpu/drm/vboxvideo/vbox_drv.h  |  25 -----
 drivers/gpu/drm/vboxvideo/vbox_fb.c   | 149 --------------------------
 drivers/gpu/drm/vboxvideo/vbox_main.c | 119 +-------------------
 drivers/gpu/drm/vboxvideo/vbox_mode.c |  86 +++++++--------
 6 files changed, 49 insertions(+), 346 deletions(-)
 delete mode 100644 drivers/gpu/drm/vboxvideo/vbox_fb.c

--
2.23.0

Comments

Sam Ravnborg Oct. 12, 2019, 12:36 p.m. UTC | #1
Hi Thomas.

On Fri, Oct 11, 2019 at 03:48:05PM +0200, Thomas Zimmermann wrote:
> The vboxvideo driver provides its own implementation for fbdev emulation
> and framebuffers. Both can be replaced by DRM's generic code.
> 
> All patches have been tested on VirtualBox 6.0.12.
> 
> Thomas Zimmermann (3):
>   drm/vboxvideo: Switch to generic fbdev emulation
>   drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>   drm/vboxvideo: Replace struct vram_framebuffer with generic
>     implemenation
> 
>  drivers/gpu/drm/vboxvideo/Makefile    |   2 +-
>  drivers/gpu/drm/vboxvideo/vbox_drv.c  |  14 +--
>  drivers/gpu/drm/vboxvideo/vbox_drv.h  |  25 -----
>  drivers/gpu/drm/vboxvideo/vbox_fb.c   | 149 --------------------------
>  drivers/gpu/drm/vboxvideo/vbox_main.c | 119 +-------------------
>  drivers/gpu/drm/vboxvideo/vbox_mode.c |  86 +++++++--------
>  6 files changed, 49 insertions(+), 346 deletions(-)
>  delete mode 100644 drivers/gpu/drm/vboxvideo/vbox_fb.c
Nice work. Browsed through the changes and enjoyed all the deleted code.

You can add my:

Acked-by: Sam Ravnborg <sam@ravnborg.org>

to the whole series.

	Sam
Thomas Zimmermann Oct. 14, 2019, 2:35 p.m. UTC | #2
Hi

Am 12.10.19 um 14:36 schrieb Sam Ravnborg:
> Hi Thomas.
> 
> On Fri, Oct 11, 2019 at 03:48:05PM +0200, Thomas Zimmermann wrote:
>> The vboxvideo driver provides its own implementation for fbdev emulation
>> and framebuffers. Both can be replaced by DRM's generic code.
>>
>> All patches have been tested on VirtualBox 6.0.12.
>>
>> Thomas Zimmermann (3):
>>    drm/vboxvideo: Switch to generic fbdev emulation
>>    drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>>    drm/vboxvideo: Replace struct vram_framebuffer with generic
>>      implemenation
>>
>>   drivers/gpu/drm/vboxvideo/Makefile    |   2 +-
>>   drivers/gpu/drm/vboxvideo/vbox_drv.c  |  14 +--
>>   drivers/gpu/drm/vboxvideo/vbox_drv.h  |  25 -----
>>   drivers/gpu/drm/vboxvideo/vbox_fb.c   | 149 --------------------------
>>   drivers/gpu/drm/vboxvideo/vbox_main.c | 119 +-------------------
>>   drivers/gpu/drm/vboxvideo/vbox_mode.c |  86 +++++++--------
>>   6 files changed, 49 insertions(+), 346 deletions(-)
>>   delete mode 100644 drivers/gpu/drm/vboxvideo/vbox_fb.c
> Nice work. Browsed through the changes and enjoyed all the deleted code.
> 
> You can add my:
> 
> Acked-by: Sam Ravnborg <sam@ravnborg.org>
> 
> to the whole series.

Thanks!

> 
> 	Sam
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
Hans de Goede Oct. 28, 2019, 11:26 a.m. UTC | #3
Hi Thomas,

On 11-10-2019 15:48, Thomas Zimmermann wrote:
> The vboxvideo driver provides its own implementation for fbdev emulation
> and framebuffers. Both can be replaced by DRM's generic code.
> 
> All patches have been tested on VirtualBox 6.0.12.
> 
> Thomas Zimmermann (3):
>    drm/vboxvideo: Switch to generic fbdev emulation
>    drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>    drm/vboxvideo: Replace struct vram_framebuffer with generic
>      implemenation

Thank you for these nice cleanups, unfortunately there is a small
bug in the last patch, you are setting:

	.fb_create = drm_gem_fb_create,

But since in the previous patch you switched to drm_atomic_helper_dirty_fb
that should be:

	.fb_create = drm_gem_fb_create_with_dirty,

The missing with_dirty is causing screenupdates under both plymouth and
gnome-shell (with llvmpipe) to gone missing. I'll send a patch fixing
this.

Regards,

Hans
Thomas Zimmermann Oct. 28, 2019, 11:34 a.m. UTC | #4
Hi

Am 28.10.19 um 12:26 schrieb Hans de Goede:
> Hi Thomas,
> 
> On 11-10-2019 15:48, Thomas Zimmermann wrote:
>> The vboxvideo driver provides its own implementation for fbdev emulation
>> and framebuffers. Both can be replaced by DRM's generic code.
>>
>> All patches have been tested on VirtualBox 6.0.12.
>>
>> Thomas Zimmermann (3):
>>    drm/vboxvideo: Switch to generic fbdev emulation
>>    drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>>    drm/vboxvideo: Replace struct vram_framebuffer with generic
>>      implemenation
> 
> Thank you for these nice cleanups, unfortunately there is a small
> bug in the last patch, you are setting:
> 
>     .fb_create = drm_gem_fb_create,
> 
> But since in the previous patch you switched to drm_atomic_helper_dirty_fb
> that should be:
> 
>     .fb_create = drm_gem_fb_create_with_dirty,
> 
> The missing with_dirty is causing screenupdates under both plymouth and
> gnome-shell (with llvmpipe) to gone missing. I'll send a patch fixing
> this.

You're right. I did test the patchset, but I can't tell why I didn't see
this bug. Anyway, thanks a lot for providing the fix.

Best regards
Thomas

> 
> Regards,
> 
> Hans
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
Hans de Goede Oct. 28, 2019, 12:06 p.m. UTC | #5
Hi,

On 28-10-2019 12:34, Thomas Zimmermann wrote:
> Hi
> 
> Am 28.10.19 um 12:26 schrieb Hans de Goede:
>> Hi Thomas,
>>
>> On 11-10-2019 15:48, Thomas Zimmermann wrote:
>>> The vboxvideo driver provides its own implementation for fbdev emulation
>>> and framebuffers. Both can be replaced by DRM's generic code.
>>>
>>> All patches have been tested on VirtualBox 6.0.12.
>>>
>>> Thomas Zimmermann (3):
>>>     drm/vboxvideo: Switch to generic fbdev emulation
>>>     drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>>>     drm/vboxvideo: Replace struct vram_framebuffer with generic
>>>       implemenation
>>
>> Thank you for these nice cleanups, unfortunately there is a small
>> bug in the last patch, you are setting:
>>
>>      .fb_create = drm_gem_fb_create,
>>
>> But since in the previous patch you switched to drm_atomic_helper_dirty_fb
>> that should be:
>>
>>      .fb_create = drm_gem_fb_create_with_dirty,
>>
>> The missing with_dirty is causing screenupdates under both plymouth and
>> gnome-shell (with llvmpipe) to gone missing. I'll send a patch fixing
>> this.
> 
> You're right. I did test the patchset, but I can't tell why I didn't see
> this bug.

I know you tested the patch-set, since you said so above :)  You probably
are aware of this already, but did you check what vga-card the vm is using?
New vbox VMs default to their new vmware-svga card emulation, in which case
vboxvideo is not used at all, vboxvideo is only used with the older VboxVGA
and VboxSVGA (*) virtual vga-cards.

> Anyway, thanks a lot for providing the fix.

You are welcome.

Regards,

Hans



*) Of course once I finally get their driver upstream they deprecate it, grumble.
Thomas Zimmermann Oct. 28, 2019, 12:24 p.m. UTC | #6
Hi

Am 28.10.19 um 13:06 schrieb Hans de Goede:
> Hi,
> 
> On 28-10-2019 12:34, Thomas Zimmermann wrote:
>> Hi
>>
>> Am 28.10.19 um 12:26 schrieb Hans de Goede:
>>> Hi Thomas,
>>>
>>> On 11-10-2019 15:48, Thomas Zimmermann wrote:
>>>> The vboxvideo driver provides its own implementation for fbdev
>>>> emulation
>>>> and framebuffers. Both can be replaced by DRM's generic code.
>>>>
>>>> All patches have been tested on VirtualBox 6.0.12.
>>>>
>>>> Thomas Zimmermann (3):
>>>>     drm/vboxvideo: Switch to generic fbdev emulation
>>>>     drm/vboxvideo: Switch to drm_atomic_helper_dirty_fb()
>>>>     drm/vboxvideo: Replace struct vram_framebuffer with generic
>>>>       implemenation
>>>
>>> Thank you for these nice cleanups, unfortunately there is a small
>>> bug in the last patch, you are setting:
>>>
>>>      .fb_create = drm_gem_fb_create,
>>>
>>> But since in the previous patch you switched to
>>> drm_atomic_helper_dirty_fb
>>> that should be:
>>>
>>>      .fb_create = drm_gem_fb_create_with_dirty,
>>>
>>> The missing with_dirty is causing screenupdates under both plymouth and
>>> gnome-shell (with llvmpipe) to gone missing. I'll send a patch fixing
>>> this.
>>
>> You're right. I did test the patchset, but I can't tell why I didn't see
>> this bug.
> 
> I know you tested the patch-set, since you said so above :)  You probably
> are aware of this already, but did you check what vga-card the vm is using?
> New vbox VMs default to their new vmware-svga card emulation, in which case
> vboxvideo is not used at all, vboxvideo is only used with the older VboxVGA
> and VboxSVGA (*) virtual vga-cards.

That sounds plausible at least. I'll double-check next time.

Best regards
Thomas

> 
>> Anyway, thanks a lot for providing the fix.
> 
> You are welcome.
> 
> Regards,
> 
> Hans
> 
> 
> 
> *) Of course once I finally get their driver upstream they deprecate it,
> grumble.
>