All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felix Kuehling <felix.kuehling@amd.com>
To: "Christian König" <christian.koenig@amd.com>,
	"Guilherme G. Piccoli" <gpiccoli@igalia.com>,
	"Alex Deucher" <alexdeucher@gmail.com>
Cc: "open list:EFIFB FRAMEBUFFER DRIVER"
	<linux-fbdev@vger.kernel.org>, "xinhui pan" <Xinhui.Pan@amd.com>,
	"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
	"Baoquan He" <bhe@redhat.com>,
	"Samuel Iglesias Gonsálvez" <siglesias@igalia.com>,
	kernel@gpiccoli.net, kexec@lists.infradead.org,
	"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	pjones@redhat.com, "Gerd Hoffmann" <kraxel@redhat.com>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Deucher, Alexander" <alexander.deucher@amd.com>,
	"Dave Young" <dyoung@redhat.com>,
	"Vivek Goyal" <vgoyal@redhat.com>
Subject: Re: Reuse framebuffer after a kexec (amdgpu / efifb)
Date: Fri, 10 Dec 2021 19:54:34 -0500	[thread overview]
Message-ID: <3988a221-2f6a-540a-3d77-18c2c67ddbe7@amd.com> (raw)
In-Reply-To: <d1de6ca3-11ae-af9e-a2fb-7bcb6fae01d6@amd.com>

On 2021-12-10 10:13 a.m., Christian König wrote:
>
>
> Am 10.12.21 um 15:25 schrieb Guilherme G. Piccoli:
>> On 10/12/2021 11:16, Alex Deucher wrote:> [...]
>>> Why not just reload the driver after kexec?
>>>
>>> Alex
>> Because the original issue is the kdump case, and we want a very very
>> tiny kernel - also, the crash originally could have been caused by
>> amdgpu itself, so if it's a GPU issue, we don't want to mess with that
>> in kdump. And I confess I tried modprobe amdgpu after a kdump, no
>> success - kdump won't call shutdown handlers, so GPU will be in a
>> "rogue" state...
>>
>> My question was about regular kexec because it's much simpler usually,
>> we can do whatever we want there. My line of thought was: if I make it
>> work in regular kexec with a simple framebuffer, I might be able to get
>> it working on kdump heheh
>
> How about issuing a PCIe reset and re-initializing the ASIC with just 
> the VBIOS?
>
> That should be pretty straightforward I think.

Do you actually need to restore the exact boot-up mode? If you have the 
same framebuffer memory layout (width, height, bpp, stride) the precise 
display timing doesn't really matter. So we "just" need to switch to a 
mode that's compatible with the efifb framebuffer parameters and point 
the display engine at the efifb as the scan-out buffer.

Regards,
   Felix


>
> Christian.

WARNING: multiple messages have this Message-ID (diff)
From: Felix Kuehling <felix.kuehling@amd.com>
To: "Christian König" <christian.koenig@amd.com>,
	"Guilherme G. Piccoli" <gpiccoli@igalia.com>,
	"Alex Deucher" <alexdeucher@gmail.com>
Cc: "open list:EFIFB FRAMEBUFFER DRIVER"
	<linux-fbdev@vger.kernel.org>,
	kernel@gpiccoli.net, "Baoquan He" <bhe@redhat.com>,
	"Samuel Iglesias Gonsálvez" <siglesias@igalia.com>,
	"xinhui pan" <Xinhui.Pan@amd.com>,
	kexec@lists.infradead.org,
	"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
	pjones@redhat.com, "amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Deucher, Alexander" <alexander.deucher@amd.com>,
	"Dave Young" <dyoung@redhat.com>,
	"Vivek Goyal" <vgoyal@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>
Subject: Re: Reuse framebuffer after a kexec (amdgpu / efifb)
Date: Fri, 10 Dec 2021 19:54:34 -0500	[thread overview]
Message-ID: <3988a221-2f6a-540a-3d77-18c2c67ddbe7@amd.com> (raw)
In-Reply-To: <d1de6ca3-11ae-af9e-a2fb-7bcb6fae01d6@amd.com>

On 2021-12-10 10:13 a.m., Christian König wrote:
>
>
> Am 10.12.21 um 15:25 schrieb Guilherme G. Piccoli:
>> On 10/12/2021 11:16, Alex Deucher wrote:> [...]
>>> Why not just reload the driver after kexec?
>>>
>>> Alex
>> Because the original issue is the kdump case, and we want a very very
>> tiny kernel - also, the crash originally could have been caused by
>> amdgpu itself, so if it's a GPU issue, we don't want to mess with that
>> in kdump. And I confess I tried modprobe amdgpu after a kdump, no
>> success - kdump won't call shutdown handlers, so GPU will be in a
>> "rogue" state...
>>
>> My question was about regular kexec because it's much simpler usually,
>> we can do whatever we want there. My line of thought was: if I make it
>> work in regular kexec with a simple framebuffer, I might be able to get
>> it working on kdump heheh
>
> How about issuing a PCIe reset and re-initializing the ASIC with just 
> the VBIOS?
>
> That should be pretty straightforward I think.

Do you actually need to restore the exact boot-up mode? If you have the 
same framebuffer memory layout (width, height, bpp, stride) the precise 
display timing doesn't really matter. So we "just" need to switch to a 
mode that's compatible with the efifb framebuffer parameters and point 
the display engine at the efifb as the scan-out buffer.

Regards,
   Felix


>
> Christian.

WARNING: multiple messages have this Message-ID (diff)
From: Felix Kuehling <felix.kuehling@amd.com>
To: "Christian König" <christian.koenig@amd.com>,
	"Guilherme G. Piccoli" <gpiccoli@igalia.com>,
	"Alex Deucher" <alexdeucher@gmail.com>
Cc: "open list:EFIFB FRAMEBUFFER DRIVER"
	<linux-fbdev@vger.kernel.org>, "xinhui pan" <Xinhui.Pan@amd.com>,
	"Maling list - DRI developers" <dri-devel@lists.freedesktop.org>,
	"Baoquan He" <bhe@redhat.com>,
	"Samuel Iglesias Gonsálvez" <siglesias@igalia.com>,
	kernel@gpiccoli.net, kexec@lists.infradead.org,
	"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	pjones@redhat.com, "Gerd Hoffmann" <kraxel@redhat.com>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Deucher, Alexander" <alexander.deucher@amd.com>,
	"Dave Young" <dyoung@redhat.com>,
	"Vivek Goyal" <vgoyal@redhat.com>
Subject: Re: Reuse framebuffer after a kexec (amdgpu / efifb)
Date: Fri, 10 Dec 2021 19:54:34 -0500	[thread overview]
Message-ID: <3988a221-2f6a-540a-3d77-18c2c67ddbe7@amd.com> (raw)
In-Reply-To: <d1de6ca3-11ae-af9e-a2fb-7bcb6fae01d6@amd.com>

On 2021-12-10 10:13 a.m., Christian König wrote:
>
>
> Am 10.12.21 um 15:25 schrieb Guilherme G. Piccoli:
>> On 10/12/2021 11:16, Alex Deucher wrote:> [...]
>>> Why not just reload the driver after kexec?
>>>
>>> Alex
>> Because the original issue is the kdump case, and we want a very very
>> tiny kernel - also, the crash originally could have been caused by
>> amdgpu itself, so if it's a GPU issue, we don't want to mess with that
>> in kdump. And I confess I tried modprobe amdgpu after a kdump, no
>> success - kdump won't call shutdown handlers, so GPU will be in a
>> "rogue" state...
>>
>> My question was about regular kexec because it's much simpler usually,
>> we can do whatever we want there. My line of thought was: if I make it
>> work in regular kexec with a simple framebuffer, I might be able to get
>> it working on kdump heheh
>
> How about issuing a PCIe reset and re-initializing the ASIC with just 
> the VBIOS?
>
> That should be pretty straightforward I think.

Do you actually need to restore the exact boot-up mode? If you have the 
same framebuffer memory layout (width, height, bpp, stride) the precise 
display timing doesn't really matter. So we "just" need to switch to a 
mode that's compatible with the efifb framebuffer parameters and point 
the display engine at the efifb as the scan-out buffer.

Regards,
   Felix


>
> Christian.

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  parent reply	other threads:[~2021-12-11  0:54 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-09 16:00 Reuse framebuffer after a kexec (amdgpu / efifb) Guilherme G. Piccoli
2021-12-09 16:00 ` Guilherme G. Piccoli
2021-12-09 16:00 ` Guilherme G. Piccoli
2021-12-09 16:09 ` Christian König
2021-12-09 16:09   ` Christian König
2021-12-09 16:09   ` Christian König
2021-12-09 17:31 ` Alex Deucher
2021-12-09 17:31   ` Alex Deucher
2021-12-09 17:31   ` Alex Deucher
2021-12-09 17:59   ` Guilherme G. Piccoli
2021-12-09 17:59     ` Guilherme G. Piccoli
2021-12-09 17:59     ` Guilherme G. Piccoli
2021-12-09 18:06     ` Alex Deucher
2021-12-09 18:06       ` Alex Deucher
2021-12-09 18:06       ` Alex Deucher
2021-12-09 18:17       ` Guilherme G. Piccoli
2021-12-09 18:17         ` Guilherme G. Piccoli
2021-12-09 18:17         ` Guilherme G. Piccoli
2021-12-09 19:20         ` Alex Deucher
2021-12-09 19:20           ` Alex Deucher
2021-12-09 19:20           ` Alex Deucher
2021-12-10  7:19         ` Gerd Hoffmann
2021-12-10  7:19           ` Gerd Hoffmann
2021-12-10  7:19           ` Gerd Hoffmann
2021-12-10  7:19           ` Gerd Hoffmann
2021-12-10  8:24         ` Thomas Zimmermann
2021-12-10  8:24           ` Thomas Zimmermann
2021-12-10 14:08           ` Guilherme G. Piccoli
2021-12-10 14:08             ` Guilherme G. Piccoli
2021-12-10 14:08             ` Guilherme G. Piccoli
2021-12-10 14:16             ` Alex Deucher
2021-12-10 14:16               ` Alex Deucher
2021-12-10 14:16               ` Alex Deucher
2021-12-10 14:25               ` Guilherme G. Piccoli
2021-12-10 14:25                 ` Guilherme G. Piccoli
2021-12-10 14:25                 ` Guilherme G. Piccoli
2021-12-10 15:13                 ` Christian König
2021-12-10 15:13                   ` Christian König
2021-12-10 15:13                   ` Christian König
2021-12-10 15:24                   ` Guilherme G. Piccoli
2021-12-10 15:24                     ` Guilherme G. Piccoli
2021-12-10 15:24                     ` Guilherme G. Piccoli
2021-12-10 15:32                     ` Christian König
2021-12-10 15:32                       ` Christian König
2021-12-10 15:32                       ` Christian König
2021-12-10 19:11                     ` Alex Deucher
2021-12-10 19:11                       ` Alex Deucher
2021-12-10 19:11                       ` Alex Deucher
2021-12-11  0:54                   ` Felix Kuehling [this message]
2021-12-11  0:54                     ` Felix Kuehling
2021-12-11  0:54                     ` Felix Kuehling
2021-12-11  9:20                     ` Gerd Hoffmann
2021-12-11  9:20                       ` Gerd Hoffmann
2021-12-11  9:20                       ` Gerd Hoffmann
2021-12-11  9:20                       ` Gerd Hoffmann
2021-12-10 19:05                 ` Alex Deucher
2021-12-10 19:05                   ` Alex Deucher
2021-12-10 19:05                   ` Alex Deucher

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=3988a221-2f6a-540a-3d77-18c2c67ddbe7@amd.com \
    --to=felix.kuehling@amd.com \
    --cc=Xinhui.Pan@amd.com \
    --cc=alexander.deucher@amd.com \
    --cc=alexdeucher@gmail.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bhe@redhat.com \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=dyoung@redhat.com \
    --cc=gpiccoli@igalia.com \
    --cc=kernel@gpiccoli.net \
    --cc=kexec@lists.infradead.org \
    --cc=kraxel@redhat.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=pjones@redhat.com \
    --cc=siglesias@igalia.com \
    --cc=tzimmermann@suse.de \
    --cc=vgoyal@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.