All of lore.kernel.org
 help / color / mirror / Atom feed
* HVR-4000 DVB can't scan or tune (properly) with Xen
       [not found] <CAA7M+FD1mis7C1+cU0eCYZHhu96-B-g7_73FjC430fo4CHohvQ@mail.gmail.com>
@ 2011-11-13 18:47 ` jonathanjstevens
  2011-11-14 18:38   ` Konrad Rzeszutek Wilk
  0 siblings, 1 reply; 5+ messages in thread
From: jonathanjstevens @ 2011-11-13 18:47 UTC (permalink / raw)
  To: xen-devel

I've come across and issue and I think it may be Xen related. Hoping
you can help.

I'm trying to use a couple of HVR-4000 with my Xen server.

I'm running Fedora 16:

Linux mythtvtuner.home 3.1.0-7.fc16.x86_64 #1 SMP Tue Nov 1 21:10:48
UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

and the current packaged Xen is:

(XEN) Xen version 4.1.2 (mockbuild@phx2.fedoraproject.org) (gcc
version 4.6.1 20111003 (Red Hat 4.6.1-10) (GCC) ) Fri Oct 21 21:56:01
UTC 2011

When I boot without Xen the DVB PCI cards can tune and scan perfectly.
I also have a USB DVB unit, which can tune and scan regardless of
whether Xen is running. However when I try to scan and tune with the
PCI DVB cards it fails.

>From what I can tell the symptoms are exactly the same as in:

http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1786

I get the same "filter timeout" messages, and I also see similar
messages in dmesg

[   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts
[   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*

I'm running a higher kernel than in the bug resolution though.

Any help appreciated!

Regards,
Jon

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

* Re: HVR-4000 DVB can't scan or tune (properly) with Xen
  2011-11-13 18:47 ` HVR-4000 DVB can't scan or tune (properly) with Xen jonathanjstevens
@ 2011-11-14 18:38   ` Konrad Rzeszutek Wilk
  2011-11-15  0:52     ` jonathanjstevens
  0 siblings, 1 reply; 5+ messages in thread
From: Konrad Rzeszutek Wilk @ 2011-11-14 18:38 UTC (permalink / raw)
  To: jonathanjstevens@gmail.com; +Cc: xen-devel

On Sun, Nov 13, 2011 at 06:47:14PM +0000, jonathanjstevens@gmail.com wrote:
> I've come across and issue and I think it may be Xen related. Hoping
> you can help.
> 
> I'm trying to use a couple of HVR-4000 with my Xen server.
> 
> I'm running Fedora 16:
> 
> Linux mythtvtuner.home 3.1.0-7.fc16.x86_64 #1 SMP Tue Nov 1 21:10:48
> UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
> 
> and the current packaged Xen is:
> 
> (XEN) Xen version 4.1.2 (mockbuild@phx2.fedoraproject.org) (gcc
> version 4.6.1 20111003 (Red Hat 4.6.1-10) (GCC) ) Fri Oct 21 21:56:01
> UTC 2011

Excellent. Everything that is new.

> 
> When I boot without Xen the DVB PCI cards can tune and scan perfectly.
> I also have a USB DVB unit, which can tune and scan regardless of
> whether Xen is running. However when I try to scan and tune with the
> PCI DVB cards it fails.

OK, and you are _not_ passing it to a guest right?

> 
> >From what I can tell the symptoms are exactly the same as in:
> 
> http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1786
> 
> I get the same "filter timeout" messages, and I also see similar
> messages in dmesg
> 
> [   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts
> [   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*

Great. Can you do a couple of tests:

1). Boot your Linux machine with 'mem=3G' and see if that makes the issue
    disappear.

2). Tell me what is the 'scan' tool you use? Is it there a command
   line version of the tool that triggers this?

3). Or does this happend when you just load the module and it starts
   doing the IRQ loop detected' thingy?

> 
> I'm running a higher kernel than in the bug resolution though.
> 
> Any help appreciated!
> 
> Regards,
> Jon
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel

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

* Re: HVR-4000 DVB can't scan or tune (properly) with Xen
  2011-11-14 18:38   ` Konrad Rzeszutek Wilk
@ 2011-11-15  0:52     ` jonathanjstevens
  2011-11-15 14:31       ` Konrad Rzeszutek Wilk
  0 siblings, 1 reply; 5+ messages in thread
From: jonathanjstevens @ 2011-11-15  0:52 UTC (permalink / raw)
  To: xen-devel

>
> Excellent. Everything that is new.

Shiney. :)

>
>>
>> When I boot without Xen the DVB PCI cards can tune and scan perfectly.
>> I also have a USB DVB unit, which can tune and scan regardless of
>> whether Xen is running. However when I try to scan and tune with the
>> PCI DVB cards it fails.
>
> OK, and you are _not_ passing it to a guest right?

Indeed not, this is in dom0. I do not have IOMMU so my dvb stuff will
run in dom0.


>>
>> [   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts
>> [   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*
>
> Great. Can you do a couple of tests:

Certainly. However, first I will say that I have made the above
messages go away. I had been trying various boot options based on what
I had been reading on net. I was using irqpoll at the time that those
messages appeared. Removing irqpoll has stopped them from occurring.
Hopefully that is useful information in itself.

>
> 1). Boot your Linux machine with 'mem=3G' and see if that makes the issue
>    disappear.

I have tried mem=2G and 4G (not 3 but I will if you think it'll be different).
I have also been trying with ballooning disabled, and with dom0_mem=2G / 4G
I also tried swiotlb=65762
I have tried most combinations of the above - but not necessarily all.


>
> 2). Tell me what is the 'scan' tool you use? Is it there a command
>   line version of the tool that triggers this?
>
I've been using as many as I can try.
Mainly it's the F16 provided scandvb, which I think is just a renamed
dvbscan and also w_scan.
I've also tried mplayer, xine, kaffeine, and mythtv. I haven't got vlc
to compile yet...

I think I have a bit more information for you after today's hacking about.
First off there was a kernel update, so I'm now at

Linux mythtvtuner.home 3.1.1-1.fc16.x86_64 #1 SMP Fri Nov 11 21:47:56
UTC 2011 x86_64 x86_64 x86_64 GNU/Linux


>From what I can see I think in fact the tuning works OK, but there is
some sort of issue getting at the streams once tuned.
e.g. tzap will get a lock OK
> tzap -a 1 -f 1 -d 1 -c ~/tzap.channels.conf "BBC ONE(BBC)"
using '/dev/dvb/adapter1/frontend1' and '/dev/dvb/adapter1/demux1'
tuning to 650000000 Hz
video pid 0x0065, audio pid 0x0066
status 01 | signal 5151 | snr 8000 | ber 00003fff | unc 00000000 |
status 1f | signal 4e4e | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 4e4e | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK


I don't know if the following is useful?

root@mythtvtuner jon]# strace -f -v scandvb -a 1 -f1 -d 0 -5 -v -v -v
~jon/dvbscan.channels.conf
execve("/usr/bin/scandvb", ["scandvb", "-a", "1", "-f1", "-d", "0",
"-5", "-v", "-v", "-v", "/home/jon/dvbscan.channels.conf"],
["XDG_SESSION_ID=69", "HOSTNAME=mythtvtuner.home", "SHELL=/bin/bash",
"TERM=xterm", "HISTSIZE=1000", "SSH_CLIENT=192.168.2.179 48391 2"...,
"SSH_TTY=/dev/pts/7", "USER=jon",
"LS_COLORS=rs=0:di=01;34:ln=01;36"...,
"PATH=/usr/lib64/ccache:/usr/loca"..., "MAIL=/var/spool/mail/jon",
"PWD=/home/jon", "XMODIFIERS=@im=none", "LANG=en_US.UTF-8",
"KDE_IS_PRELINKED=1", "KDEDIRS=/usr", "HISTCONTROL=ignoredups",
"HOME=/root", "SHLVL=2", "LOGNAME=jon", "CVS_RSH=ssh",
"SSH_CONNECTION=192.168.2.179 483"...,
"LESSOPEN=||/usr/bin/lesspipe.sh "...,
"XDG_RUNTIME_DIR=/run/user/jon", "_=/usr/bin/strace"]) = 0
brk(0)                                  = 0x20fe000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7ff5ccd7a000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(253, 1), st_ino=132752, st_mode=S_IFREG|0644,
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=224,
st_size=112482, st_atime=2011/11/14-12:23:08,
st_mtime=2011/11/14-12:23:06, st_ctime=2011/11/14-12:23:06}) = 0
mmap(NULL, 112482, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ff5ccd5e000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\27\2\2008\0\0\0"...,
832) = 832
fstat(3, {st_dev=makedev(253, 1), st_ino=157705, st_mode=S_IFREG|0755,
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=4032,
st_size=2063512, st_atime=2011/11/14-23:30:01,
st_mtime=2011/10/26-20:57:26, st_ctime=2011/11/09-23:29:49}) = 0
mmap(0x3880000000, 3884344, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3880000000
mprotect(0x38801aa000, 2097152, PROT_NONE) = 0
mmap(0x38803aa000, 24576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1aa000) = 0x38803aa000
mmap(0x38803b0000, 17720, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x38803b0000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7ff5ccd5d000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7ff5ccd5c000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7ff5ccd5b000
arch_prctl(ARCH_SET_FS, 0x7ff5ccd5c700) = 0
mprotect(0x38803aa000, 16384, PROT_READ) = 0
mprotect(0x387fe21000, 4096, PROT_READ) = 0
munmap(0x7ff5ccd5e000, 112482)          = 0
write(2, "scanning /home/jon/dvbscan.chann"..., 41scanning
/home/jon/dvbscan.channels.conf
) = 41
write(2, "using '/dev/dvb/adapter1/fronten"..., 67using
'/dev/dvb/adapter1/frontend1' and '/dev/dvb/adapter1/demux0'
) = 67
open("/dev/dvb/adapter1/frontend1", O_RDWR) = 3
ioctl(3, FE_GET_INFO, 0x60a640)         = 0
rt_sigaction(SIGINT, {0x403300, [INT], SA_RESTORER|SA_RESTART,
0x3880036320}, {SIG_DFL, [], 0}, 8) = 0
brk(0)                                  = 0x20fe000
brk(0x211f000)                          = 0x211f000
brk(0)                                  = 0x211f000
open("/home/jon/dvbscan.channels.conf", O_RDONLY) = 4
fstat(4, {st_dev=makedev(253, 16), st_ino=1704027,
st_mode=S_IFREG|0664, st_nlink=1, st_uid=1000, st_gid=1000,
st_blksize=4096, st_blocks=8, st_size=1028,
st_atime=2011/11/14-15:05:46, st_mtime=2011/11/10-23:05:38,
st_ctime=2011/11/10-23:05:38}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7ff5ccd79000
read(4, "#-------------------------------"..., 4096) = 1028
write(2, "initial transponder 650000000 0 "..., 44initial transponder
650000000 0 9 9 6 2 4 4
) = 44
write(2, "initial transponder 754000000 0 "..., 44initial transponder
754000000 0 3 9 3 1 0 0
) = 44
write(2, "initial transponder 794000000 0 "..., 44initial transponder
794000000 0 2 9 3 1 0 0
) = 44
write(2, "initial transponder 738000000 0 "..., 44initial transponder
738000000 0 2 9 3 1 0 0
) = 44
write(2, "initial transponder 690000000 0 "..., 44initial transponder
690000000 0 2 9 3 1 0 0
) = 44
write(2, "initial transponder 722000000 0 "..., 44initial transponder
722000000 0 2 9 3 1 0 0
) = 44
write(2, "initial transponder 706000000 0 "..., 44initial transponder
706000000 0 9 9 6 2 4 4
) = 44
write(2, "initial transponder 842000000 0 "..., 44initial transponder
842000000 0 9 9 6 2 4 4
) = 44
read(4, "", 4096)                       = 0
close(4)                                = 0
munmap(0x7ff5ccd79000, 4096)            = 0
write(2, ">>> tune to: ", 13>>> tune to: )           = 13
write(2, "650000000:", 10650000000:)              = 10
write(2, "INVERSION_AUTO:", 15INVERSION_AUTO:)         = 15
write(2, "BANDWIDTH_8_MHZ:", 16BANDWIDTH_8_MHZ:)        = 16
write(2, "FEC_AUTO:", 9FEC_AUTO:)                = 9
write(2, "FEC_AUTO:", 9FEC_AUTO:)                = 9
write(2, "QAM_AUTO:", 9QAM_AUTO:)                = 9
write(2, "TRANSMISSION_MODE_AUTO:", 23TRANSMISSION_MODE_AUTO:) = 23
write(2, "GUARD_INTERVAL_AUTO:", 20GUARD_INTERVAL_AUTO:)    = 20
write(2, "HIERARCHY_AUTO", 14HIERARCHY_AUTO)          = 14
write(2, "\n", 1
)                       = 1
ioctl(3, FE_SET_FRONTEND, 0x7fffe82681c0) = 0
nanosleep({0, 200000000}, NULL)         = 0
ioctl(3, FE_READ_STATUS, 0x7fffe82681ec) = 0
write(2, ">>> tuning status == 0x01\n", 26>>> tuning status == 0x01
) = 26
nanosleep({0, 200000000}, NULL)         = 0
ioctl(3, FE_READ_STATUS, 0x7fffe82681ec) = 0
write(2, ">>> tuning status == 0x1f\n", 26>>> tuning status == 0x1f
) = 26
open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 4
ioctl(4, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 5
ioctl(5, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 6
ioctl(6, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
events=POLLIN}], 3, 1000) = 0 (Timeout)
write(2, "WARNING: filter timeout pid 0x00"..., 35WARNING: filter
timeout pid 0x0011
) = 35
ioctl(5, DMX_STOP, 0x38803b0a80)        = 0
close(5)                                = 0
poll([{fd=6, events=POLLIN}, {fd=4, events=POLLIN}], 2, 1000) = 0 (Timeout)
write(2, "WARNING: filter timeout pid 0x00"..., 35WARNING: filter
timeout pid 0x0000
) = 35
ioctl(4, DMX_STOP, 0x38803b0a80)        = 0
close(4)                                = 0
poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
poll([{fd=6, events=POLLIN}], 1, 1000^C <unfinished ...>

etc...

Occasionally the POLLIN doesn't timeout (since kernel upgrade), but
the data can't seem to be interpreted (my guess) and I can't find what
makes this occur (and I can't seem to make it happen right now
annoyingly!).
I don't want to bombard you with unwanted diags but can capture more
fully similar to above if useful?



> 3). Or does this happend when you just load the module and it starts
>   doing the IRQ loop detected' thingy?

Not entirely sure, can recreate by turning irqpoll back on and testing
if you want? From memory there were very few of the
>> [   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts

but lots and lots of:
>> [   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*


Thanks very much for looking into this.

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

* Re: HVR-4000 DVB can't scan or tune (properly) with Xen
  2011-11-15  0:52     ` jonathanjstevens
@ 2011-11-15 14:31       ` Konrad Rzeszutek Wilk
  2011-11-15 15:59         ` jonathanjstevens
  0 siblings, 1 reply; 5+ messages in thread
From: Konrad Rzeszutek Wilk @ 2011-11-15 14:31 UTC (permalink / raw)
  To: jonathanjstevens@gmail.com; +Cc: xen-devel

On Tue, Nov 15, 2011 at 12:52:56AM +0000, jonathanjstevens@gmail.com wrote:
> >
> > Excellent. Everything that is new.
> 
> Shiney. :)
> 
> >
> >>
> >> When I boot without Xen the DVB PCI cards can tune and scan perfectly.
> >> I also have a USB DVB unit, which can tune and scan regardless of
> >> whether Xen is running. However when I try to scan and tune with the
> >> PCI DVB cards it fails.
> >
> > OK, and you are _not_ passing it to a guest right?
> 
> Indeed not, this is in dom0. I do not have IOMMU so my dvb stuff will
> run in dom0.
> 
> 
> >>
> >> [   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts
> >> [   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*
> >
> > Great. Can you do a couple of tests:
> 
> Certainly. However, first I will say that I have made the above
> messages go away. I had been trying various boot options based on what
> I had been reading on net. I was using irqpoll at the time that those
> messages appeared. Removing irqpoll has stopped them from occurring.
> Hopefully that is useful information in itself.

Why did pick irqpoll? Was there something in the past that was hanging on your box.

> 
> >
> > 1). Boot your Linux machine with 'mem=3G' and see if that makes the issue
> >    disappear.
> 
> I have tried mem=2G and 4G (not 3 but I will if you think it'll be different).
> I have also been trying with ballooning disabled, and with dom0_mem=2G / 4G
> I also tried swiotlb=65762
> I have tried most combinations of the above - but not necessarily all.

And all fail? Was this with the irqpoll option?
Is this a two socket box?

> 
> 
> >
> > 2). Tell me what is the 'scan' tool you use? Is it there a command
> >   line version of the tool that triggers this?
> >
> I've been using as many as I can try.
> Mainly it's the F16 provided scandvb, which I think is just a renamed
> dvbscan and also w_scan.
> I've also tried mplayer, xine, kaffeine, and mythtv. I haven't got vlc
> to compile yet...

rpmfusion has a version of it built for F16.

> 
> I think I have a bit more information for you after today's hacking about.
> First off there was a kernel update, so I'm now at
> 
> Linux mythtvtuner.home 3.1.1-1.fc16.x86_64 #1 SMP Fri Nov 11 21:47:56
> UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
> 
> 
> >From what I can see I think in fact the tuning works OK, but there is
> some sort of issue getting at the streams once tuned.
> e.g. tzap will get a lock OK
> > tzap -a 1 -f 1 -d 1 -c ~/tzap.channels.conf "BBC ONE(BBC)"
> using '/dev/dvb/adapter1/frontend1' and '/dev/dvb/adapter1/demux1'
> tuning to 650000000 Hz
> video pid 0x0065, audio pid 0x0066
> status 01 | signal 5151 | snr 8000 | ber 00003fff | unc 00000000 |
> status 1f | signal 4e4e | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK
> status 1f | signal 4e4e | snr ffff | ber 00000000 | unc 00000000 | FE_HAS_LOCK
> 
> 
> I don't know if the following is useful?
> 
> root@mythtvtuner jon]# strace -f -v scandvb -a 1 -f1 -d 0 -5 -v -v -v
> ~jon/dvbscan.channels.conf
> execve("/usr/bin/scandvb", ["scandvb", "-a", "1", "-f1", "-d", "0",
> "-5", "-v", "-v", "-v", "/home/jon/dvbscan.channels.conf"],
> ["XDG_SESSION_ID=69", "HOSTNAME=mythtvtuner.home", "SHELL=/bin/bash",
> "TERM=xterm", "HISTSIZE=1000", "SSH_CLIENT=192.168.2.179 48391 2"...,
> "SSH_TTY=/dev/pts/7", "USER=jon",
> "LS_COLORS=rs=0:di=01;34:ln=01;36"...,
> "PATH=/usr/lib64/ccache:/usr/loca"..., "MAIL=/var/spool/mail/jon",
> "PWD=/home/jon", "XMODIFIERS=@im=none", "LANG=en_US.UTF-8",
> "KDE_IS_PRELINKED=1", "KDEDIRS=/usr", "HISTCONTROL=ignoredups",
> "HOME=/root", "SHLVL=2", "LOGNAME=jon", "CVS_RSH=ssh",
> "SSH_CONNECTION=192.168.2.179 483"...,
> "LESSOPEN=||/usr/bin/lesspipe.sh "...,
> "XDG_RUNTIME_DIR=/run/user/jon", "_=/usr/bin/strace"]) = 0
> brk(0)                                  = 0x20fe000
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x7ff5ccd7a000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
> open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
> fstat(3, {st_dev=makedev(253, 1), st_ino=132752, st_mode=S_IFREG|0644,
> st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=224,
> st_size=112482, st_atime=2011/11/14-12:23:08,
> st_mtime=2011/11/14-12:23:06, st_ctime=2011/11/14-12:23:06}) = 0
> mmap(NULL, 112482, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ff5ccd5e000
> close(3)                                = 0
> open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
> read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\27\2\2008\0\0\0"...,
> 832) = 832
> fstat(3, {st_dev=makedev(253, 1), st_ino=157705, st_mode=S_IFREG|0755,
> st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=4032,
> st_size=2063512, st_atime=2011/11/14-23:30:01,
> st_mtime=2011/10/26-20:57:26, st_ctime=2011/11/09-23:29:49}) = 0
> mmap(0x3880000000, 3884344, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3880000000
> mprotect(0x38801aa000, 2097152, PROT_NONE) = 0
> mmap(0x38803aa000, 24576, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1aa000) = 0x38803aa000
> mmap(0x38803b0000, 17720, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x38803b0000
> close(3)                                = 0
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x7ff5ccd5d000
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x7ff5ccd5c000
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x7ff5ccd5b000
> arch_prctl(ARCH_SET_FS, 0x7ff5ccd5c700) = 0
> mprotect(0x38803aa000, 16384, PROT_READ) = 0
> mprotect(0x387fe21000, 4096, PROT_READ) = 0
> munmap(0x7ff5ccd5e000, 112482)          = 0
> write(2, "scanning /home/jon/dvbscan.chann"..., 41scanning
> /home/jon/dvbscan.channels.conf
> ) = 41
> write(2, "using '/dev/dvb/adapter1/fronten"..., 67using
> '/dev/dvb/adapter1/frontend1' and '/dev/dvb/adapter1/demux0'
> ) = 67
> open("/dev/dvb/adapter1/frontend1", O_RDWR) = 3
> ioctl(3, FE_GET_INFO, 0x60a640)         = 0
> rt_sigaction(SIGINT, {0x403300, [INT], SA_RESTORER|SA_RESTART,
> 0x3880036320}, {SIG_DFL, [], 0}, 8) = 0
> brk(0)                                  = 0x20fe000
> brk(0x211f000)                          = 0x211f000
> brk(0)                                  = 0x211f000
> open("/home/jon/dvbscan.channels.conf", O_RDONLY) = 4
> fstat(4, {st_dev=makedev(253, 16), st_ino=1704027,
> st_mode=S_IFREG|0664, st_nlink=1, st_uid=1000, st_gid=1000,
> st_blksize=4096, st_blocks=8, st_size=1028,
> st_atime=2011/11/14-15:05:46, st_mtime=2011/11/10-23:05:38,
> st_ctime=2011/11/10-23:05:38}) = 0
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x7ff5ccd79000
> read(4, "#-------------------------------"..., 4096) = 1028
> write(2, "initial transponder 650000000 0 "..., 44initial transponder
> 650000000 0 9 9 6 2 4 4
> ) = 44
> write(2, "initial transponder 754000000 0 "..., 44initial transponder
> 754000000 0 3 9 3 1 0 0
> ) = 44
> write(2, "initial transponder 794000000 0 "..., 44initial transponder
> 794000000 0 2 9 3 1 0 0
> ) = 44
> write(2, "initial transponder 738000000 0 "..., 44initial transponder
> 738000000 0 2 9 3 1 0 0
> ) = 44
> write(2, "initial transponder 690000000 0 "..., 44initial transponder
> 690000000 0 2 9 3 1 0 0
> ) = 44
> write(2, "initial transponder 722000000 0 "..., 44initial transponder
> 722000000 0 2 9 3 1 0 0
> ) = 44
> write(2, "initial transponder 706000000 0 "..., 44initial transponder
> 706000000 0 9 9 6 2 4 4
> ) = 44
> write(2, "initial transponder 842000000 0 "..., 44initial transponder
> 842000000 0 9 9 6 2 4 4
> ) = 44
> read(4, "", 4096)                       = 0
> close(4)                                = 0
> munmap(0x7ff5ccd79000, 4096)            = 0
> write(2, ">>> tune to: ", 13>>> tune to: )           = 13
> write(2, "650000000:", 10650000000:)              = 10
> write(2, "INVERSION_AUTO:", 15INVERSION_AUTO:)         = 15
> write(2, "BANDWIDTH_8_MHZ:", 16BANDWIDTH_8_MHZ:)        = 16
> write(2, "FEC_AUTO:", 9FEC_AUTO:)                = 9
> write(2, "FEC_AUTO:", 9FEC_AUTO:)                = 9
> write(2, "QAM_AUTO:", 9QAM_AUTO:)                = 9
> write(2, "TRANSMISSION_MODE_AUTO:", 23TRANSMISSION_MODE_AUTO:) = 23
> write(2, "GUARD_INTERVAL_AUTO:", 20GUARD_INTERVAL_AUTO:)    = 20
> write(2, "HIERARCHY_AUTO", 14HIERARCHY_AUTO)          = 14
> write(2, "\n", 1
> )                       = 1
> ioctl(3, FE_SET_FRONTEND, 0x7fffe82681c0) = 0
> nanosleep({0, 200000000}, NULL)         = 0
> ioctl(3, FE_READ_STATUS, 0x7fffe82681ec) = 0
> write(2, ">>> tuning status == 0x01\n", 26>>> tuning status == 0x01
> ) = 26
> nanosleep({0, 200000000}, NULL)         = 0
> ioctl(3, FE_READ_STATUS, 0x7fffe82681ec) = 0
> write(2, ">>> tuning status == 0x1f\n", 26>>> tuning status == 0x1f
> ) = 26
> open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 4
> ioctl(4, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
> open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 5
> ioctl(5, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
> open("/dev/dvb/adapter1/demux0", O_RDWR|O_NONBLOCK) = 6
> ioctl(6, DMX_SET_FILTER, 0x7fffe8266fc0) = 0
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> poll([{fd=6, events=POLLIN}, {fd=5, events=POLLIN}, {fd=4,
> events=POLLIN}], 3, 1000) = 0 (Timeout)
> write(2, "WARNING: filter timeout pid 0x00"..., 35WARNING: filter
> timeout pid 0x0011
> ) = 35
> ioctl(5, DMX_STOP, 0x38803b0a80)        = 0
> close(5)                                = 0
> poll([{fd=6, events=POLLIN}, {fd=4, events=POLLIN}], 2, 1000) = 0 (Timeout)
> write(2, "WARNING: filter timeout pid 0x00"..., 35WARNING: filter
> timeout pid 0x0000
> ) = 35
> ioctl(4, DMX_STOP, 0x38803b0a80)        = 0
> close(4)                                = 0
> poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
> poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
> poll([{fd=6, events=POLLIN}], 1, 1000)  = 0 (Timeout)
> poll([{fd=6, events=POLLIN}], 1, 1000^C <unfinished ...>
> 
> etc...
> 
> Occasionally the POLLIN doesn't timeout (since kernel upgrade), but
> the data can't seem to be interpreted (my guess) and I can't find what
> makes this occur (and I can't seem to make it happen right now
> annoyingly!).
> I don't want to bombard you with unwanted diags but can capture more
> fully similar to above if useful?
> 
> 
> 
> > 3). Or does this happend when you just load the module and it starts
> >   doing the IRQ loop detected' thingy?
> 
> Not entirely sure, can recreate by turning irqpoll back on and testing
> if you want? From memory there were very few of the
> >> [   26.572693] cx88[1]/1: IRQ loop detected, disabling interrupts
> 
> but lots and lots of:
> >> [   26.574810] cx88[1]: irq aud [0x1001] dn_risci1* dn_sync*


Well, that one is the worry some one. It reads as if it can't get the
interrupts fast enough, which would be worrysome.

I think I need to look at the code itself to get a better understanding
of where that 'irq aud ..' is.


Are there cheap versions of these DVB cards? I've only Hauppage PV-150 which
works for me, but that is not a DVB type card.

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

* Re: HVR-4000 DVB can't scan or tune (properly) with Xen
  2011-11-15 14:31       ` Konrad Rzeszutek Wilk
@ 2011-11-15 15:59         ` jonathanjstevens
  0 siblings, 0 replies; 5+ messages in thread
From: jonathanjstevens @ 2011-11-15 15:59 UTC (permalink / raw)
  To: xen-devel

>
> Why did pick irqpoll? Was there something in the past that was hanging on your box.

It was mentioned in one of the possibly related bug reports I came
across when trying to figure out what was wrong. Purely added to try
to solve the issue in hand.

>> > 1). Boot your Linux machine with 'mem=3G' and see if that makes the issue
>> >    disappear.
>>
>> I have tried mem=2G and 4G (not 3 but I will if you think it'll be different).
>> I have also been trying with ballooning disabled, and with dom0_mem=2G / 4G
>> I also tried swiotlb=65762
>> I have tried most combinations of the above - but not necessarily all.
>
> And all fail? Was this with the irqpoll option?
> Is this a two socket box?

Yes. Yes.
No.

> rpmfusion has a version of it built for F16.
Thanks.

>
>
> Well, that one is the worry some one. It reads as if it can't get the
> interrupts fast enough, which would be worrysome.
>
> I think I need to look at the code itself to get a better understanding
> of where that 'irq aud ..' is.
>
>
> Are there cheap versions of these DVB cards? I've only Hauppage PV-150 which
> works for me, but that is not a DVB type card.
>

Hrm.. Not sure about that. I have another machine here which I might
be able to setup on a DMZ (I work in networks so the home net is
fairly well defended...) and give you remote (ssh) access to. I've got
a spare drive so I could install a fresh system on and I could put one
of the HVR-4000 cards in there. It's reasonably similar hardware, so
you'd be welcome to use and abuse it as a test bed if you like. Would
save you having to buy a card and I'd feel like I was helping :) Would
that be useful? I guess it wouldn't do any harm to try this on another
motherboard/CPU anyway.... I've seen "Sandybridge" cause some odd
issues...

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

end of thread, other threads:[~2011-11-15 15:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <CAA7M+FD1mis7C1+cU0eCYZHhu96-B-g7_73FjC430fo4CHohvQ@mail.gmail.com>
2011-11-13 18:47 ` HVR-4000 DVB can't scan or tune (properly) with Xen jonathanjstevens
2011-11-14 18:38   ` Konrad Rzeszutek Wilk
2011-11-15  0:52     ` jonathanjstevens
2011-11-15 14:31       ` Konrad Rzeszutek Wilk
2011-11-15 15:59         ` jonathanjstevens

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.