All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Skeggs <bskeggs@redhat.com>
To: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: "Heinz Diehl" <htd@fritha.org>,
	"Martin Peres" <martin.peres@labri.fr>,
	"Heinz Diehl" <htd@fancy-poultry.org>,
	"Linus Torvalds" <torvalds@linux-foundation.org>,
	"Paweł Sikora" <pawel.sikora@agmk.net>,
	"David Airlie" <airlied@linux.ie>,
	"Daniel Vetter" <daniel.vetter@ffwll.ch>,
	dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	marcheu@chromium.org
Subject: Re: Linux 3.7-rc1 (nouveau_bios_score oops).
Date: Mon, 22 Oct 2012 10:07:59 +1000	[thread overview]
Message-ID: <1350864479.3404.2.camel@turiel> (raw)
In-Reply-To: <20121020221948.GE5826@joi.lan>

On Sun, 2012-10-21 at 00:19 +0200, Marcin Slusarz wrote:
> On Sat, Oct 20, 2012 at 11:20:36PM +0200, Heinz Diehl wrote:
> > On 20.10.2012, Marcin Slusarz wrote: 
> > 
> > > Try this one.
> > 
> > It works, now I can boot again. However, nouveau seems to be dead now.
> > The dmesg output with your patch on top of 3.7-rc1 is:
> > 
> > [    3.685909] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
> > [    3.687784] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x0a8800b1
> > [    3.689960] nouveau  [  DEVICE][0000:01:00.0] Chipset: GT218 (NVA8)
> > [    3.692471] nouveau  [  DEVICE][0000:01:00.0] Family : NV50
> > [    3.695716] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
> > [    3.697087] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.698471] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
> > [    3.699838] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.701223] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
> > [    3.702684] ACPI Error: Field [ROMI] Base+Offset+Width 0+24+1 is beyond end of region [VROM] (length 24) (20120913/exfldio-210)
> > [    3.704139] ACPI Error: Method parse/execution failed[\_SB_.PCI0.PEG1.GFX0._ROM] (Node ffff880142e85cf8), AE_AML_REGION_LIMIT (20120913/psparse-536)
> > [    3.716183] failed to evaluate ROM got AE_AML_REGION_LIMIT
> > [    3.718776] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.721349] nouveau  [   VBIOS][0000:01:00.0] checking PCIROM for image...
> > [    3.724111] nouveau 0000:01:00.0: Invalid ROM contents
> > [    3.726663] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.729159] nouveau E[   VBIOS][0000:01:00.0] unable to locate usable image
> > [    3.731677] nouveau E[  DEVICE][0000:01:00.0] failed to create 0x10000001, -22
> > [    3.734231] nouveau E[     DRM] failed to create 0x80000080, -22
> > [    3.736097] nouveau: probe of 0000:01:00.0 failed with error -22
> > [    3.740523] dracut: Starting plymouth daemon
> 
> Hmm, maybe we can't fetch 3 bytes only...
Yeah, I noticed this issue myself on a machine here while backporting
the patch to another (older) kernel.  I assumed (wrongly, apparently)
that there was just a bug in the older kernel's ACPI implementation that
had been fixed upstream already (I didn't see it on the same machine
with the current kernel)...  So, I didn't send the patch.

I'll queue it up with a -fixes batch later today.

Sorry about the trouble,
Ben.

> 
> Let's check this:
> 
> ---
> diff --git a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> index 824eea0..8bd71aa 100644
> --- a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> +++ b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> @@ -192,14 +192,16 @@ nouveau_bios_shadow_acpi(struct nouveau_bios *bios)
>  {
>  	struct pci_dev *pdev = nv_device(bios)->pdev;
>  	int ret, cnt, i;
> -	u8  data[3];
> +	u8  *data;
>  
>  	if (!nouveau_acpi_rom_supported(pdev))
>  		return;
>  
>  	bios->size = 0;
> -	if (nouveau_acpi_get_bios_chunk(data, 0, 3) == 3)
> +	data = kmalloc(4096, GFP_KERNEL);
> +	if (data && nouveau_acpi_get_bios_chunk(data, 0, 4096) >= 3)
>  		bios->size = data[2] * 512;
> +	kfree(data);
>  	if (!bios->size)
>  		return;
>  
> ---
> 
> Please attach acpidump output.



WARNING: multiple messages have this Message-ID (diff)
From: Ben Skeggs <bskeggs@redhat.com>
To: Marcin Slusarz <marcin.slusarz@gmail.com>
Cc: "Martin Peres" <martin.peres@labri.fr>,
	"Paweł Sikora" <pawel.sikora@agmk.net>,
	"Daniel Vetter" <daniel.vetter@ffwll.ch>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	"Heinz Diehl" <htd@fritha.org>,
	marcheu@chromium.org,
	"Linus Torvalds" <torvalds@linux-foundation.org>,
	"Heinz Diehl" <htd@fancy-poultry.org>
Subject: Re: Linux 3.7-rc1 (nouveau_bios_score oops).
Date: Mon, 22 Oct 2012 10:07:59 +1000	[thread overview]
Message-ID: <1350864479.3404.2.camel@turiel> (raw)
In-Reply-To: <20121020221948.GE5826@joi.lan>

On Sun, 2012-10-21 at 00:19 +0200, Marcin Slusarz wrote:
> On Sat, Oct 20, 2012 at 11:20:36PM +0200, Heinz Diehl wrote:
> > On 20.10.2012, Marcin Slusarz wrote: 
> > 
> > > Try this one.
> > 
> > It works, now I can boot again. However, nouveau seems to be dead now.
> > The dmesg output with your patch on top of 3.7-rc1 is:
> > 
> > [    3.685909] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
> > [    3.687784] nouveau  [  DEVICE][0000:01:00.0] BOOT0  : 0x0a8800b1
> > [    3.689960] nouveau  [  DEVICE][0000:01:00.0] Chipset: GT218 (NVA8)
> > [    3.692471] nouveau  [  DEVICE][0000:01:00.0] Family : NV50
> > [    3.695716] nouveau  [   VBIOS][0000:01:00.0] checking PRAMIN for image...
> > [    3.697087] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.698471] nouveau  [   VBIOS][0000:01:00.0] checking PROM for image...
> > [    3.699838] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.701223] nouveau  [   VBIOS][0000:01:00.0] checking ACPI for image...
> > [    3.702684] ACPI Error: Field [ROMI] Base+Offset+Width 0+24+1 is beyond end of region [VROM] (length 24) (20120913/exfldio-210)
> > [    3.704139] ACPI Error: Method parse/execution failed[\_SB_.PCI0.PEG1.GFX0._ROM] (Node ffff880142e85cf8), AE_AML_REGION_LIMIT (20120913/psparse-536)
> > [    3.716183] failed to evaluate ROM got AE_AML_REGION_LIMIT
> > [    3.718776] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.721349] nouveau  [   VBIOS][0000:01:00.0] checking PCIROM for image...
> > [    3.724111] nouveau 0000:01:00.0: Invalid ROM contents
> > [    3.726663] nouveau  [   VBIOS][0000:01:00.0] ... signature not found
> > [    3.729159] nouveau E[   VBIOS][0000:01:00.0] unable to locate usable image
> > [    3.731677] nouveau E[  DEVICE][0000:01:00.0] failed to create 0x10000001, -22
> > [    3.734231] nouveau E[     DRM] failed to create 0x80000080, -22
> > [    3.736097] nouveau: probe of 0000:01:00.0 failed with error -22
> > [    3.740523] dracut: Starting plymouth daemon
> 
> Hmm, maybe we can't fetch 3 bytes only...
Yeah, I noticed this issue myself on a machine here while backporting
the patch to another (older) kernel.  I assumed (wrongly, apparently)
that there was just a bug in the older kernel's ACPI implementation that
had been fixed upstream already (I didn't see it on the same machine
with the current kernel)...  So, I didn't send the patch.

I'll queue it up with a -fixes batch later today.

Sorry about the trouble,
Ben.

> 
> Let's check this:
> 
> ---
> diff --git a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> index 824eea0..8bd71aa 100644
> --- a/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> +++ b/drivers/gpu/drm/nouveau/core/subdev/bios/base.c
> @@ -192,14 +192,16 @@ nouveau_bios_shadow_acpi(struct nouveau_bios *bios)
>  {
>  	struct pci_dev *pdev = nv_device(bios)->pdev;
>  	int ret, cnt, i;
> -	u8  data[3];
> +	u8  *data;
>  
>  	if (!nouveau_acpi_rom_supported(pdev))
>  		return;
>  
>  	bios->size = 0;
> -	if (nouveau_acpi_get_bios_chunk(data, 0, 3) == 3)
> +	data = kmalloc(4096, GFP_KERNEL);
> +	if (data && nouveau_acpi_get_bios_chunk(data, 0, 4096) >= 3)
>  		bios->size = data[2] * 512;
> +	kfree(data);
>  	if (!bios->size)
>  		return;
>  
> ---
> 
> Please attach acpidump output.

  parent reply	other threads:[~2012-10-22  0:09 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-18  7:32 Linux 3.7-rc1 (nouveau_bios_score oops) Paweł Sikora
2012-10-19 21:25 ` Linus Torvalds
2012-10-19 22:41   ` Martin Peres
2012-10-19 22:52     ` Linus Torvalds
2012-10-20  9:26   ` Heinz Diehl
2012-10-20  9:40     ` Martin Peres
2012-10-20 10:42       ` Heinz Diehl
2012-10-20 20:28         ` Marcin Slusarz
2012-10-20 20:28           ` Marcin Slusarz
2012-10-20 20:35           ` Marcin Slusarz
2012-10-20 21:20           ` Heinz Diehl
2012-10-20 21:42             ` Marcin Slusarz
2012-10-20 21:45               ` Marcin Slusarz
2012-10-21  8:54               ` Heinz Diehl
2012-10-20 22:19             ` Marcin Slusarz
2012-10-21  6:58               ` Paweł Sikora
2012-10-21  9:26                 ` Heinz Diehl
2012-10-21 12:09                 ` Marcin Slusarz
2012-10-21 12:09                   ` Marcin Slusarz
2012-10-21 13:31                   ` Heinz Diehl
2012-10-21 14:38                   ` Linus Torvalds
2012-10-21 14:49                     ` Marcin Slusarz
2012-10-21 17:13                       ` Linus Torvalds
2012-10-21 20:07                       ` Lekensteyn
2012-10-22  0:07               ` Ben Skeggs [this message]
2012-10-22  0:07                 ` Ben Skeggs
2012-10-25 17:53       ` Paweł Sikora
2012-10-25 18:06         ` Heinz Diehl
2012-10-26 19:51           ` Paweł Sikora
     [not found] ` <1437818.9jlLBUTXHL@al>
     [not found]   ` <20121021090310.GB2403@fritha.org>
     [not found]     ` <20121021090310.GB2403-iEI8Y0CNJBYdnm+yROfE0A@public.gmane.org>
2012-10-21 10:33       ` Lekensteyn

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=1350864479.3404.2.camel@turiel \
    --to=bskeggs@redhat.com \
    --cc=airlied@linux.ie \
    --cc=daniel.vetter@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=htd@fancy-poultry.org \
    --cc=htd@fritha.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcheu@chromium.org \
    --cc=marcin.slusarz@gmail.com \
    --cc=martin.peres@labri.fr \
    --cc=pawel.sikora@agmk.net \
    --cc=torvalds@linux-foundation.org \
    /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.