2003-09-10 06:41:59

by Misha Nasledov

[permalink] [raw]
Subject: bttv bug

Hi,

After upgrading to -test5, my bt878 card ceased to function properly. My
kernel is tainted with the nvidia kernel module but I know for a fact that
bttv worked just fine not too long ago and I have not upgraded my nvidia
drivers since.

I have the following message in my dmesg:

kernel BUG at drivers/media/video/btcx-risc.c:66!
invalid operand: 0000 [#1]
CPU: 0
EIP: 0060:[<e096b0a1>] Tainted: P
EFLAGS: 00010286
EIP is at btcx_riscmem_alloc+0xa1/0xb0 [btcx_risc]
eax: 00000000 ebx: 000008b8 ecx: cdaed000 edx: ce59a000
esi: db5607dc edi: ce59a8b8 ebp: 00000280 esp: dbb95b54
ds: 007b es: 007b ss: 0068
Process motv (pid: 757, threadinfo=dbb94000 task=dc7c0140)
Stack: dfe8f054 000008b8 dbb95b64 00000020 0e59a000 00000280 00000000 db560740
e09b2a3e dfe8f000 db5607dc 000008b8 00000280 00012c00 db560740 00000001
e09b40f4 e09c1d00 db5607dc dd8cb400 00000000 00000280 00000000 000000f0
Call Trace:
[<e09b2a3e>] bttv_risc_packed+0x3e/0x150 [bttv]
[<e09b40f4>] bttv_buffer_risc+0x514/0x630 [bttv]
[<e0986846>] videobuf_waiton+0xb6/0xf0 [video_buf]
[<e09ab194>] bttv_prepare_buffer+0x104/0x1a0 [bttv]
[<e09ab2f2>] buffer_prepare+0x42/0x50 [bttv]
[<e0986dc2>] videobuf_qbuf+0xa2/0x110 [video_buf]
[<c044560f>] wait_hpet_tick+0xf/0x30
[<e09ad769>] bttv_do_ioctl+0x1109/0x1410 [bttv]
[<c013bb50>] __alloc_pages+0x90/0x300
[<c0262bbd>] do_rw_taskfile+0x1bd/0x2b0
[<c01456b2>] do_anonymous_page+0x122/0x230
[<c0145df9>] handle_mm_fault+0xf9/0x190
[<c011ab77>] try_to_wake_up+0xa7/0x150
[<e0a530fa>] __nvsym01580+0x3a/0x70 [nvidia]
[<e0a530fa>] __nvsym01580+0x3a/0x70 [nvidia]
[<e0a71ee4>] __nvsym01575+0x28/0x34 [nvidia]
[<e0a53179>] __nvsym01540+0x49/0x90 [nvidia]
[<c011ab77>] try_to_wake_up+0xa7/0x150
[<c011b66a>] default_wake_function+0x2a/0x30
[<c011b3d0>] schedule+0x1c0/0x3e0
[<c02c01f4>] kfree_skbmem+0x24/0x30
[<c02c0282>] __kfree_skb+0x82/0x100
[<c031b57d>] unix_stream_recvmsg+0x28d/0x580
[<c011b61a>] preempt_schedule+0x2a/0x50
[<c02bc798>] sock_aio_read+0xb8/0xd0
[<c01520bb>] do_sync_read+0x8b/0xc0
[<c044560f>] wait_hpet_tick+0xf/0x30
[<c0258588>] video_usercopy+0xc8/0x1c0
[<c044560f>] wait_hpet_tick+0xf/0x30
[<c01649b0>] __pollwait+0x0/0xd0
[<c0165094>] sys_select+0x234/0x4c0
[<e09adaae>] bttv_ioctl+0x3e/0x70 [bttv]
[<c044560f>] wait_hpet_tick+0xf/0x30
[<e09ac660>] bttv_do_ioctl+0x0/0x1410 [bttv]
[<c044560f>] wait_hpet_tick+0xf/0x30
[<c01641e3>] sys_ioctl+0xf3/0x290
[<c044560f>] wait_hpet_tick+0xf/0x30
[<c010915b>] syscall_call+0x7/0xb
[<c044560f>] wait_hpet_tick+0xf/0x30

Code: 0f 0b 42 00 e0 b5 96 e0 eb b7 90 8d 74 26 00 83 ec 18 89 7c
bttv0: skipped frame. no signal? high irq latency?

--
Misha Nasledov
[email protected]
http://nasledov.com/misha/


2003-09-10 07:45:14

by Aaron Lehmann

[permalink] [raw]
Subject: Re: bttv bug

Can you reproduce it without the nvidia module and produce a call
trace that doesn't include nvidia symbols?

On Tue, Sep 09, 2003 at 11:41:58PM -0700, Misha Nasledov wrote:
> Hi,
>
> After upgrading to -test5, my bt878 card ceased to function properly. My
> kernel is tainted with the nvidia kernel module but I know for a fact that
> bttv worked just fine not too long ago and I have not upgraded my nvidia
> drivers since.
>
> I have the following message in my dmesg:
>
> kernel BUG at drivers/media/video/btcx-risc.c:66!
> invalid operand: 0000 [#1]
> CPU: 0
> EIP: 0060:[<e096b0a1>] Tainted: P
> EFLAGS: 00010286
> EIP is at btcx_riscmem_alloc+0xa1/0xb0 [btcx_risc]
> eax: 00000000 ebx: 000008b8 ecx: cdaed000 edx: ce59a000
> esi: db5607dc edi: ce59a8b8 ebp: 00000280 esp: dbb95b54
> ds: 007b es: 007b ss: 0068
> Process motv (pid: 757, threadinfo=dbb94000 task=dc7c0140)
> Stack: dfe8f054 000008b8 dbb95b64 00000020 0e59a000 00000280 00000000 db560740
> e09b2a3e dfe8f000 db5607dc 000008b8 00000280 00012c00 db560740 00000001
> e09b40f4 e09c1d00 db5607dc dd8cb400 00000000 00000280 00000000 000000f0
> Call Trace:
> [<e09b2a3e>] bttv_risc_packed+0x3e/0x150 [bttv]
> [<e09b40f4>] bttv_buffer_risc+0x514/0x630 [bttv]
> [<e0986846>] videobuf_waiton+0xb6/0xf0 [video_buf]
> [<e09ab194>] bttv_prepare_buffer+0x104/0x1a0 [bttv]
> [<e09ab2f2>] buffer_prepare+0x42/0x50 [bttv]
> [<e0986dc2>] videobuf_qbuf+0xa2/0x110 [video_buf]
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<e09ad769>] bttv_do_ioctl+0x1109/0x1410 [bttv]
> [<c013bb50>] __alloc_pages+0x90/0x300
> [<c0262bbd>] do_rw_taskfile+0x1bd/0x2b0
> [<c01456b2>] do_anonymous_page+0x122/0x230
> [<c0145df9>] handle_mm_fault+0xf9/0x190
> [<c011ab77>] try_to_wake_up+0xa7/0x150
> [<e0a530fa>] __nvsym01580+0x3a/0x70 [nvidia]
> [<e0a530fa>] __nvsym01580+0x3a/0x70 [nvidia]
> [<e0a71ee4>] __nvsym01575+0x28/0x34 [nvidia]
> [<e0a53179>] __nvsym01540+0x49/0x90 [nvidia]
> [<c011ab77>] try_to_wake_up+0xa7/0x150
> [<c011b66a>] default_wake_function+0x2a/0x30
> [<c011b3d0>] schedule+0x1c0/0x3e0
> [<c02c01f4>] kfree_skbmem+0x24/0x30
> [<c02c0282>] __kfree_skb+0x82/0x100
> [<c031b57d>] unix_stream_recvmsg+0x28d/0x580
> [<c011b61a>] preempt_schedule+0x2a/0x50
> [<c02bc798>] sock_aio_read+0xb8/0xd0
> [<c01520bb>] do_sync_read+0x8b/0xc0
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<c0258588>] video_usercopy+0xc8/0x1c0
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<c01649b0>] __pollwait+0x0/0xd0
> [<c0165094>] sys_select+0x234/0x4c0
> [<e09adaae>] bttv_ioctl+0x3e/0x70 [bttv]
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<e09ac660>] bttv_do_ioctl+0x0/0x1410 [bttv]
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<c01641e3>] sys_ioctl+0xf3/0x290
> [<c044560f>] wait_hpet_tick+0xf/0x30
> [<c010915b>] syscall_call+0x7/0xb
> [<c044560f>] wait_hpet_tick+0xf/0x30
>
> Code: 0f 0b 42 00 e0 b5 96 e0 eb b7 90 8d 74 26 00 83 ec 18 89 7c
> bttv0: skipped frame. no signal? high irq latency?
>
> --
> Misha Nasledov
> [email protected]
> http://nasledov.com/misha/
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

2003-09-10 21:37:39

by Nuno Silva

[permalink] [raw]
Subject: Re: bttv bug

Hi!

Aaron Lehmann wrote:
> Can you reproduce it without the nvidia module and produce a call
> trace that doesn't include nvidia symbols?

Yes, and then try bttv patches from http://bytesex.org/bttv/

2.6.0's bttv driver is misbehaving in my setup for ages... Try bytesex's
patches and report back, please.

Regards,
Nuno Silva

>
> On Tue, Sep 09, 2003 at 11:41:58PM -0700, Misha Nasledov wrote:
>
>>Hi,
>>
>>After upgrading to -test5, my bt878 card ceased to function properly. My
>>kernel is tainted with the nvidia kernel module but I know for a fact that
>>bttv worked just fine not too long ago and I have not upgraded my nvidia
>>drivers since.
>>
>>I have the following message in my dmesg:



2003-09-12 02:43:14

by Misha Nasledov

[permalink] [raw]
Subject: Re: bttv bug

Hi,

I'd also like to mention that the FM radio component still seems to work fine
and that I get a strange error whenever I attempt to access /dev/video0:
(along with the Device or resource busy error)

tuner: TV freq (268435455.93) out of range (44-958)

On Thu, Sep 11, 2003 at 07:38:14PM -0700, Misha Nasledov wrote:
> It seems to work even with the nvidia module loaded, but once I start X, it
> stops working. I thought that perhaps the patch to the nvidia kernel module
> for -test5 was broken, so I used my older 2.6 nvidia kernel module source
> and replaced the call to kdev_val() with MINOR() but that still did not fix
> the problem. I can cat /dev/video0 before starting X, but afterwards it
> says "Device or resouce busy", even after I kill X.
--
Misha Nasledov
[email protected]
http://nasledov.com/misha/

2003-09-12 02:38:19

by Misha Nasledov

[permalink] [raw]
Subject: Re: bttv bug

Hi,

On Wed, Sep 10, 2003 at 10:37:49PM +0100, Nuno Silva wrote:
> Aaron Lehmann wrote:
> >Can you reproduce it without the nvidia module and produce a call
> >trace that doesn't include nvidia symbols?

It seems to work even with the nvidia module loaded, but once I start X, it
stops working. I thought that perhaps the patch to the nvidia kernel module
for -test5 was broken, so I used my older 2.6 nvidia kernel module source
and replaced the call to kdev_val() with MINOR() but that still did not fix
the problem. I can cat /dev/video0 before starting X, but afterwards it
says "Device or resouce busy", even after I kill X.

> Yes, and then try bttv patches from http://bytesex.org/bttv/
>
> 2.6.0's bttv driver is misbehaving in my setup for ages... Try bytesex's
> patches and report back, please.

I tried this set of patches and it didn't do anything for me either.

So am I pretty much on my own with this problem? Does anyone use a Bt878 card
with an nvidia card under 2.6? It's strange that it used to work just fine,
but after upgrading it stopped working. I might try downgrading later to
-test4, but it would be unfortunate to have to run an earlier kernel without
the VIA8237SATA chipset merged in =\

I read somewhere that Nvidia cards do not support the overlay extension, but
I had xawtv working just fine if I disabled Xv, and it worked even better if
I used grabdisplay.
--
Misha Nasledov
[email protected]
http://nasledov.com/misha/

2003-09-12 18:44:48

by Nuno Silva

[permalink] [raw]
Subject: Re: bttv bug

Hi!

Misha Nasledov wrote:

[..snip..]

>
> So am I pretty much on my own with this problem? Does anyone use a Bt878 card
> with an nvidia card under 2.6? It's strange that it used to work just fine,


I have these:
# lspci|grep Brook
00:09.0 Multimedia video controller: Brooktree Corporation Bt878 Video
Capture (rev 11)
00:09.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture
(rev 11)

And this card (hauppagge wintv) works fine with 2.4 but doesn't work (at
least for long...) in vanilla 2.6.0-test1 -> test3. I'll try a newer
kernel shortly :-)

I also have a nvidia card but I don't have any nvidia drivers installed.

One more note: in my setup I must use "NoMTRR":

Section "Screen"
Identifier "Default Screen"
Device "nVidia Corporation [NV15]"
Monitor "Generic Monitor"

Option "NoMTRR"
... etc...

Or I'll get screen corruption sooner or later.


Good luck,
Nuno Silva