linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Oops in au8830 driver on x86-64
@ 2006-05-10 23:05 Zoltan Boszormenyi
  2006-05-10 23:07 ` Zoltan Boszormenyi
  2006-05-11 18:35 ` Andi Kleen
  0 siblings, 2 replies; 6+ messages in thread
From: Zoltan Boszormenyi @ 2006-05-10 23:05 UTC (permalink / raw)
  To: linux-kernel

Hi,

I bought a used sound card for secondary uses, it happens to be
a Diamond Sound Monster MX300 with an Aureal Vortex2 chip.
Unfortunately, after putting it into the machine, it doesn't boot up,
I get an oops that prevents booting further. I have hand-copied
the relevant info:

RIP: {:snd_au8830:snd_vortex_probe+411}
...
Call Trace: {sprintf+81} {__wake_up+56}
 {pci_device_probe+256} {driver_probe_device+82}
 {__driver_attach+142} {__driver_attach+0}
 {bus_for_each_dev+67} {bus_add_driver+118}
 {__pci_register_driver+142} {stop_machine_run+58}
 {sys_init_module+278} {system_call+126}

The kernel is not tainted.

$ uname -a
Linux xxxxxx 2.6.16-1.2111_FC5 #1 SMP Thu May 4 21:16:04 EDT 2006 x86_64 
x86_64 x86_64 GNU/Linux

System is an FC5/x86-64 updated to the latest erratas.

There is only one sprintf() call in the whole au88x0 driver source,
line 328 in au88x0.c. Why it fails for x86-64 is beyond my understanding.
This is the code in question:

327:    strcpy(card->shortname, CARD_NAME_SHORT);
328:    sprintf(card->longname, "%s at 0x%lx irq %i",
                card->shortname, chip->io, chip->irq);

Pointer "card" exists or the driver would have failed earlier allocating 
or dereferencing it.
card->longname is 80 byte large, length of the string is at most 44 byte:
12 byte (format string fillings + terminating NULL) +
6 byte (CARD_NAME_SHORT) +
6 byte (unsigned long written in hex) +
10 byte (unsigned int written in dec)

I couldn't seek further, I put the card away for now. :-)

Best regards,
Zoltán Böszörményi


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Oops in au8830 driver on x86-64
  2006-05-10 23:05 Oops in au8830 driver on x86-64 Zoltan Boszormenyi
@ 2006-05-10 23:07 ` Zoltan Boszormenyi
  2006-05-11 18:35 ` Andi Kleen
  1 sibling, 0 replies; 6+ messages in thread
From: Zoltan Boszormenyi @ 2006-05-10 23:07 UTC (permalink / raw)
  To: linux-kernel

Zoltan Boszormenyi írta:
> Hi,
>
> I bought a used sound card for secondary uses, it happens to be
> a Diamond Sound Monster MX300 with an Aureal Vortex2 chip.
> Unfortunately, after putting it into the machine, it doesn't boot up,
> I get an oops that prevents booting further. I have hand-copied
> the relevant info:
>
> RIP: {:snd_au8830:snd_vortex_probe+411}
> ...
> Call Trace: {sprintf+81} {__wake_up+56}
> {pci_device_probe+256} {driver_probe_device+82}
> {__driver_attach+142} {__driver_attach+0}
> {bus_for_each_dev+67} {bus_add_driver+118}
> {__pci_register_driver+142} {stop_machine_run+58}
> {sys_init_module+278} {system_call+126}
>
> The kernel is not tainted.
>
> $ uname -a
> Linux xxxxxx 2.6.16-1.2111_FC5 #1 SMP Thu May 4 21:16:04 EDT 2006 
> x86_64 x86_64 x86_64 GNU/Linux
>
> System is an FC5/x86-64 updated to the latest erratas.
>
> There is only one sprintf() call in the whole au88x0 driver source,
> line 328 in au88x0.c. Why it fails for x86-64 is beyond my understanding.
> This is the code in question:
>
> 327:    strcpy(card->shortname, CARD_NAME_SHORT);
> 328:    sprintf(card->longname, "%s at 0x%lx irq %i",
>                card->shortname, chip->io, chip->irq);
>
> Pointer "card" exists or the driver would have failed earlier 
> allocating or dereferencing it.
> card->longname is 80 byte large, length of the string is at most 44 byte:
> 12 byte (format string fillings + terminating NULL) +
> 6 byte (CARD_NAME_SHORT) +
> 6 byte (unsigned long written in hex) +

This is 16, not 6, before anyone complains I can't count. :-)

> 10 byte (unsigned int written in dec)
>
> I couldn't seek further, I put the card away for now. :-)
>
> Best regards,
> Zoltán Böszörményi
>
>


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Oops in au8830 driver on x86-64
  2006-05-10 23:05 Oops in au8830 driver on x86-64 Zoltan Boszormenyi
  2006-05-10 23:07 ` Zoltan Boszormenyi
@ 2006-05-11 18:35 ` Andi Kleen
  2006-05-11 19:23   ` Zoltan Boszormenyi
  1 sibling, 1 reply; 6+ messages in thread
From: Andi Kleen @ 2006-05-11 18:35 UTC (permalink / raw)
  To: Zoltan Boszormenyi; +Cc: linux-kernel

Zoltan Boszormenyi <zboszor@dunaweb.hu> writes:
> 
> I couldn't seek further, I put the card away for now. :-)

First thing I would do is to fix all the compile warnings.

-Andi

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Oops in au8830 driver on x86-64
  2006-05-11 18:35 ` Andi Kleen
@ 2006-05-11 19:23   ` Zoltan Boszormenyi
  2006-05-11 19:24     ` Andi Kleen
  0 siblings, 1 reply; 6+ messages in thread
From: Zoltan Boszormenyi @ 2006-05-11 19:23 UTC (permalink / raw)
  To: Andi Kleen; +Cc: linux-kernel

Hi,

Andi Kleen írta:
> Zoltan Boszormenyi <zboszor@dunaweb.hu> writes:
>   
>> I couldn't seek further, I put the card away for now. :-)
>>     
>
> First thing I would do is to fix all the compile warnings.
>
> -Andi
>
>   

What warnings are you talking about?

...
  LD [M]  sound/pci/ali5451/snd-ali5451.o
  LD      sound/pci/au88x0/built-in.o
  CC [M]  sound/pci/au88x0/au8810.o
  CC [M]  sound/pci/au88x0/au8820.o
  CC [M]  sound/pci/au88x0/au8830.o
  LD [M]  sound/pci/au88x0/snd-au8810.o
  LD [M]  sound/pci/au88x0/snd-au8820.o
  LD [M]  sound/pci/au88x0/snd-au8830.o
  LD      sound/pci/ca0106/built-in.o
  CC [M]  sound/pci/ca0106/ca0106_main.o
...

Should I do an 'export CFLAGS="-Wall"' before make?

Best regards,
Zoltán Böszörményi


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Oops in au8830 driver on x86-64
  2006-05-11 19:23   ` Zoltan Boszormenyi
@ 2006-05-11 19:24     ` Andi Kleen
  2006-05-11 19:46       ` Zoltan Boszormenyi
  0 siblings, 1 reply; 6+ messages in thread
From: Andi Kleen @ 2006-05-11 19:24 UTC (permalink / raw)
  To: Zoltan Boszormenyi; +Cc: linux-kernel

On Thursday 11 May 2006 21:23, Zoltan Boszormenyi wrote:
> Hi,
>
> Andi Kleen írta:
> > Zoltan Boszormenyi <zboszor@dunaweb.hu> writes:
> >> I couldn't seek further, I put the card away for now. :-)
> >
> > First thing I would do is to fix all the compile warnings.
> >
> > -Andi
>
> What warnings are you talking about?

It was just a general comment. If there aren't any it's harder.
I guess you would need to find out where exactly it crashes.

-Andi

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Oops in au8830 driver on x86-64
  2006-05-11 19:24     ` Andi Kleen
@ 2006-05-11 19:46       ` Zoltan Boszormenyi
  0 siblings, 0 replies; 6+ messages in thread
From: Zoltan Boszormenyi @ 2006-05-11 19:46 UTC (permalink / raw)
  To: Andi Kleen; +Cc: linux-kernel

Hi,

Andi Kleen írta:
> On Thursday 11 May 2006 21:23, Zoltan Boszormenyi wrote:
>   
>> Hi,
>>
>> Andi Kleen írta:
>>     
>>> Zoltan Boszormenyi <zboszor@dunaweb.hu> writes:
>>>       
>>>> I couldn't seek further, I put the card away for now. :-)
>>>>         
>>> First thing I would do is to fix all the compile warnings.
>>>
>>> -Andi
>>>       
>> What warnings are you talking about?
>>     
>
> It was just a general comment. If there aren't any it's harder.
> I guess you would need to find out where exactly it crashes.
>
> -Andi
>   

I am going to do it but I have to do some
urgent user space programming first.

Thanks anyway.

Best regards,
Zoltán Böszörményi


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2006-05-11 19:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-10 23:05 Oops in au8830 driver on x86-64 Zoltan Boszormenyi
2006-05-10 23:07 ` Zoltan Boszormenyi
2006-05-11 18:35 ` Andi Kleen
2006-05-11 19:23   ` Zoltan Boszormenyi
2006-05-11 19:24     ` Andi Kleen
2006-05-11 19:46       ` Zoltan Boszormenyi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).