If it doesn't work on vbox that's not really our problem. I've sent my version [1] that works on Workstation and ESXI. Since it has less code it has a much higher chance of succeeding in a panic situation which is what we care about. Feel free to add whatever tags you feel are appropriate on that patch review.
[1] https://lore.kernel.org/dri-devel/[email protected]/T/#u Ian, On Thu, Oct 16, 2025 at 9:48 AM Ryosuke Yasuoka <[email protected]> wrote: > > On Fri, Sep 19, 2025 at 12:29:29PM +0900, Ryosuke Yasuoka wrote: > > Add drm_panic support for stdu in vmwgfx. This patch was tested in a VM > > with VMSVGA on Virtual Box. > > > > Based on the feedback for v2 patch, I've made the following updates in > > my v3 patch. > > - Use MEMREMAP_WB | MEMREMAP_DEC flags for memremap > > - Use vmw_priv->initial_height and initial_width for sb and VRAM > > - Move all panic related functions to the vmwgfx_kms.c file > > - Ensure if the current display unit is 0 in get_scanout_buffer() > > > > I did not apply all of Ian's feedback in this v3 patch for the reasons > > outlined below. > > > > > 1. You can call `vmw_kms_write_svga` directly in `panic_flush`. There > > > is no need to mark the buffer as dirty or send any commands. > > > > In my test environment (VirtualBox), the panic screen appears unstably > > without dirty command's submission. Without it, the screen sometimes > > appears immediately as expected, and at other times, there's a delay > > of 15 to 20 seconds. I've also observed that it sometimes only appears > > after switching between the VirtualBox console window and other windows. > > > > With command submission, we can stably get a panic screen. Even if it > > fails, we may get the panic screen ultimately. Therefore, I think we > > should retain vmw_kms_panic_do_bo_dirty() to submit commands. > > > > > 2. The format should be hardcoded to RGB565 to minimize the risk of > > > overrunning VRAM. Adjust the pitch accordingly to 2x width. > > > > While it's possible to output the panic screen with RGB565 by adjusting > > pitch and width, and BPP on the (virtual) hardware side, this approach > > causes debugfs to fail. It appears that the BPP must be reset after the > > panic screen is displayed, and there is no way to wait for the screen > > to be fully displayed within the drm_panic handler code. > > > > In my test environment, as VRAM has enough space even when using > > XRGB8888 (32 bits), I think the risk of overruning VRAM is low. So I've > > kept the default format and CPP size. > > > > v1: > > https://lore.kernel.org/all/[email protected]/ > > > > v2: > > https://lore.kernel.org/all/[email protected]/ > > - Map a scanout_buffer to VRAM in .get_scanout_buffer > > - And then write to VRAM directly using fifo in legacy mode to avoid > > allocations or command submissions. > > > > > > Ryosuke Yasuoka (1): > > drm/vmwgfx: add drm_panic support for stdu mode > > > > drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 4 + > > drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 165 +++++++++++++++++++++++++++ > > drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 2 + > > 3 files changed, 171 insertions(+) > > > > > > base-commit: d41c79838c47bc822534cd53628fe5e0f8ad2424 > > -- > > 2.51.0 > > Hi all, > > This is a gentle reminder for this v3 patch. > I would appreciate any feedback when you have a chance. > > Ian, your feedback on v1 and v2 were very helpful. I would appreciate it > if you could take another look when you have a moment. > > Any comments are welcome. > > Thank you > Ryosuke >
smime.p7s
Description: S/MIME Cryptographic Signature
