* Videotext application crashes the kernel due to DVB-demux patch @ 2010-02-01 9:56 Chicken Shack 2010-02-01 12:41 ` Andy Walls 2010-02-01 13:02 ` Videotext application crashes the kernel due to DVB-demux patch Mauro Carvalho Chehab 0 siblings, 2 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-01 9:56 UTC (permalink / raw) To: linux-media; +Cc: Mauro Carvalho Chehab, torvalds, akpm Hi, here is a link to a patch which breaks backwards compatibility for a teletext software called alevt-dvb. http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html The kernel patch was introduced with kernel 2.6.32-rc1. It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its author, Andreas Oberritter. Previous help calls, not only on this list, have been ignored for reasons that I do not know. Even distro maintainers have given up and removed the DVB implementation of alevt from their distro list. Is that really what things are up to? To pull through an API update by kernel patch, but simply dive off with the usual "Sorry, but I don't have no time" when objections or problems arise? What the hell is going on in those peoples' minds? It seems to me that the following disclaimer is worth nothing: "If anyone has any objections, please let us know by sending a message to: Linux Media Mailing List <linux-me...@vger.kernel.org>" Volunteers welcome! Who please consacres some time and DVB competence to give the appropriate hints please? Regards CS P. S.: This is how the kernel crash looks like: brian:~# alevt alevt: SDT: service_id 0xcf24 not in PAT sid:pmtpid:ttpid:type:provider:name:language:texttype:magazine:page 28006:100:130:1:ZDFvision:ZDF:lang=deu:type=1:magazine=1:page= 0 28011:600:630:1:ZDFvision:ZDFinfokanal:lang=deu:type=1:magazine=1:page= 0 28014:650:630:1:ZDFvision:zdf_neo:lang=deu:type=1:magazine=1:page= 0 28016:1100:630:1:ZDFvision:ZDFtheaterkanal:lang=deu:type=1:magazine=1:page= 0 28007:200:230:1:ZDFvision:3sat:lang=deu:type=1:magazine=1:page= 0 28008:300:330:1:ZDFvision:KiKa:lang=deu:type=1:magazine=1:page= 0 28017:411:8191:2:ZDFvision:DRadio Wissen:lang=:type=0:magazine=0:page= 0 28012:700:8191:2:ZDFvision:DKULTUR:lang=:type=0:magazine=0:page= 0 28013:800:8191:2:ZDFvision:DLF:lang=:type=0:magazine=0:page= 0 Using: Service ID = 28006 ; PMT PID = 100 ; TXT PID = 130 ; Service type = 1 ; Provider Name = ZDFvision ; Service name = ZDF ; language = deu ; Text type = 1 ; Text Magazine = 1 ; Text page = 0 alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) Getötet brian:~# Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563492] last sysfs file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 task=e7915be0 task.ti=e7934000) Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563592] Stack: Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563622] Call Trace: Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 50 04 89 Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 [dvb_core] SS:ESP 0068:e7935f58 Message from syslogd@brian at Jan 31 19:52:33 ... kernel:[ 116.563706] CR2: 0000000000000000 PLEASE DO NOT IGNORE THIS MAIL! ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-01 9:56 Videotext application crashes the kernel due to DVB-demux patch Chicken Shack @ 2010-02-01 12:41 ` Andy Walls 2010-02-02 2:00 ` Andy Walls 2010-02-01 13:02 ` Videotext application crashes the kernel due to DVB-demux patch Mauro Carvalho Chehab 1 sibling, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-01 12:41 UTC (permalink / raw) To: Chicken Shack; +Cc: linux-media, Mauro Carvalho Chehab, torvalds, akpm On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > Hi, > > here is a link to a patch which breaks backwards compatibility for a > teletext software called alevt-dvb. > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > The kernel patch was introduced with kernel 2.6.32-rc1. > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > author, Andreas Oberritter. > > Previous help calls, not only on this list, have been ignored for > reasons that I do not know. > Even distro maintainers have given up and removed the DVB implementation > of alevt from their distro list. > > Is that really what things are up to? > To pull through an API update by kernel patch, but simply dive off with > the usual "Sorry, but I don't have no time" when objections or problems > arise? I have close to 0 time for this (I'm a volunteer who doesn't get paid for linux work *at all*), but I will look into the problem for you. > What the hell is going on in those peoples' minds? > > It seems to me that the following disclaimer is worth nothing: > > "If anyone has any objections, please let us know by sending a message > to: Linux Media Mailing List <linux-me...@vger.kernel.org>" > > Volunteers welcome! Who please consacres some time and DVB competence to > give the appropriate hints please? > > Regards > > CS > > P. S.: This is how the kernel crash looks like: The information below can get me started. Could you please provide whole Ooops from the output dmesg or from your /var/log/messages file? I'll try to look at this tonight. Regards, Andy > brian:~# alevt > alevt: SDT: service_id 0xcf24 not in PAT > > sid:pmtpid:ttpid:type:provider:name:language:texttype:magazine:page > > 28006:100:130:1:ZDFvision:ZDF:lang=deu:type=1:magazine=1:page= 0 > 28011:600:630:1:ZDFvision:ZDFinfokanal:lang=deu:type=1:magazine=1:page= > 0 > 28014:650:630:1:ZDFvision:zdf_neo:lang=deu:type=1:magazine=1:page= 0 > 28016:1100:630:1:ZDFvision:ZDFtheaterkanal:lang=deu:type=1:magazine=1:page= 0 > 28007:200:230:1:ZDFvision:3sat:lang=deu:type=1:magazine=1:page= 0 > 28008:300:330:1:ZDFvision:KiKa:lang=deu:type=1:magazine=1:page= 0 > 28017:411:8191:2:ZDFvision:DRadio Wissen:lang=:type=0:magazine=0:page= > 0 > 28012:700:8191:2:ZDFvision:DKULTUR:lang=:type=0:magazine=0:page= 0 > 28013:800:8191:2:ZDFvision:DLF:lang=:type=0:magazine=0:page= 0 > > Using: Service ID = 28006 ; PMT PID = 100 ; TXT PID = 130 ; > Service type = 1 ; Provider Name = ZDFvision ; Service name = ZDF ; > language = deu ; Text type = 1 ; Text Magazine = 1 ; Text page = 0 > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > Getötet > brian:~# > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563492] last sysfs > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > task=e7915be0 task.ti=e7934000) > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563592] Stack: > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563622] Call Trace: > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > 50 04 89 > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > [dvb_core] SS:ESP 0068:e7935f58 > > Message from syslogd@brian at Jan 31 19:52:33 ... > kernel:[ 116.563706] CR2: 0000000000000000 > > PLEASE DO NOT IGNORE THIS MAIL! > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-01 12:41 ` Andy Walls @ 2010-02-02 2:00 ` Andy Walls 2010-02-02 9:11 ` Chicken Shack 0 siblings, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-02 2:00 UTC (permalink / raw) To: Chicken Shack; +Cc: linux-media, Mauro Carvalho Chehab, torvalds, akpm On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > Hi, > > > > here is a link to a patch which breaks backwards compatibility for a > > teletext software called alevt-dvb. > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > author, Andreas Oberritter. > > > > Regards > > > > CS > > > > P. S.: This is how the kernel crash looks like: > > The information below can get me started. Could you please provide > whole Ooops from the output dmesg or from your /var/log/messages file? > > I'll try to look at this tonight. > > Regards, > Andy > > > brian:~# alevt > > alevt: SDT: service_id 0xcf24 not in PAT > > > > sid:pmtpid:ttpid:type:provider:name:language:texttype:magazine:page > > > > 28006:100:130:1:ZDFvision:ZDF:lang=deu:type=1:magazine=1:page= 0 > > 28011:600:630:1:ZDFvision:ZDFinfokanal:lang=deu:type=1:magazine=1:page= > > 0 > > 28014:650:630:1:ZDFvision:zdf_neo:lang=deu:type=1:magazine=1:page= 0 > > 28016:1100:630:1:ZDFvision:ZDFtheaterkanal:lang=deu:type=1:magazine=1:page= 0 > > 28007:200:230:1:ZDFvision:3sat:lang=deu:type=1:magazine=1:page= 0 > > 28008:300:330:1:ZDFvision:KiKa:lang=deu:type=1:magazine=1:page= 0 > > 28017:411:8191:2:ZDFvision:DRadio Wissen:lang=:type=0:magazine=0:page= > > 0 > > 28012:700:8191:2:ZDFvision:DKULTUR:lang=:type=0:magazine=0:page= 0 > > 28013:800:8191:2:ZDFvision:DLF:lang=:type=0:magazine=0:page= 0 > > > > Using: Service ID = 28006 ; PMT PID = 100 ; TXT PID = 130 ; > > Service type = 1 ; Provider Name = ZDFvision ; Service name = ZDF ; > > language = deu ; Text type = 1 ; Text Magazine = 1 ; Text page = 0 > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > Getötet > > brian:~# > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563492] last sysfs > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > task=e7915be0 task.ti=e7934000) > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563592] Stack: > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563622] Call Trace: > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > 50 04 89 > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > [dvb_core] SS:ESP 0068:e7935f58 > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > kernel:[ 116.563706] CR2: 0000000000000000 I don't have a 32 bti machine set up to compile the module and compare the disassembly directly. However, the kernel code above disassembles to this, and is supposedly in dvb_demux_release() but things have been inlined by the compiler: 1c: 8d 56 78 lea 0x78(%esi),%edx 1f: 89 54 24 04 mov %edx,0x4(%esp) 23: 89 d0 mov %edx,%eax 25: e8 e4 da 4c c8 call 0xc84cdb0e 2a: 89 f0 mov %esi,%eax 2c: e8 31 ff ff ff call 0xffffff62 (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here %esi holds dmxdevfilter) 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) 35: 76 73 jbe 0xaa return 0; 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) 3b: 75 49 jne 0x86 (dvb_dmxdev_delete_pids() appears to be inlined starting here %esi still holds dmxdevfilter) 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above 46: 8d 58 f8 lea -0x8(%eax),%ebx 49: 8d 7e 04 lea 0x4(%esi),%edi 4c: eb 28 jmp 0x76 4e: 8b 41 08 mov 0x8(%ecx),%eax 51: 8b 51 0c mov 0xc(%ecx),%edx 54: 89 50 04 mov %edx,0x4(%eax) So there is something wrong with the list manipulations or, if needed, locking around the the list manipulations of the list that was introduced in the patch you identified as the problem. That is what is causing the Ooops on close(). It will take a some more scrutiny to see what exactly is wrong. There also may be another different problem. I note that alevt outputs this perror() message: alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) There may possibly have been an unintended change in ioctl() semantics with the patch. I have not investigated this at all yet. That's all I have time for tonight. The soonest I will be able to give more attention to this is on Wednesday evening. Regards, Andy ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-02 2:00 ` Andy Walls @ 2010-02-02 9:11 ` Chicken Shack 2010-02-02 12:52 ` Andy Walls 0 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-02 9:11 UTC (permalink / raw) To: Andy Walls; +Cc: linux-media, Mauro Carvalho Chehab, torvalds, akpm Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > Hi, > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > teletext software called alevt-dvb. > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > author, Andreas Oberritter. > > > > > > > Regards > > > > > > CS > > > > > > P. S.: This is how the kernel crash looks like: > > > > The information below can get me started. Could you please provide > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > I'll try to look at this tonight. > > > > Regards, > > Andy > > > > > brian:~# alevt > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > sid:pmtpid:ttpid:type:provider:name:language:texttype:magazine:page > > > > > > 28006:100:130:1:ZDFvision:ZDF:lang=deu:type=1:magazine=1:page= 0 > > > 28011:600:630:1:ZDFvision:ZDFinfokanal:lang=deu:type=1:magazine=1:page= > > > 0 > > > 28014:650:630:1:ZDFvision:zdf_neo:lang=deu:type=1:magazine=1:page= 0 > > > 28016:1100:630:1:ZDFvision:ZDFtheaterkanal:lang=deu:type=1:magazine=1:page= 0 > > > 28007:200:230:1:ZDFvision:3sat:lang=deu:type=1:magazine=1:page= 0 > > > 28008:300:330:1:ZDFvision:KiKa:lang=deu:type=1:magazine=1:page= 0 > > > 28017:411:8191:2:ZDFvision:DRadio Wissen:lang=:type=0:magazine=0:page= > > > 0 > > > 28012:700:8191:2:ZDFvision:DKULTUR:lang=:type=0:magazine=0:page= 0 > > > 28013:800:8191:2:ZDFvision:DLF:lang=:type=0:magazine=0:page= 0 > > > > > > Using: Service ID = 28006 ; PMT PID = 100 ; TXT PID = 130 ; > > > Service type = 1 ; Provider Name = ZDFvision ; Service name = ZDF ; > > > language = deu ; Text type = 1 ; Text Magazine = 1 ; Text page = 0 > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > Getötet > > > brian:~# > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563492] last sysfs > > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > > task=e7915be0 task.ti=e7934000) > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563592] Stack: > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563622] Call Trace: > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > > 50 04 89 > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > > [dvb_core] SS:ESP 0068:e7935f58 > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > kernel:[ 116.563706] CR2: 0000000000000000 > > I don't have a 32 bti machine set up to compile the module and compare > the disassembly directly. However, the kernel code above disassembles > to this, and is supposedly in dvb_demux_release() but things have been > inlined by the compiler: > > 1c: 8d 56 78 lea 0x78(%esi),%edx > 1f: 89 54 24 04 mov %edx,0x4(%esp) > 23: 89 d0 mov %edx,%eax > 25: e8 e4 da 4c c8 call 0xc84cdb0e > 2a: 89 f0 mov %esi,%eax > 2c: e8 31 ff ff ff call 0xffffff62 > (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here > %esi holds dmxdevfilter) > 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) > 35: 76 73 jbe 0xaa return 0; > 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) > 3b: 75 49 jne 0x86 > (dvb_dmxdev_delete_pids() appears to be inlined starting here > %esi still holds dmxdevfilter) > 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... > 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list > 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above > 46: 8d 58 f8 lea -0x8(%eax),%ebx > 49: 8d 7e 04 lea 0x4(%esi),%edi > 4c: eb 28 jmp 0x76 > 4e: 8b 41 08 mov 0x8(%ecx),%eax > 51: 8b 51 0c mov 0xc(%ecx),%edx > 54: 89 50 04 mov %edx,0x4(%eax) > > > So there is something wrong with the list manipulations or, if needed, > locking around the the list manipulations of the list that was > introduced in the patch you identified as the problem. That is what is > causing the Ooops on close(). It will take a some more scrutiny to see > what exactly is wrong. > > > There also may be another different problem. I note that alevt outputs > this perror() message: > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > There may possibly have been an unintended change in ioctl() semantics > with the patch. I have not investigated this at all yet. Voila! This is the context of the perror message: a. this is the title of the function: static int vbi_dvb_open(struct vbi *vbi, const char *vbi_name, const char *channel, char *outfile, u_int16_t sid, int ttpid) b. and this is the immediate context of the perror message: memset(&filterpar, 0, sizeof(filterpar)); filterpar.pid = vbi->ttpid; filterpar.input = DMX_IN_FRONTEND; filterpar.output = DMX_OUT_TAP; filterpar.pes_type = DMX_PES_OTHER; filterpar.flags = DMX_IMMEDIATE_START; if (ioctl(vbi->fd, DMX_SET_PES_FILTER, &filterpar) < 0) { error("ioctl: DMX_SET_PES_FILTER %s (%u)", strerror(errno), errno); goto outerr; } return 0; outerr: close(vbi->fd); vbi->fd = -1; return -1; } If you compare that to other teletext applications you will easily find out that there is absolutely nothing irregular about it: all standard calls, free from bugs or syntax errors. So the incriminated patch (see Internet link above) is something like a trojan horse, a virus. It is definitely not a valid extension of the DVB demux device. a. What is the "Invalid argument"? b. And what does "22" mean? The answers lie in the incriminated kernel patch (see Internet link above), but definitely NOT in the application (alevt-dvb). Thanks for your engagement, Andy! It's a golden donation to have people like you around! I really wonder for what three valid signatures (i. e. Signed-off-by) are here for if the people in question obviously do not know, comprehend or understand what they are doing! Under normal conditions the intention of more than one signature is a kind of control function. But how can one execute control over a kernel changeset if the profound competence is missing?? > That's all I have time for tonight. The soonest I will be able to give > more attention to this is on Wednesday evening. > > Regards, > Andy > > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Regards CS ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-02 9:11 ` Chicken Shack @ 2010-02-02 12:52 ` Andy Walls 2010-02-03 1:01 ` hermann pitton 0 siblings, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-02 12:52 UTC (permalink / raw) To: Chicken Shack; +Cc: linux-media, Mauro Carvalho Chehab, torvalds, akpm On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > Hi, > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > teletext software called alevt-dvb. > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > author, Andreas Oberritter. > > > > > > > > > > Regards > > > > > > > > CS > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > The information below can get me started. Could you please provide > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > I'll try to look at this tonight. > > > > > > Regards, > > > Andy > > > > > > > brian:~# alevt > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > Getötet > > > > brian:~# > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563492] last sysfs > > > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > > > task=e7915be0 task.ti=e7934000) > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563592] Stack: > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563622] Call Trace: > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > > > 50 04 89 > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > > > [dvb_core] SS:ESP 0068:e7935f58 > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > kernel:[ 116.563706] CR2: 0000000000000000 > > > > I don't have a 32 bti machine set up to compile the module and compare > > the disassembly directly. However, the kernel code above disassembles > > to this, and is supposedly in dvb_demux_release() but things have been > > inlined by the compiler: > > > > 1c: 8d 56 78 lea 0x78(%esi),%edx > > 1f: 89 54 24 04 mov %edx,0x4(%esp) > > 23: 89 d0 mov %edx,%eax > > 25: e8 e4 da 4c c8 call 0xc84cdb0e > > 2a: 89 f0 mov %esi,%eax > > 2c: e8 31 ff ff ff call 0xffffff62 > > (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here > > %esi holds dmxdevfilter) > > 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) > > 35: 76 73 jbe 0xaa return 0; > > 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) > > 3b: 75 49 jne 0x86 > > (dvb_dmxdev_delete_pids() appears to be inlined starting here > > %esi still holds dmxdevfilter) > > 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... > > 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list > > 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above > > 46: 8d 58 f8 lea -0x8(%eax),%ebx > > 49: 8d 7e 04 lea 0x4(%esi),%edi > > 4c: eb 28 jmp 0x76 > > 4e: 8b 41 08 mov 0x8(%ecx),%eax > > 51: 8b 51 0c mov 0xc(%ecx),%edx > > 54: 89 50 04 mov %edx,0x4(%eax) > > > > > > So there is something wrong with the list manipulations or, if needed, > > locking around the the list manipulations of the list that was > > introduced in the patch you identified as the problem. That is what is > > causing the Ooops on close(). It will take a some more scrutiny to see > > what exactly is wrong. With further thought, a very likely of a list's "next" pointer being NULL would be either: 1. Failing to init the "struct list_head" dmxdevfilter->feed.ts after dmxdevfilter is first kzalloc()'ed. 2. The other member of the dmxdevfilter->feed union being set to NULL unexpectedly. (less likely) I'll look at these possibilities on Wednesday evening. > > There also may be another different problem. I note that alevt outputs > > this perror() message: > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > There may possibly have been an unintended change in ioctl() semantics > > with the patch. I have not investigated this at all yet. > > > Voila! > > This is the context of the perror message: > > a. this is the title of the function: > > static int vbi_dvb_open(struct vbi *vbi, const char *vbi_name, > const char *channel, char *outfile, u_int16_t sid, int ttpid) > > b. and this is the immediate context of the perror message: > > memset(&filterpar, 0, sizeof(filterpar)); > filterpar.pid = vbi->ttpid; > filterpar.input = DMX_IN_FRONTEND; > filterpar.output = DMX_OUT_TAP; > filterpar.pes_type = DMX_PES_OTHER; > filterpar.flags = DMX_IMMEDIATE_START; > if (ioctl(vbi->fd, DMX_SET_PES_FILTER, &filterpar) < 0) { > error("ioctl: DMX_SET_PES_FILTER %s (%u)", strerror(errno), > errno); > goto outerr; > } > return 0; > > outerr: > close(vbi->fd); > vbi->fd = -1; > return -1; > } > > If you compare that to other teletext applications you will easily find > out that there is absolutely nothing irregular about it: all standard > calls, free from bugs or syntax errors. OK. Thank you for hunting down the application call into the driver. That should reduce the time to find the cause > a. What is the "Invalid argument"? > b. And what does "22" mean? 22 is the errno value for EINVAL which means loosely mean "Invalid Argument", but can often be used when something internally is just "Invalid". /usr/include/asm-generic/errno-base.h:#define EINVAL 22 /* Invalid argument */ Given the ioctl() call you've documented above, it should be easy enough to find where in the DVB subsystem the EINVAL is coming from. And it is likely that it is coming from code added by the patch, but I won't know until I can examine further. > Thanks for your engagement, Andy! You're welcome. > It's a golden donation to have people like you around! Thank you. Regards, Andy ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-02 12:52 ` Andy Walls @ 2010-02-03 1:01 ` hermann pitton 2010-02-04 12:54 ` Andy Walls 0 siblings, 1 reply; 38+ messages in thread From: hermann pitton @ 2010-02-03 1:01 UTC (permalink / raw) To: Andy Walls Cc: Chicken Shack, linux-media, Mauro Carvalho Chehab, torvalds, akpm Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > Hi, > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > teletext software called alevt-dvb. > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > Regards > > > > > > > > > > CS > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > The information below can get me started. Could you please provide > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > I'll try to look at this tonight. > > > > > > > > Regards, > > > > Andy > > > > > > > > > brian:~# alevt > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > Getötet > > > > > brian:~# > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563492] last sysfs > > > > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > > > > task=e7915be0 task.ti=e7934000) > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563592] Stack: > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563622] Call Trace: > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > > > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > > > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > > > > 50 04 89 > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > > > > [dvb_core] SS:ESP 0068:e7935f58 > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > kernel:[ 116.563706] CR2: 0000000000000000 > > > > > > I don't have a 32 bti machine set up to compile the module and compare > > > the disassembly directly. However, the kernel code above disassembles > > > to this, and is supposedly in dvb_demux_release() but things have been > > > inlined by the compiler: > > > > > > 1c: 8d 56 78 lea 0x78(%esi),%edx > > > 1f: 89 54 24 04 mov %edx,0x4(%esp) > > > 23: 89 d0 mov %edx,%eax > > > 25: e8 e4 da 4c c8 call 0xc84cdb0e > > > 2a: 89 f0 mov %esi,%eax > > > 2c: e8 31 ff ff ff call 0xffffff62 > > > (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here > > > %esi holds dmxdevfilter) > > > 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) > > > 35: 76 73 jbe 0xaa return 0; > > > 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) > > > 3b: 75 49 jne 0x86 > > > (dvb_dmxdev_delete_pids() appears to be inlined starting here > > > %esi still holds dmxdevfilter) > > > 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... > > > 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list > > > 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above > > > 46: 8d 58 f8 lea -0x8(%eax),%ebx > > > 49: 8d 7e 04 lea 0x4(%esi),%edi > > > 4c: eb 28 jmp 0x76 > > > 4e: 8b 41 08 mov 0x8(%ecx),%eax > > > 51: 8b 51 0c mov 0xc(%ecx),%edx > > > 54: 89 50 04 mov %edx,0x4(%eax) > > > > > > > > > So there is something wrong with the list manipulations or, if needed, > > > locking around the the list manipulations of the list that was > > > introduced in the patch you identified as the problem. That is what is > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > what exactly is wrong. > > With further thought, a very likely of a list's "next" pointer being > NULL would be either: > > 1. Failing to init the "struct list_head" dmxdevfilter->feed.ts after > dmxdevfilter is first kzalloc()'ed. > > 2. The other member of the dmxdevfilter->feed union being set to NULL > unexpectedly. (less likely) > > I'll look at these possibilities on Wednesday evening. > > > > > There also may be another different problem. I note that alevt outputs > > > this perror() message: > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > There may possibly have been an unintended change in ioctl() semantics > > > with the patch. I have not investigated this at all yet. > > > > > > Voila! > > > > This is the context of the perror message: > > > > a. this is the title of the function: > > > > static int vbi_dvb_open(struct vbi *vbi, const char *vbi_name, > > const char *channel, char *outfile, u_int16_t sid, int ttpid) > > > > b. and this is the immediate context of the perror message: > > > > memset(&filterpar, 0, sizeof(filterpar)); > > filterpar.pid = vbi->ttpid; > > filterpar.input = DMX_IN_FRONTEND; > > filterpar.output = DMX_OUT_TAP; > > filterpar.pes_type = DMX_PES_OTHER; > > filterpar.flags = DMX_IMMEDIATE_START; > > if (ioctl(vbi->fd, DMX_SET_PES_FILTER, &filterpar) < 0) { > > error("ioctl: DMX_SET_PES_FILTER %s (%u)", strerror(errno), > > errno); > > goto outerr; > > } > > return 0; > > > > outerr: > > close(vbi->fd); > > vbi->fd = -1; > > return -1; > > } > > > > If you compare that to other teletext applications you will easily find > > out that there is absolutely nothing irregular about it: all standard > > calls, free from bugs or syntax errors. > > > OK. Thank you for hunting down the application call into the driver. > That should reduce the time to find the cause > > > > a. What is the "Invalid argument"? > > b. And what does "22" mean? > > 22 is the errno value for EINVAL which means loosely mean "Invalid > Argument", but can often be used when something internally is just > "Invalid". > > /usr/include/asm-generic/errno-base.h:#define EINVAL 22 /* Invalid argument */ > > Given the ioctl() call you've documented above, it should be easy enough > to find where in the DVB subsystem the EINVAL is coming from. And it is > likely that it is coming from code added by the patch, but I won't know > until I can examine further. > > > > Thanks for your engagement, Andy! > > You're welcome. > > > > It's a golden donation to have people like you around! > > Thank you. > > Regards, > Andy Hi Andy, take care, such golden donations can turn into golden showers very soon. Prefer to stay with the original author. I think he is still alive ;) Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-03 1:01 ` hermann pitton @ 2010-02-04 12:54 ` Andy Walls 2010-02-04 14:07 ` Chicken Shack 0 siblings, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-04 12:54 UTC (permalink / raw) To: hermann pitton; +Cc: Chicken Shack, linux-media, Mauro Carvalho Chehab, obi On Wed, 2010-02-03 at 02:01 +0100, hermann pitton wrote: > Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > > Hi, > > > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > > teletext software called alevt-dvb. > > > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > > > > Regards > > > > > > > > > > > > CS > > > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > > > The information below can get me started. Could you please provide > > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > > > I'll try to look at this tonight. > > > > > > > > > > Regards, > > > > > Andy > > > > > > > > > > > brian:~# alevt > > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > Getötet > > > > > > brian:~# > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563492] last sysfs > > > > > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > > > > > task=e7915be0 task.ti=e7934000) > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563592] Stack: > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563622] Call Trace: > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > > > > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > > > > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > > > > > 50 04 89 > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > > > > > [dvb_core] SS:ESP 0068:e7935f58 > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > kernel:[ 116.563706] CR2: 0000000000000000 > > > > > > > > I don't have a 32 bti machine set up to compile the module and compare > > > > the disassembly directly. However, the kernel code above disassembles > > > > to this, and is supposedly in dvb_demux_release() but things have been > > > > inlined by the compiler: > > > > > > > > 1c: 8d 56 78 lea 0x78(%esi),%edx > > > > 1f: 89 54 24 04 mov %edx,0x4(%esp) > > > > 23: 89 d0 mov %edx,%eax > > > > 25: e8 e4 da 4c c8 call 0xc84cdb0e > > > > 2a: 89 f0 mov %esi,%eax > > > > 2c: e8 31 ff ff ff call 0xffffff62 > > > > (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here > > > > %esi holds dmxdevfilter) > > > > 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) > > > > 35: 76 73 jbe 0xaa return 0; > > > > 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) > > > > 3b: 75 49 jne 0x86 > > > > (dvb_dmxdev_delete_pids() appears to be inlined starting here > > > > %esi still holds dmxdevfilter) > > > > 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... > > > > 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list > > > > 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above > > > > 46: 8d 58 f8 lea -0x8(%eax),%ebx > > > > 49: 8d 7e 04 lea 0x4(%esi),%edi > > > > 4c: eb 28 jmp 0x76 > > > > 4e: 8b 41 08 mov 0x8(%ecx),%eax > > > > 51: 8b 51 0c mov 0xc(%ecx),%edx > > > > 54: 89 50 04 mov %edx,0x4(%eax) > > > > > > > > > > > > So there is something wrong with the list manipulations or, if needed, > > > > locking around the the list manipulations of the list that was > > > > introduced in the patch you identified as the problem. That is what is > > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > > what exactly is wrong. > > > > With further thought, a very likely of a list's "next" pointer being > > NULL would be either: > > > > 1. Failing to init the "struct list_head" dmxdevfilter->feed.ts after > > dmxdevfilter is first kzalloc()'ed. > > > > 2. The other member of the dmxdevfilter->feed union being set to NULL > > unexpectedly. (less likely) > > > > I'll look at these possibilities on Wednesday evening. > > Schedule update: I'll be looking at this tonight (Thursday evening). But maybe that was obvious by now.... > > > > There also may be another different problem. I note that alevt outputs > > > > this perror() message: > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > There may possibly have been an unintended change in ioctl() semantics > > > > with the patch. I have not investigated this at all yet. > > > > > > > > > Voila! > > > > > > This is the context of the perror message: > > > > > > a. this is the title of the function: > > > > > > static int vbi_dvb_open(struct vbi *vbi, const char *vbi_name, > > > const char *channel, char *outfile, u_int16_t sid, int ttpid) > > > > > > b. and this is the immediate context of the perror message: > > > > > > memset(&filterpar, 0, sizeof(filterpar)); > > > filterpar.pid = vbi->ttpid; > > > filterpar.input = DMX_IN_FRONTEND; > > > filterpar.output = DMX_OUT_TAP; > > > filterpar.pes_type = DMX_PES_OTHER; > > > filterpar.flags = DMX_IMMEDIATE_START; > > > if (ioctl(vbi->fd, DMX_SET_PES_FILTER, &filterpar) < 0) { > > > error("ioctl: DMX_SET_PES_FILTER %s (%u)", strerror(errno), > > > errno); > > > goto outerr; > > > } > > > return 0; > > > > > > outerr: > > > close(vbi->fd); > > > vbi->fd = -1; > > > return -1; > > > } > > > > > > If you compare that to other teletext applications you will easily find > > > out that there is absolutely nothing irregular about it: all standard > > > calls, free from bugs or syntax errors. > > > > > > OK. Thank you for hunting down the application call into the driver. > > That should reduce the time to find the cause > > > > > > > a. What is the "Invalid argument"? > > > b. And what does "22" mean? > > > > 22 is the errno value for EINVAL which means loosely mean "Invalid > > Argument", but can often be used when something internally is just > > "Invalid". > > > > /usr/include/asm-generic/errno-base.h:#define EINVAL 22 /* Invalid argument */ > > > > Given the ioctl() call you've documented above, it should be easy enough > > to find where in the DVB subsystem the EINVAL is coming from. And it is > > likely that it is coming from code added by the patch, but I won't know > > until I can examine further. > > > > > > > Thanks for your engagement, Andy! > > > > You're welcome. > > > > > > > It's a golden donation to have people like you around! > > > > Thank you. > > > > Regards, > > Andy > > Hi Andy, > > take care, such golden donations can turn into g**** s***** very soon. Hi Hermann, You might want to avoid that two-word slang phrase in polite company, with American English speakers at least. Unless you are trying to make a really shocking point. ;) Language and cultural divides can be amusing at times. :) > > Prefer to stay with the original author. > > I think he is still alive ;) I've added him to the Cc: list. Regards, Andy > Cheers, > Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-04 12:54 ` Andy Walls @ 2010-02-04 14:07 ` Chicken Shack 2010-02-05 2:21 ` Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) Andy Walls 0 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-04 14:07 UTC (permalink / raw) To: Andy Walls Cc: hermann pitton, linux-media, Mauro Carvalho Chehab, obi, akpm, torvalds Am Donnerstag, den 04.02.2010, 07:54 -0500 schrieb Andy Walls: > On Wed, 2010-02-03 at 02:01 +0100, hermann pitton wrote: > > Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > > > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > > > Hi, > > > > > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > > > teletext software called alevt-dvb. > > > > > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > > > > > > > Regards > > > > > > > > > > > > > > CS > > > > > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > > > > > The information below can get me started. Could you please provide > > > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > > > > > I'll try to look at this tonight. > > > > > > > > > > > > Regards, > > > > > > Andy > > > > > > > > > > > > > brian:~# alevt > > > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > Getötet > > > > > > > brian:~# > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563492] last sysfs > > > > > > > file: /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-0:1.0/uevent > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563589] Process alevt (pid: 1780, ti=e7934000 > > > > > > > task=e7915be0 task.ti=e7934000) > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563592] Stack: > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563622] Call Trace: > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563650] Code: f2 da 4c c8 8d 56 78 89 54 24 04 89 d0 e8 > > > > > > > e4 da 4c c8 89 f0 e8 31 ff ff ff 83 7e 4c 01 76 73 83 7e 48 02 75 49 8b > > > > > > > 46 04 8d 48 f8 <8b> 41 08 8d 58 f8 8d 7e 04 eb 28 8b 41 08 8b 51 0c 89 > > > > > > > 50 04 89 > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563697] EIP: [<f8cec1b2>] dvb_demux_release+0x43/0x183 > > > > > > > [dvb_core] SS:ESP 0068:e7935f58 > > > > > > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > kernel:[ 116.563706] CR2: 0000000000000000 > > > > > > > > > > I don't have a 32 bti machine set up to compile the module and compare > > > > > the disassembly directly. However, the kernel code above disassembles > > > > > to this, and is supposedly in dvb_demux_release() but things have been > > > > > inlined by the compiler: > > > > > > > > > > 1c: 8d 56 78 lea 0x78(%esi),%edx > > > > > 1f: 89 54 24 04 mov %edx,0x4(%esp) > > > > > 23: 89 d0 mov %edx,%eax > > > > > 25: e8 e4 da 4c c8 call 0xc84cdb0e > > > > > 2a: 89 f0 mov %esi,%eax > > > > > 2c: e8 31 ff ff ff call 0xffffff62 > > > > > (dmxdev.c:dvb_dmxdev_filter_reset() appears to be inlined starting here > > > > > %esi holds dmxdevfilter) > > > > > 31: 83 7e 4c 01 cmpl $0x1,0x4c(%esi) if (dmxdevfilter->state < DMXDEV_STATE_SET) > > > > > 35: 76 73 jbe 0xaa return 0; > > > > > 37: 83 7e 48 02 cmpl $0x2,0x48(%esi) if (dmxdevfilter->type == DMXDEV_TYPE_PES) > > > > > 3b: 75 49 jne 0x86 > > > > > (dvb_dmxdev_delete_pids() appears to be inlined starting here > > > > > %esi still holds dmxdevfilter) > > > > > 3d: 8b 46 04 mov 0x4(%esi),%eax %eax gets loaded with &dmxdevfilter->feed.ts for list_for_each_entry_safe(feed, tmp, &dmxdevfilter->feed.ts, ... > > > > > 40: 8d 48 f8 lea -0x8(%eax),%ecx %ecx is "feed" and gets loaded with the next struct dmxdev_feed pointed to by the &dmxdevfilter->feed.ts list > > > > > 43: 8b 41 08 mov 0x8(%ecx),%eax Oops appears to happen here: %ecx and hence "feed" was (craftily?) set to 0xfffffff8 based on CR2 above > > > > > 46: 8d 58 f8 lea -0x8(%eax),%ebx > > > > > 49: 8d 7e 04 lea 0x4(%esi),%edi > > > > > 4c: eb 28 jmp 0x76 > > > > > 4e: 8b 41 08 mov 0x8(%ecx),%eax > > > > > 51: 8b 51 0c mov 0xc(%ecx),%edx > > > > > 54: 89 50 04 mov %edx,0x4(%eax) > > > > > > > > > > > > > > > So there is something wrong with the list manipulations or, if needed, > > > > > locking around the the list manipulations of the list that was > > > > > introduced in the patch you identified as the problem. That is what is > > > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > > > what exactly is wrong. > > > > > > With further thought, a very likely of a list's "next" pointer being > > > NULL would be either: > > > > > > 1. Failing to init the "struct list_head" dmxdevfilter->feed.ts after > > > dmxdevfilter is first kzalloc()'ed. > > > > > > 2. The other member of the dmxdevfilter->feed union being set to NULL > > > unexpectedly. (less likely) > > > > > > I'll look at these possibilities on Wednesday evening. > > > > > Schedule update: I'll be looking at this tonight (Thursday evening). > But maybe that was obvious by now.... You're talking in secret words that confuse me a bit...... So what was obvious by now??? And what are the conclusions? And what are the changesets to be made? I think it's neither a specific application problem nor is it a specific driver problem. It's rather a mixture of both types. My intuition tells me furthermore that the core reason for the kernel crash and the core reason for the hanging process when the channel is changed are one and the same reason. But, as I already stated, things ran fine for 9 years. And the kernel patch itself was not correctly described. It was sold as the extension of what you call ioctl() by adding two further commands. But in fact it is a quite rude and radical change of the DVB demux device's structure. If it weren't such a radical change then the DVB implementation of alevt would not break down just like that, after performing without any breakdowns for over 9 years now (!). And it is de facto highly annoying if the reaction on this faulty behaviour is either playing it down (that's typical Chehab politics) or diving off wordlessly (Andreas Oberritter). And - what is the real most annoying aspect about that all: At the top of the stairs - on the layer where L. T. decides what becomes part of the kernel and what not: Wouldn't it be more than cynical to talk about quality management if the result of that quality management is that you can throw complete applications that have performed error-free for 9 years right into the next trashcan due to a simple kernel changeset? What the hell is going on here? If I could only resolve this problem on my own then I would not make that loud noise - you can be sure about that. All I can do is wildly guess around - and that's poor enough. A few lines deeper you mention an "unintended change in ioctl() semantics." What do you mean by that? You're talking in secrets again. Do you mean "STRUCT_LIST_HEAD" or "INIT_LIST_HEAD" or stuff like that? I haven't found that in the alevt code. What do you mean? And, which is more important: Who can help to resolve the issue? And, last but not least, if you're really short in time (what you always claim), then please do ignore Pitton's rant. He only steals time. Looking forward to your output, Andy Regards CS > > > > > There also may be another different problem. I note that alevt outputs > > > > > this perror() message: > > > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > > > There may possibly have been an unintended change in ioctl() semantics > > > > > with the patch. I have not investigated this at all yet. > > > > > > > > > > > > Voila! > > > > > > > > This is the context of the perror message: > > > > > > > > a. this is the title of the function: > > > > > > > > static int vbi_dvb_open(struct vbi *vbi, const char *vbi_name, > > > > const char *channel, char *outfile, u_int16_t sid, int ttpid) > > > > > > > > b. and this is the immediate context of the perror message: > > > > > > > > memset(&filterpar, 0, sizeof(filterpar)); > > > > filterpar.pid = vbi->ttpid; > > > > filterpar.input = DMX_IN_FRONTEND; > > > > filterpar.output = DMX_OUT_TAP; > > > > filterpar.pes_type = DMX_PES_OTHER; > > > > filterpar.flags = DMX_IMMEDIATE_START; > > > > if (ioctl(vbi->fd, DMX_SET_PES_FILTER, &filterpar) < 0) { > > > > error("ioctl: DMX_SET_PES_FILTER %s (%u)", strerror(errno), > > > > errno); > > > > goto outerr; > > > > } > > > > return 0; > > > > > > > > outerr: > > > > close(vbi->fd); > > > > vbi->fd = -1; > > > > return -1; > > > > } > > > > > > > > If you compare that to other teletext applications you will easily find > > > > out that there is absolutely nothing irregular about it: all standard > > > > calls, free from bugs or syntax errors. > > > > > > > > > OK. Thank you for hunting down the application call into the driver. > > > That should reduce the time to find the cause > > > > > > > > > > a. What is the "Invalid argument"? > > > > b. And what does "22" mean? > > > > > > 22 is the errno value for EINVAL which means loosely mean "Invalid > > > Argument", but can often be used when something internally is just > > > "Invalid". > > > > > > /usr/include/asm-generic/errno-base.h:#define EINVAL 22 /* Invalid argument */ > > > > > > Given the ioctl() call you've documented above, it should be easy enough > > > to find where in the DVB subsystem the EINVAL is coming from. And it is > > > likely that it is coming from code added by the patch, but I won't know > > > until I can examine further. > > > > > > > > > > Thanks for your engagement, Andy! > > > > > > You're welcome. > > > > > > > > > > It's a golden donation to have people like you around! > > > > > > Thank you. > > > > > > Regards, > > > Andy > > > > Hi Andy, > > > > take care, such golden donations can turn into g**** s***** very soon. > > Hi Hermann, > > You might want to avoid that two-word slang phrase in polite company, > with American English speakers at least. Unless you are trying to make > a really shocking point. ;) > > Language and cultural divides can be amusing at times. :) > > > > > > Prefer to stay with the original author. > > > > I think he is still alive ;) > > I've added him to the Cc: list. > > Regards, > Andy > > > Cheers, > > Hermann > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 38+ messages in thread
* Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-04 14:07 ` Chicken Shack @ 2010-02-05 2:21 ` Andy Walls 2010-02-05 2:37 ` hermann pitton ` (2 more replies) 0 siblings, 3 replies; 38+ messages in thread From: Andy Walls @ 2010-02-05 2:21 UTC (permalink / raw) To: Mauro Carvalho Chehab, obi Cc: hermann pitton, Chicken Shack, linux-media, akpm, torvalds On Thu, 2010-02-04 at 15:07 +0100, Chicken Shack wrote: > Am Donnerstag, den 04.02.2010, 07:54 -0500 schrieb Andy Walls: > > On Wed, 2010-02-03 at 02:01 +0100, hermann pitton wrote: > > > Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > > > > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > > > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > > > > Hi, > > > > > > > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > > > > teletext software called alevt-dvb. > > > > > > > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > > > > > > > > > > Regards > > > > > > > > > > > > > > > > CS > > > > > > > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > > > > > > > The information below can get me started. Could you please provide > > > > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > > > > > > > I'll try to look at this tonight. > > > > > > > > > > > > > > Regards, > > > > > > > Andy > > > > > > > > > > > > > > > brian:~# alevt > > > > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > > Getötet > > > > > > > > brian:~# > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > So there is something wrong with the list manipulations or, if needed, > > > > > > locking around the the list manipulations of the list that was > > > > > > introduced in the patch you identified as the problem. That is what is > > > > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > > > > what exactly is wrong. > > Schedule update: I'll be looking at this tonight (Thursday evening). After investigation, my recommendation for fixing the problem is to revert the patch that is causing the problem. The reason for this is not that fixing the patch is impossible. INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the demux0 device into multiple dynamically created anonymous dvr0 devices, and that is the wrong thing to do. I understand the need for sending a single PID TS out to an open demux0 instance as described in this email: http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html even though it seems like a slight abuse of the demux0 device. But sending multiple PIDs out in a TS to the open demux0 device instance is just an awkward way to essentially dynamically create a dvrN device associated with filter(s) set on an open demux0 instance. It would be better, in my opinion, to figure out a way to properly create and/or associate a dvrN device node with a collection of demuxN filters. Maybe just allow creation of a logical demux1 device and dvr1 device and the use the DVB API calls as is on the new logical devices. I'm not a DVB apps programmer, so I don't know all the userspace needs nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID ioctl()s. Comments? Regards, Andy ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 2:21 ` Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) Andy Walls @ 2010-02-05 2:37 ` hermann pitton 2010-02-05 11:39 ` Chicken Shack 2010-02-05 13:19 ` Andreas Oberritter 2 siblings, 0 replies; 38+ messages in thread From: hermann pitton @ 2010-02-05 2:37 UTC (permalink / raw) To: Andy Walls Cc: Mauro Carvalho Chehab, obi, Chicken Shack, linux-media, akpm, torvalds Hi Andy, Am Donnerstag, den 04.02.2010, 21:21 -0500 schrieb Andy Walls: > On Thu, 2010-02-04 at 15:07 +0100, Chicken Shack wrote: > > Am Donnerstag, den 04.02.2010, 07:54 -0500 schrieb Andy Walls: > > > On Wed, 2010-02-03 at 02:01 +0100, hermann pitton wrote: > > > > Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > > > > > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > > > > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > > > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > > > > > teletext software called alevt-dvb. > > > > > > > > > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > > > > > > > > > > > > > Regards > > > > > > > > > > > > > > > > > > CS > > > > > > > > > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > > > > > > > > > The information below can get me started. Could you please provide > > > > > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > > > > > > > > > I'll try to look at this tonight. > > > > > > > > > > > > > > > > Regards, > > > > > > > > Andy > > > > > > > > > > > > > > > > > brian:~# alevt > > > > > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > > > Getötet > > > > > > > > > brian:~# > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > So there is something wrong with the list manipulations or, if needed, > > > > > > > locking around the the list manipulations of the list that was > > > > > > > introduced in the patch you identified as the problem. That is what is > > > > > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > > > > > what exactly is wrong. > > > > Schedule update: I'll be looking at this tonight (Thursday evening). > > After investigation, my recommendation for fixing the problem is to > revert the patch that is causing the problem. > > The reason for this is not that fixing the patch is impossible. > INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > demux0 device into multiple dynamically created anonymous dvr0 devices, > and that is the wrong thing to do. > > I understand the need for sending a single PID TS out to an open demux0 > instance as described in this email: > > http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > > even though it seems like a slight abuse of the demux0 device. > > > But sending multiple PIDs out in a TS to the open demux0 device instance > is just an awkward way to essentially dynamically create a dvrN device > associated with filter(s) set on an open demux0 instance. > > It would be better, in my opinion, to figure out a way to properly > create and/or associate a dvrN device node with a collection of demuxN > filters. > > Maybe just allow creation of a logical demux1 device and dvr1 device and > the use the DVB API calls as is on the new logical devices. > > I'm not a DVB apps programmer, so I don't know all the userspace needs > nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > ioctl()s. > > > Comments? > > Regards, > Andy without looking any much closer, just at some headers that might be out of sync, taking the DVB patched version from here http://pluto.blackbone-ev.de/v1/AleVT%20mit%20DVB-T.html make cc -O2 -s -w main.o ui.o xio.o fdset.o vbi.o cache.o help.o edline.o search.o edit.o misc.o hamm.o lang.o export.o exp-txt.o exp-html.o exp-gfx.o font.o -o alevt -L/usr/X11R6/lib -L/usr/X11R6/lib64 -lX11 -lpng -lz -lm /usr/bin/ld: i386 architecture of input file `main.o' is incompatible with i386:x86-64 output /usr/bin/ld: i386 architecture of input file `ui.o' is incompatible with i386:x86-64 output /usr/bin/ld: i386 architecture of input file `xio.o' is incompatible with i386:x86-64 output /usr/bin/ld: i386 architecture of input file `fdset.o' is incompatible with i386:x86-64 output collect2: ld gab 1 als Ende-Status zurück make: *** [alevt] Fehler 1 make clean rm -f *.o page*.txt a.out core bdf2xbm font?.xbm fontsize.h Makefile.bak rm -f alevt alevt-date alevt-cap rm -f alevt.1x alevt-date.1 alevt-cap.1 rm -f contrib/a.out ttext-*.* rm -f alevt.html make cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o main.o main.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o ui.o ui.c cc bdf2xbm.c -o bdf2xbm ./bdf2xbm font1 <vtxt-latin-1.bdf >font1.xbm ./bdf2xbm font2 <vtxt-latin-2.bdf >font2.xbm fgrep -h "#define" font1.xbm font2.xbm >fontsize.h cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o xio.o xio.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o fdset.o fdset.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o vbi.o vbi.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o cache.o cache.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o help.o help.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o edline.o edline.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o search.o search.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o edit.o edit.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o misc.o misc.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o hamm.o hamm.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o lang.o lang.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o export.o export.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o exp-txt.o exp-txt.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o exp-html.o exp-html.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o exp-gfx.o exp-gfx.c cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o font.o font.c cc -O2 -s -w main.o ui.o xio.o fdset.o vbi.o cache.o help.o edline.o search.o edit.o misc.o hamm.o lang.o export.o exp-txt.o exp-html.o exp-gfx.o font.o -o alevt -L/usr/X11R6/lib -L/usr/X11R6/lib64 -lX11 -lpng -lz -lm cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o alevt-date.o alevt-date.c cc -O2 -s -w alevt-date.o vbi.o fdset.o misc.o hamm.o lang.o -o alevt-date cc -O2 -s -w -DVERSION=\"1.6.2\" -DWITH_PNG -I/usr/X11R6/include -c -o alevt-cap.o alevt-cap.c cc -O2 -s -w alevt-cap.o vbi.o fdset.o misc.o hamm.o lang.o export.o exp-txt.o exp-html.o exp-gfx.o font.o -o alevt-cap -lpng -lz -lm sed s/VERSION/1.6.2/g <alevt.1x.in >alevt.1x sed s/VERSION/1.6.2/g <alevt-date.1.in >alevt-date.1 sed s/VERSION/1.6.2/g <alevt-cap.1.in >alevt-cap.1 ./alevt -vbi /dev/dvb/adapter0/demux0 -pid 551 Using command line specified teletext PID 0x227 No problems so far on x86_64, but I can't tell yet what might be all around. Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 2:21 ` Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) Andy Walls 2010-02-05 2:37 ` hermann pitton @ 2010-02-05 11:39 ` Chicken Shack 2010-02-05 12:19 ` HoP 2010-02-05 13:19 ` Andreas Oberritter 2 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-05 11:39 UTC (permalink / raw) To: Andy Walls Cc: Mauro Carvalho Chehab, obi, hermann pitton, linux-media, akpm, torvalds Am Donnerstag, den 04.02.2010, 21:21 -0500 schrieb Andy Walls: > On Thu, 2010-02-04 at 15:07 +0100, Chicken Shack wrote: > > Am Donnerstag, den 04.02.2010, 07:54 -0500 schrieb Andy Walls: > > > On Wed, 2010-02-03 at 02:01 +0100, hermann pitton wrote: > > > > Am Dienstag, den 02.02.2010, 07:52 -0500 schrieb Andy Walls: > > > > > On Tue, 2010-02-02 at 10:11 +0100, Chicken Shack wrote: > > > > > > Am Montag, den 01.02.2010, 21:00 -0500 schrieb Andy Walls: > > > > > > > On Mon, 2010-02-01 at 07:41 -0500, Andy Walls wrote: > > > > > > > > On Mon, 2010-02-01 at 10:56 +0100, Chicken Shack wrote: > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > here is a link to a patch which breaks backwards compatibility for a > > > > > > > > > teletext software called alevt-dvb. > > > > > > > > > > > > > > > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > > > > > > > > > > > > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > > > > > > > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > > > > > > > > author, Andreas Oberritter. > > > > > > > > > > > > > > > > > > > > > > > > > Regards > > > > > > > > > > > > > > > > > > CS > > > > > > > > > > > > > > > > > > P. S.: This is how the kernel crash looks like: > > > > > > > > > > > > > > > > The information below can get me started. Could you please provide > > > > > > > > whole Ooops from the output dmesg or from your /var/log/messages file? > > > > > > > > > > > > > > > > I'll try to look at this tonight. > > > > > > > > > > > > > > > > Regards, > > > > > > > > Andy > > > > > > > > > > > > > > > > > brian:~# alevt > > > > > > > > > alevt: SDT: service_id 0xcf24 not in PAT > > > > > > > > > > > > > > alevt: ioctl: DMX_SET_PES_FILTER Invalid argument (22) > > > > > > > > > Getötet > > > > > > > > > brian:~# > > > > > > > > > Message from syslogd@brian at Jan 31 19:52:33 ... > > > > > > > > > kernel:[ 116.563487] Oops: 0000 [#1] PREEMPT SMP > > > > > > > > So there is something wrong with the list manipulations or, if needed, > > > > > > > locking around the the list manipulations of the list that was > > > > > > > introduced in the patch you identified as the problem. That is what is > > > > > > > causing the Ooops on close(). It will take a some more scrutiny to see > > > > > > > what exactly is wrong. > > > > Schedule update: I'll be looking at this tonight (Thursday evening). > > After investigation, my recommendation for fixing the problem is to > revert the patch that is causing the problem. > > The reason for this is not that fixing the patch is impossible. > INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > demux0 device into multiple dynamically created anonymous dvr0 devices, > and that is the wrong thing to do. > > I understand the need for sending a single PID TS out to an open demux0 > instance as described in this email: > > http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > > even though it seems like a slight abuse of the demux0 device. > > > But sending multiple PIDs out in a TS to the open demux0 device instance > is just an awkward way to essentially dynamically create a dvrN device > associated with filter(s) set on an open demux0 instance. > > It would be better, in my opinion, to figure out a way to properly > create and/or associate a dvrN device node with a collection of demuxN > filters. > > Maybe just allow creation of a logical demux1 device and dvr1 device and > the use the DVB API calls as is on the new logical devices. > > I'm not a DVB apps programmer, so I don't know all the userspace needs > nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > ioctl()s. > > > Comments? > > Regards, > Andy Hi Andy, thanks for this excellent analysis :) kaffeine-1.0pre3, xawtv-4.0pre (->discontinued), vdr-1.6.0, mythtv-0.22: None of them uses neither DMX_ADD_PID nor DMX_REMOVE_PID in conjunction with DMX_OUT_TSDEMUX_TAP. So reverting the kernel patch does not do harm to anybody. Furthermore: If it is technically possible to send and receive, demux and multiplex, play and record complete contents of a transponder (i. e. multiple TS streams) by using dvbstream or mumudvb (-> 8192 command line parameter), then I myself do not see the necessity to extend the capabilities of one physical device dvr0 or demux0 into a multiplicity of devices dvr0 or demux0. The what and especially the why will remain Andreas Oberritters' secret. However: The hanging process that alevt-dvb produces if an external application switches to a channel belonging to a different DVB-S transponder still remains the second problem which is not touched by this discussion - just as a reminder for everybody! The one who wants to use teletext under Linux is in a very bad position: 1. There seems to be a plugin for vdr that I never tried because I do not like vdr at all. 2. alevt-dvb is officially not maintained. The last contribution by its original author happened in 2007 with the implementation of v4l2. 3. mtt by Gerd Knorr (Hoffmann) is part of a discontinued suite called xawtv-4.0 pre. xawtv-4.0 pre was never officially released or finished. Especially the main program xawtv is simply unusable for modern DVB needs. mtt is still buggy and I do not like its design at all. On the other hand it's not impressed or handicapped at all by the kernel patch incriminated above. That's why I said that the problem discussed here cannot be uniquely defined as kernel-specific. It's also application-specific. It's simply both. In some distros (Debian f. ex.) mtt does not exist officially. Who of the people reading this feels competent enough in DVB application programming to have a look at alevt-dvb to resolve the problem with the hanging processes please? Who volunteers please? Manu Abraham perhaps? Thanks and Regards CS ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 11:39 ` Chicken Shack @ 2010-02-05 12:19 ` HoP 2010-02-05 18:29 ` Andy Walls 0 siblings, 1 reply; 38+ messages in thread From: HoP @ 2010-02-05 12:19 UTC (permalink / raw) To: Chicken Shack Cc: Andy Walls, Mauro Carvalho Chehab, obi, hermann pitton, linux-media, akpm, torvalds Hi Chicken > > Furthermore: If it is technically possible to send and receive, demux > and multiplex, play and record complete contents of a transponder (i. e. > multiple TS streams) by using dvbstream or mumudvb (-> 8192 command line > parameter), then I myself do not see the necessity to extend the > capabilities of one physical device dvr0 or demux0 into a multiplicity > of devices dvr0 or demux0. > The what and especially the why will remain Andreas Oberritters' secret. I can only say my 2 words regarding Andreas' patch: At least one big DVB application is using it - enigma (originally inside tuxbox project, later enhanced by Dream Multimedia for theirs well-known linux based set-top-boxes Dreambox). Those boxes are selling worlwide, so userbase is wide enough (note: I'm not in any way connected with Dream Multimedia, so it is only my personal feeling and/or investigation). Of course using full TS and remuxing only in user land is not possible way for embedded application. And if you count that there can be more then one TS input, things are getting even worst. And as Andy wrote: >> But sending multiple PIDs out in a TS to the open demux0 device instance >> is just an awkward way to essentially dynamically create a dvrN device >> associated with filter(s) set on an open demux0 instance. >> >> It would be better, in my opinion, to figure out a way to properly >> create and/or associate a dvrN device node with a collection of demuxN >> filters. >> >> Maybe just allow creation of a logical demux1 device and dvr1 device and >> the use the DVB API calls as is on the new logical devices. >> >> I'm not a DVB apps programmer, so I don't know all the userspace needs >> nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID >> ioctl()s. >> >> Well, it is also possible way. But it expands dvrX from usuall dvr0 to something like dvr0 ... dvr31 or so. We definitelly need such feature. I, personally, like DMX_OUT_TSDEMUX_TAP approach. Rgds /Honza ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 12:19 ` HoP @ 2010-02-05 18:29 ` Andy Walls 0 siblings, 0 replies; 38+ messages in thread From: Andy Walls @ 2010-02-05 18:29 UTC (permalink / raw) To: HoP Cc: Chicken Shack, Mauro Carvalho Chehab, obi, hermann pitton, linux-media, akpm, torvalds On Fri, 2010-02-05 at 13:19 +0100, HoP wrote: > Hi Chicken > > > > > Furthermore: If it is technically possible to send and receive, demux > > and multiplex, play and record complete contents of a transponder (i. e. > > multiple TS streams) by using dvbstream or mumudvb (-> 8192 command line > > parameter), then I myself do not see the necessity to extend the > > capabilities of one physical device dvr0 or demux0 into a multiplicity > > of devices dvr0 or demux0. > > The what and especially the why will remain Andreas Oberritters' secret. > > I can only say my 2 words regarding Andreas' patch: > > At least one big DVB application is using it - enigma (originally > inside tuxbox project, later enhanced by Dream Multimedia > for theirs well-known linux based set-top-boxes Dreambox). > Those boxes are selling worlwide, so userbase is wide enough > (note: I'm not in any way connected with Dream Multimedia, > so it is only my personal feeling and/or investigation). > > Of course using full TS and remuxing only in user land > is not possible way for embedded application. And if you count > that there can be more then one TS input, things are getting even worst. Well then, it appears reverting the patch is not an option. Time to slog through the code and fix it, I guess. > And as Andy wrote: > >> But sending multiple PIDs out in a TS to the open demux0 device instance > >> is just an awkward way to essentially dynamically create a dvrN device > >> associated with filter(s) set on an open demux0 instance. > >> > >> It would be better, in my opinion, to figure out a way to properly > >> create and/or associate a dvrN device node with a collection of demuxN > >> filters. > >> > >> Maybe just allow creation of a logical demux1 device and dvr1 device and > >> the use the DVB API calls as is on the new logical devices. > >> > >> I'm not a DVB apps programmer, so I don't know all the userspace needs > >> nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > >> ioctl()s. > >> > >> > > Well, it is also possible way. But it expands > dvrX from usuall dvr0 to something like dvr0 ... dvr31 or so. > > We definitelly need such feature. I thought about this more and was thinking the device nodes presented to userspace might look something like this: /dev/dvb/adapter0/demux0 /dev/dvb/adapter0/dvr0 /dev/dvb/adapter0/dvr0.0 (symlink to dvr0 or the other way around) /dev/dvb/adapter0/dvr0.1 /dev/dvb/adapter0/dvr0.2 ... /dev/dvb/adapter0/frontend0 /dev/dvb/adapter0/net0 So that dvr0.n was still associated with the demux0 filter settings, but that the demux filter outputs could be steered to one of a number of different dvr0.n devices. That keeps dvr0.n devices as providing a TS multiplex of exactly the PIDs one wants, allows multiple TS multiplexes to be recorded from the originating demux0, and also allows the dvr0.n outputs to be controlled by the originating demux0. It would require the current DMX_SET_PES_FILTER_PARAMS ioctl()'s to be modified, so that the output setting could include a "subaddress" (the n in dvr0.n), but with a default of 0 for backward compatability. > I, personally, like DMX_OUT_TSDEMUX_TAP approach. >From what I gather, originally: a. the demux0 device would provide a single PID stream (not a TS but a "section"?) with DMX_OUT_TAP b. the dvr0 device would provide a full TS multiplex of all the PIDs specified with DMX_OUT_TS_TAP c. a dvr node always delivered a TS and an open demux instance always delivered a non-TS stream So the problems were, I think: a. No way to capture more than one TS from an originating demux. So userspace could not re-multiplex PIDs together easily(?). b. No way to capture more than one TS multiplex from an originating demux. No way for userspace to easily capture separate TV programs from a single multiplex, into separate TS multiplexes each containing only the related PID for each spearate TV program (i.e. audio and video PIDs) Problem a. was solved by the DMX_OUT_TSDEMUX_TAP change. That was a very simple patch and appear fairly straight forward. It changes the type of output one can get from an open demux0 instance from just "section" to also include a single PID TS. IMO, that change looks like a conveient shortcut to avoid dealing with how to implement multiple dvr nodes per originating demux. But that's OK, if your userspace app just needs one PID per TS: mplayer playing audio and video from one TV program (?) Problem b. was solved by the DMX_ADD_PID, DMX_REMOVE_PID patch. This allows an open demux instance to now not only send a TS, but also send multiple PIDs in that TS, essentially creating an output of the kind one would see at a dvr0 node. So my thinking at this point is why dance around the issue? The requirement appears to be to set up multiple dvr type feeds for userspace from a single originating demux. I would want to take the time to audit the code and fix the problems with the DMX_ADD_PID, DMX_REMOVE_PID patch, if it were not used by any popular userspace apps and if there were something that made more sense. Regards, Andy > Rgds > > /Honza ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 2:21 ` Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) Andy Walls 2010-02-05 2:37 ` hermann pitton 2010-02-05 11:39 ` Chicken Shack @ 2010-02-05 13:19 ` Andreas Oberritter 2010-02-05 13:28 ` Mauro Carvalho Chehab 2010-02-05 19:22 ` Andy Walls 2 siblings, 2 replies; 38+ messages in thread From: Andreas Oberritter @ 2010-02-05 13:19 UTC (permalink / raw) To: Andy Walls Cc: Mauro Carvalho Chehab, hermann pitton, Chicken Shack, linux-media, akpm, torvalds Hello Andy, Andy Walls wrote: > After investigation, my recommendation for fixing the problem is to > revert the patch that is causing the problem. > > The reason for this is not that fixing the patch is impossible. > INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > demux0 device into multiple dynamically created anonymous dvr0 devices, > and that is the wrong thing to do. why exactly do you think this is wrong? > I understand the need for sending a single PID TS out to an open demux0 > instance as described in this email: > > http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > > even though it seems like a slight abuse of the demux0 device. How so? It's all about reading demultiplexed packets, which is exactly what a demux is good for. There is btw. no other way for multiple readers to receive TS packets without implementing a second demux layer in a userspace daemon, which must then be used by all readers. This would needlessly create quite some overhead on high bandwidth services. > But sending multiple PIDs out in a TS to the open demux0 device instance > is just an awkward way to essentially dynamically create a dvrN device > associated with filter(s) set on an open demux0 instance. Actually it makes dvrN obsolete, but it must of course be kept for backwards compatibility. > It would be better, in my opinion, to figure out a way to properly > create and/or associate a dvrN device node with a collection of demuxN > filters. Would this involve running mknod for every recording you start? > Maybe just allow creation of a logical demux1 device and dvr1 device and > the use the DVB API calls as is on the new logical devices. A demux device (and dvr respectively) represents a transport stream input. Hardware with multiple transport stream inputs (read: embedded set top boxes) already has multiple demux and dvr devices. > I'm not a DVB apps programmer, so I don't know all the userspace needs > nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > ioctl()s. The need for such an interface was already pointed out and discussed back in 2006: http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009269.html As Honza noted, these ioctls are used by enigma2 and, in general, by software running on Dream Multimedia set top boxes. I'm sure, other projects are going to adopt this interface sooner or later. It is still quite new after all. Regards, Andreas ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 13:19 ` Andreas Oberritter @ 2010-02-05 13:28 ` Mauro Carvalho Chehab 2010-02-05 13:58 ` Chicken Shack 2010-02-05 15:31 ` Chicken Shack 2010-02-05 19:22 ` Andy Walls 1 sibling, 2 replies; 38+ messages in thread From: Mauro Carvalho Chehab @ 2010-02-05 13:28 UTC (permalink / raw) To: Andreas Oberritter Cc: Andy Walls, hermann pitton, Chicken Shack, linux-media, akpm, torvalds Andreas Oberritter wrote: > Hello Andy, > > Andy Walls wrote: >> After investigation, my recommendation for fixing the problem is to >> revert the patch that is causing the problem. Well, the patch were already added on an upstream kernel, so just reverting it will cause regressions. If it is just aletv-dvb that broke, it seems better to fix it than to cause even more troubles by reverting two new ioctls. >> The reason for this is not that fixing the patch is impossible. Why? Where exactly the breakage happened? >> INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in >> conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the >> demux0 device into multiple dynamically created anonymous dvr0 devices, >> and that is the wrong thing to do. > > why exactly do you think this is wrong? > >> I understand the need for sending a single PID TS out to an open demux0 >> instance as described in this email: >> >> http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html >> >> even though it seems like a slight abuse of the demux0 device. > > How so? It's all about reading demultiplexed packets, which is exactly > what a demux is good for. There is btw. no other way for multiple > readers to receive TS packets without implementing a second demux > layer in a userspace daemon, which must then be used by all readers. > This would needlessly create quite some overhead on high bandwidth > services. >> But sending multiple PIDs out in a TS to the open demux0 device instance >> is just an awkward way to essentially dynamically create a dvrN device >> associated with filter(s) set on an open demux0 instance. > > Actually it makes dvrN obsolete, but it must of course be kept for > backwards compatibility. > >> It would be better, in my opinion, to figure out a way to properly >> create and/or associate a dvrN device node with a collection of demuxN >> filters. > > Would this involve running mknod for every recording you start? > >> Maybe just allow creation of a logical demux1 device and dvr1 device and >> the use the DVB API calls as is on the new logical devices. > > A demux device (and dvr respectively) represents a transport stream > input. Hardware with multiple transport stream inputs (read: embedded > set top boxes) already has multiple demux and dvr devices. Andreas arguments makes sense to me. >> I'm not a DVB apps programmer, so I don't know all the userspace needs >> nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID >> ioctl()s. > > The need for such an interface was already pointed out and discussed > back in 2006: > http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009269.html > > As Honza noted, these ioctls are used by enigma2 and, in general, by > software running on Dream Multimedia set top boxes. I'm sure, other > projects are going to adopt this interface sooner or later. It is > still quite new after all. It seems too late for me to revert it. So, we need to figure out a way to workaround it or to fix the applications that got broken by this change. -- Cheers, Mauro ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 13:28 ` Mauro Carvalho Chehab @ 2010-02-05 13:58 ` Chicken Shack 2010-02-05 15:31 ` Chicken Shack 1 sibling, 0 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-05 13:58 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Andreas Oberritter, Andy Walls, hermann pitton, linux-media, akpm, torvalds Am Freitag, den 05.02.2010, 11:28 -0200 schrieb Mauro Carvalho Chehab: > Andreas Oberritter wrote: > > Hello Andy, > > > > Andy Walls wrote: > >> After investigation, my recommendation for fixing the problem is to > >> revert the patch that is causing the problem. > > Well, the patch were already added on an upstream kernel, so just reverting it > will cause regressions. > > If it is just aletv-dvb that broke, it seems better to fix it than to cause > even more troubles by reverting two new ioctls. > > >> The reason for this is not that fixing the patch is impossible. > > Why? Where exactly the breakage happened? Mauro, alevt-dvb is the only application that is broken by that kernel patch in question. mtt works, but it is part of a suite of programs, it's not teletext only. So the architexture behind is much more complicated than alevt-dvb itself ever was. Conclusion: fix the application alevt-dvb is the shortest way to solve the problem. CS > >> INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > >> conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > >> demux0 device into multiple dynamically created anonymous dvr0 devices, > >> and that is the wrong thing to do. > > > > why exactly do you think this is wrong? > > > >> I understand the need for sending a single PID TS out to an open demux0 > >> instance as described in this email: > >> > >> http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > >> > >> even though it seems like a slight abuse of the demux0 device. > > > > How so? It's all about reading demultiplexed packets, which is exactly > > what a demux is good for. There is btw. no other way for multiple > > readers to receive TS packets without implementing a second demux > > layer in a userspace daemon, which must then be used by all readers. > > This would needlessly create quite some overhead on high bandwidth > > services. > >> But sending multiple PIDs out in a TS to the open demux0 device instance > >> is just an awkward way to essentially dynamically create a dvrN device > >> associated with filter(s) set on an open demux0 instance. > > > > Actually it makes dvrN obsolete, but it must of course be kept for > > backwards compatibility. > > > >> It would be better, in my opinion, to figure out a way to properly > >> create and/or associate a dvrN device node with a collection of demuxN > >> filters. > > > > Would this involve running mknod for every recording you start? > > > >> Maybe just allow creation of a logical demux1 device and dvr1 device and > >> the use the DVB API calls as is on the new logical devices. > > > > A demux device (and dvr respectively) represents a transport stream > > input. Hardware with multiple transport stream inputs (read: embedded > > set top boxes) already has multiple demux and dvr devices. > > > Andreas arguments makes sense to me. > > > >> I'm not a DVB apps programmer, so I don't know all the userspace needs > >> nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > >> ioctl()s. > > > > The need for such an interface was already pointed out and discussed > > back in 2006: > > http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009269.html > > > > As Honza noted, these ioctls are used by enigma2 and, in general, by > > software running on Dream Multimedia set top boxes. I'm sure, other > > projects are going to adopt this interface sooner or later. It is > > still quite new after all. > > > It seems too late for me to revert it. So, we need to figure out a way > to workaround it or to fix the applications that got broken by this change. > ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 13:28 ` Mauro Carvalho Chehab 2010-02-05 13:58 ` Chicken Shack @ 2010-02-05 15:31 ` Chicken Shack 1 sibling, 0 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-05 15:31 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Andreas Oberritter, Andy Walls, hermann pitton, linux-media, akpm, torvalds Am Freitag, den 05.02.2010, 11:28 -0200 schrieb Mauro Carvalho Chehab: > Andreas Oberritter wrote: > > Hello Andy, > > > > Andy Walls wrote: > >> After investigation, my recommendation for fixing the problem is to > >> revert the patch that is causing the problem. > > Well, the patch were already added on an upstream kernel, so just reverting it > will cause regressions. > > If it is just aletv-dvb that broke, it seems better to fix it than to cause > even more troubles by reverting two new ioctls. > > >> The reason for this is not that fixing the patch is impossible. > > Why? Where exactly the breakage happened? Mauro, I think the dissassembler extracts done by Andy do answer this question already. Just go back to the first messages of that thread and you will know where the breakage begins. For an experienced programmer / coder it should not be too different to draw the adequate conclusions what needs to be done. While everybody is behaving rather passive defending the kernel status quo, stressing the fact that this discussion is nearly one week old now: The core questions are: 1. What is the minimum adequate requirement for alevt-dvb to conform to the latest DVB demux design and do its work again without noise and causing kernel oopses? 2. What is the minimum adequate requirement for alevt-dvb to stop causing hanging processes when the transponder is changed? In its current state the application does not seem to understand the effects of a PMT change (->program management table). 3. Who can write / offer patches for alevt's DVB design? Still hoping for qualified help CS > >> INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > >> conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > >> demux0 device into multiple dynamically created anonymous dvr0 devices, > >> and that is the wrong thing to do. > > > > why exactly do you think this is wrong? > > > >> I understand the need for sending a single PID TS out to an open demux0 > >> instance as described in this email: > >> > >> http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > >> > >> even though it seems like a slight abuse of the demux0 device. > > > > How so? It's all about reading demultiplexed packets, which is exactly > > what a demux is good for. There is btw. no other way for multiple > > readers to receive TS packets without implementing a second demux > > layer in a userspace daemon, which must then be used by all readers. > > This would needlessly create quite some overhead on high bandwidth > > services. > >> But sending multiple PIDs out in a TS to the open demux0 device instance > >> is just an awkward way to essentially dynamically create a dvrN device > >> associated with filter(s) set on an open demux0 instance. > > > > Actually it makes dvrN obsolete, but it must of course be kept for > > backwards compatibility. > > > >> It would be better, in my opinion, to figure out a way to properly > >> create and/or associate a dvrN device node with a collection of demuxN > >> filters. > > > > Would this involve running mknod for every recording you start? > > > >> Maybe just allow creation of a logical demux1 device and dvr1 device and > >> the use the DVB API calls as is on the new logical devices. > > > > A demux device (and dvr respectively) represents a transport stream > > input. Hardware with multiple transport stream inputs (read: embedded > > set top boxes) already has multiple demux and dvr devices. > > > Andreas arguments makes sense to me. > > > >> I'm not a DVB apps programmer, so I don't know all the userspace needs > >> nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > >> ioctl()s. > > > > The need for such an interface was already pointed out and discussed > > back in 2006: > > http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009269.html > > > > As Honza noted, these ioctls are used by enigma2 and, in general, by > > software running on Dream Multimedia set top boxes. I'm sure, other > > projects are going to adopt this interface sooner or later. It is > > still quite new after all. > > > It seems too late for me to revert it. So, we need to figure out a way > to workaround it or to fix the applications that got broken by this change. > ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 13:19 ` Andreas Oberritter 2010-02-05 13:28 ` Mauro Carvalho Chehab @ 2010-02-05 19:22 ` Andy Walls 2010-02-05 20:27 ` Andreas Oberritter 1 sibling, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-05 19:22 UTC (permalink / raw) To: Andreas Oberritter Cc: Mauro Carvalho Chehab, hermann pitton, Chicken Shack, linux-media, akpm, torvalds Hi Andreas, On Fri, 2010-02-05 at 14:19 +0100, Andreas Oberritter wrote: > Hello Andy, > > Andy Walls wrote: > > After investigation, my recommendation for fixing the problem is to > > revert the patch that is causing the problem. > > > > The reason for this is not that fixing the patch is impossible. > > INstead, I'll assert that using the DMX_ADD_PID and DMX_REMOVE_PID in > > conjunction with output=DMX_OUT_TSDEMUX_TAP is simply converting the > > demux0 device into multiple dynamically created anonymous dvr0 devices, > > and that is the wrong thing to do. > > why exactly do you think this is wrong? Originally the dvr0 device provided a single TS multiplex of PIDs while the open instances of demux0 each provided a single stream. The end objective appears to be able to have multiple different TS multiplexes from a single hardware (or software) demux. IMO, the logical answer from a userspace perspective is to have multiple dvr device nodes (eg dvr0.n) corresponding to a single originating demux0 device node. With each one of those dvr0.n devices configurable essentially as before from the demux0 node, but being able to steer the output of a filter to a dvr node other than dvr0 (e.g. dvr0.2). The patches that added DMX_OUT_TSDEMUX_TAP and then DMX_ADD_PID/DMX_REMOVE_PID, seemed to be avoiding implementing multiple dvr nodes associated with a single demux node. The end result is that demux0, essentially a device node intended for control AFAICT, has now been transformed to be multiple anonymous dvr device nodes. In my opinion, that was the wrong end result. I guess that is based on my notion that the original Nokia/Convergence API separated control from datastream, and these changes together do just the opposite. > > I understand the need for sending a single PID TS out to an open demux0 > > instance as described in this email: > > > > http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html > > > > even though it seems like a slight abuse of the demux0 device. > > How so? It's all about reading demultiplexed packets, which is exactly > what a demux is good for. My perception was that the demux0 node was for control of the TS output (and perhaps debug for isolating stream). The dvr0 node was for presenting a TS to userspace. > There is btw. no other way for multiple > readers to receive TS packets without implementing a second demux > layer in a userspace daemon, which must then be used by all readers. > This would needlessly create quite some overhead on high bandwidth > services. I agree. The DVB subsystem need a way to present multiple TS multiplexs to userspace from a single, orginating demultiplexer. > > But sending multiple PIDs out in a TS to the open demux0 device instance > > is just an awkward way to essentially dynamically create a dvrN device > > associated with filter(s) set on an open demux0 instance. > > Actually it makes dvrN obsolete, but it must of course be kept for > backwards compatibility. Yes it does, except for write() functionality, which is only available for dvr0 and not demux0. It also collapses control of one demultiplexer and all the data streams available from it down to one device node. > > It would be better, in my opinion, to figure out a way to properly > > create and/or associate a dvrN device node with a collection of demuxN > > filters. > > Would this involve running mknod for every recording you start? I would think that dvb_dmxdev_init() would register a number of DVB_DEVICE_DVR device nodes for demux0 named something like dvr0.0 (or dvr0), dvr0.1, dvr0.2, dvr0.3, etc. udev rules would handle device node creation. A module parameter could allow the user to set the number of dvr0.n nodes to a non-default number. Just an idea. > > Maybe just allow creation of a logical demux1 device and dvr1 device and > > the use the DVB API calls as is on the new logical devices. > > A demux device (and dvr respectively) represents a transport stream > input. Hardware with multiple transport stream inputs (read: embedded > set top boxes) already has multiple demux and dvr devices. Yes, that was a bad idea. I agree with you: one demux device node per input TS and demultiplexer device. One could still have multiple dvr0.m nodes representing different filter configurations from a demux0 node. > > I'm not a DVB apps programmer, so I don't know all the userspace needs > > nor if anything is already using the DMX_ADD_PID and DMX_REMOVE_PID > > ioctl()s. > > The need for such an interface was already pointed out and discussed > back in 2006: > http://www.linuxtv.org/pipermail/linux-dvb/2006-April/009269.html > > As Honza noted, these ioctls are used by enigma2 and, in general, by > software running on Dream Multimedia set top boxes. Right, so reverting the patch is not an option. It also makes implementing multiple dvr0.n nodes for a demux0 device node probably a waste of time at this point. Thanks for the comments. Regards, Andy > I'm sure, other > projects are going to adopt this interface sooner or later. It is > still quite new after all. > > Regards, > Andreas ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 19:22 ` Andy Walls @ 2010-02-05 20:27 ` Andreas Oberritter 2010-02-05 21:07 ` Mauro Carvalho Chehab 0 siblings, 1 reply; 38+ messages in thread From: Andreas Oberritter @ 2010-02-05 20:27 UTC (permalink / raw) To: Andy Walls Cc: Mauro Carvalho Chehab, hermann pitton, Chicken Shack, linux-media, akpm, torvalds Andy Walls wrote: > Originally the dvr0 device provided a single TS multiplex of PIDs while > the open instances of demux0 each provided a single stream. > > The end objective appears to be able to have multiple different TS > multiplexes from a single hardware (or software) demux. Right. > IMO, the logical answer from a userspace perspective is to have multiple > dvr device nodes (eg dvr0.n) corresponding to a single originating > demux0 device node. With each one of those dvr0.n devices configurable > essentially as before from the demux0 node, but being able to steer the > output of a filter to a dvr node other than dvr0 (e.g. dvr0.2). This sounds like a matter of taste to me. But anyway, your proposal would have one of two possible side effects: You could either choose to allocate those device nodes statically, which would create an artificial limit of filter groups on hardware, where filters are shared between multiple inputs. Or you could create the device nodes dynamically, which would involve waiting for udev to create the new node between setting up the filter(s) and being able to read data. Another reason for the addition of the two new ioctls was, that changing the DMX_SET_PES_FILTER control was not an option, to keep old software running on new kernels and vice versa. > The patches that added DMX_OUT_TSDEMUX_TAP and then > DMX_ADD_PID/DMX_REMOVE_PID, seemed to be avoiding implementing multiple > dvr nodes associated with a single demux node. The end result is that > demux0, essentially a device node intended for control AFAICT, has now > been transformed to be multiple anonymous dvr device nodes. > > In my opinion, that was the wrong end result. I guess that is based on > my notion that the original Nokia/Convergence API separated control from > datastream, and these changes together do just the opposite. That's wrong. The demuxN devices have always been used to control filters and to read section and PES (i.e. TS payload) data streams. The addition of DMX_OUT_TSDEMUX_TAP was just an extension to read a third type of data from it (TS header + payload). >>> I understand the need for sending a single PID TS out to an open demux0 >>> instance as described in this email: >>> >>> http://www.mail-archive.com/linux-dvb@linuxtv.org/msg29814.html >>> >>> even though it seems like a slight abuse of the demux0 device. >> How so? It's all about reading demultiplexed packets, which is exactly >> what a demux is good for. > > My perception was that the demux0 node was for control of the TS output > (and perhaps debug for isolating stream). Being able to read section and PES data is very important for DVB applications. This is definitely not a debugging feature. Processing raw TS streams for other purposes than recording to disk is rarely seen on DVB devices. It's something that mainly comes from the PC world, which is dominated by cheap peripherials which have no or very limited capabilities for filtering and stream processing. > The dvr0 node was for > presenting a TS to userspace. Right. >>> But sending multiple PIDs out in a TS to the open demux0 device instance >>> is just an awkward way to essentially dynamically create a dvrN device >>> associated with filter(s) set on an open demux0 instance. >> Actually it makes dvrN obsolete, but it must of course be kept for >> backwards compatibility. > > Yes it does, except for write() functionality, which is only available > for dvr0 and not demux0. Right. > It also collapses control of one demultiplexer and all the data streams > available from it down to one device node. That has already been the case for sections and PES since the first days of the API. The only recent change is to allow multiple PIDs per file descriptor (which only makes sense for TS, not for sections and PES, where the PID value itself is not carried inside the payload). >> As Honza noted, these ioctls are used by enigma2 and, in general, by >> software running on Dream Multimedia set top boxes. > > Right, so reverting the patch is not an option. > > It also makes implementing multiple dvr0.n nodes for a demux0 device > node probably a waste of time at this point. I think so, too. But I guess it's always worth discussing alternatives. Regards, Andreas ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 20:27 ` Andreas Oberritter @ 2010-02-05 21:07 ` Mauro Carvalho Chehab 2010-02-05 21:46 ` hermann pitton 2010-02-05 22:32 ` Chicken Shack 0 siblings, 2 replies; 38+ messages in thread From: Mauro Carvalho Chehab @ 2010-02-05 21:07 UTC (permalink / raw) To: Andreas Oberritter Cc: Andy Walls, hermann pitton, Chicken Shack, linux-media, akpm, torvalds Andreas Oberritter wrote: > Andy Walls wrote: >>> As Honza noted, these ioctls are used by enigma2 and, in general, by >>> software running on Dream Multimedia set top boxes. >> Right, so reverting the patch is not an option. >> >> It also makes implementing multiple dvr0.n nodes for a demux0 device >> node probably a waste of time at this point. > > I think so, too. But I guess it's always worth discussing alternatives. If this discussion happened before 2.6.32 release, and provided that a different implementation were agreed, things would be easier, as a different solution like your proposal could be decided and used. Now, we have already a regression on a stable kernel, and solving it by creating another regression is not something smart to do. >From what I understood, the regression appeared on an old, orphan application with a non-official patch applied on it. Other applications with similar features weren't affected. On the other hand, if the patch got reverted, we'll break a maintained application that is used on a great number of devices, and whose features depend on the new ioctls. We are too late in -rc cycle, so probably there's not enough time for writing, test, validate any new API in time for 2.6.33 and write some compat layer to emulate those two ioctls with a different implementation. So, removing those two ioctls is not an option anymore. Cheers, Mauro ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 21:07 ` Mauro Carvalho Chehab @ 2010-02-05 21:46 ` hermann pitton 2010-02-05 22:32 ` Chicken Shack 1 sibling, 0 replies; 38+ messages in thread From: hermann pitton @ 2010-02-05 21:46 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Andreas Oberritter, Andy Walls, Chicken Shack, linux-media, akpm, torvalds Hi, Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > Andreas Oberritter wrote: > > Andy Walls wrote: > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > >>> software running on Dream Multimedia set top boxes. > >> Right, so reverting the patch is not an option. > >> > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > >> node probably a waste of time at this point. > > > > I think so, too. But I guess it's always worth discussing alternatives. > > If this discussion happened before 2.6.32 release, and provided that a different > implementation were agreed, things would be easier, as a different solution like > your proposal could be decided and used. > > Now, we have already a regression on a stable kernel, and solving it by > creating another regression is not something smart to do. > > >From what I understood, the regression appeared on an old, orphan > application with a non-official patch applied on it. Other applications with > similar features weren't affected. On the other hand, if the patch got reverted, > we'll break a maintained application that is used on a great number of devices, > and whose features depend on the new ioctls. > > We are too late in -rc cycle, so probably there's not enough time for > writing, test, validate any new API in time for 2.6.33 and write some compat > layer to emulate those two ioctls with a different implementation. > > So, removing those two ioctls is not an option anymore. > > > Cheers, > Mauro during the still ongoing v4l to v4l2 conversion, all major apps did ship with their own headers. Since we keep backward compat, that previously unknown to me alevt-dvb-t, agreed it is a nice to have, should compile against the older headers instead latest kernel headers, until someone maintains it again and takes advantage of later improvements. Untested, but usually we see just such. Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 21:07 ` Mauro Carvalho Chehab 2010-02-05 21:46 ` hermann pitton @ 2010-02-05 22:32 ` Chicken Shack 2010-02-05 23:12 ` hermann pitton 1 sibling, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-05 22:32 UTC (permalink / raw) To: Mauro Carvalho Chehab Cc: Andreas Oberritter, Andy Walls, hermann pitton, linux-media, akpm, torvalds Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > Andreas Oberritter wrote: > > Andy Walls wrote: > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > >>> software running on Dream Multimedia set top boxes. > >> Right, so reverting the patch is not an option. > >> > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > >> node probably a waste of time at this point. > > > > I think so, too. But I guess it's always worth discussing alternatives. > > If this discussion happened before 2.6.32 release, and provided that a different > implementation were agreed, things would be easier, as a different solution like > your proposal could be decided and used. You cannot expect people reacting immediately if something is wrong. There are and do exist enormous delays between publishing a new kernel and the decision to use it after appropriate system or distro update. So your expectation level is simply wrong. > Now, we have already a regression on a stable kernel, and solving it by > creating another regression is not something smart to do. Yes. Trivial! > >From what I understood, the regression appeared on an old, orphan > application with a non-official patch applied on it. Other applications with > similar features weren't affected. On the other hand, if the patch got reverted, > we'll break a maintained application that is used on a great number of devices, > and whose features depend on the new ioctls. It's truly amazing how the filter system of your perception works, isn't it? :) It's not just "an old, orphaned application with a non-official patch on it." That's nonsense! a. As I stated already, there do exist several patched versions of alevt-dvb. For instance the one that Herman Pitton tested here in public causes a closed demux device error on my machine. That means that it does not run because xine-ui is already using the demux device. And this phenomenon has got nothing to do with the kernel headers! I've tried all possibilities (old kernel headers and actual ones) so I know better than Hermann Pitton does! And my version (and obviously the ones of Thomas Voegtle and Emil Meier whom I helped with my tip to revert that patch) cause a kernel crash with the actual kernel. b. As I also stated already the other teletext application called mtt does officially not exist except for Novell / OpenSuSe distros (at least as far as I have seen and found out). And this one is, as I also stated, not affected by the kernel patch. It's part of a discontinued program suite called xawtv-4.0 pre with a very complex infrastructure behind. Please do not ask me why this one runs without noise - I do not know. So AFAICS alevt-dvb is the ONLY teletext application for Linux which is available in almost all Gnu/Linux distros. "Other applications with similar features weren't affected." >From where do you know that the features are "similar"? This is a 100 % phantasy product of your mind that has got nothing to do with existing reality, man! Just one example: alevt-dvb has got an excellent html export filter which makes it possible to export teletext pages as graphical html files. I do not know any other teletext application offering that. > We are too late in -rc cycle, so probably there's not enough time for > writing, test, validate any new API in time for 2.6.33 and write some compat > layer to emulate those two ioctls with a different implementation. Who says that a new API or an overworked API must be ready for 2.6.33? When do you think the correct starting point must be set? When the merge window for 2.6.34 opens or when? Absurd argument! Not valid at all! > So, removing those two ioctls is not an option anymore. Yes. Conclusion??? None! So if everybody wants to close down this discussion with that output then you must admit (if you want it or not) that you de facto bury teletext usage in the mud for the majority of Gnu/Linux DVB users. So the output is more than badly disappointing. Bye bye Teletext. Nothing for future kernels, huh? Regards CS P. S.: If you continue like that you make people run away. Instead you better should try to win people, shouldn't you? Just see how many volunteers are here to help and then reflect why that manpower is missing, Mauro! Your gesture being expressed above does a lot, but it is definitely NOT motivating to change that precarious situation. ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 22:32 ` Chicken Shack @ 2010-02-05 23:12 ` hermann pitton 2010-02-05 23:39 ` Chicken Shack 0 siblings, 1 reply; 38+ messages in thread From: hermann pitton @ 2010-02-05 23:12 UTC (permalink / raw) To: Chicken Shack Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > Andreas Oberritter wrote: > > > Andy Walls wrote: > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > >>> software running on Dream Multimedia set top boxes. > > >> Right, so reverting the patch is not an option. > > >> > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > >> node probably a waste of time at this point. > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > If this discussion happened before 2.6.32 release, and provided that a different > > implementation were agreed, things would be easier, as a different solution like > > your proposal could be decided and used. > > > You cannot expect people reacting immediately if something is wrong. > There are and do exist enormous delays between publishing a new kernel > and the decision to use it after appropriate system or distro update. > So your expectation level is simply wrong. > > > > Now, we have already a regression on a stable kernel, and solving it by > > creating another regression is not something smart to do. > > > Yes. Trivial! > > > > >From what I understood, the regression appeared on an old, orphan > > application with a non-official patch applied on it. Other applications with > > similar features weren't affected. On the other hand, if the patch got reverted, > > we'll break a maintained application that is used on a great number of devices, > > and whose features depend on the new ioctls. > > > It's truly amazing how the filter system of your perception works, isn't > it? :) > > It's not just "an old, orphaned application with a non-official patch on > it." That's nonsense! > > a. As I stated already, there do exist several patched versions of > alevt-dvb. For instance the one that Herman Pitton tested here in public > causes a closed demux device error on my machine. That means that it > does not run because xine-ui is already using the demux device. > And this phenomenon has got nothing to do with the kernel headers! > I've tried all possibilities (old kernel headers and actual ones) so I > know better than Hermann Pitton does! > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > whom I helped with my tip to revert that patch) cause a kernel crash > with the actual kernel. > > b. As I also stated already the other teletext application called mtt > does officially not exist except for Novell / OpenSuSe distros (at least > as far as I have seen and found out). And this one > is, as I also stated, not affected by the kernel patch. It's part of a > discontinued program suite called xawtv-4.0 pre with a very complex > infrastructure behind. > > Please do not ask me why this one runs without noise - I do not know. > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > available in almost all Gnu/Linux distros. > > "Other applications with similar features weren't affected." > > >From where do you know that the features are "similar"? > > This is a 100 % phantasy product of your mind that has got nothing to do > with existing reality, man! > > Just one example: alevt-dvb has got an excellent html export filter > which makes it possible to export teletext pages as graphical html > files. > I do not know any other teletext application offering that. > > > > We are too late in -rc cycle, so probably there's not enough time for > > writing, test, validate any new API in time for 2.6.33 and write some compat > > layer to emulate those two ioctls with a different implementation. > > Who says that a new API or an overworked API must be ready for 2.6.33? > When do you think the correct starting point must be set? > When the merge window for 2.6.34 opens or when? > Absurd argument! Not valid at all! > > > > So, removing those two ioctls is not an option anymore. > > Yes. Conclusion??? None! > > So if everybody wants to close down this discussion with that output > then you must admit (if you want it or not) that you de facto bury > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > So the output is more than badly disappointing. > Bye bye Teletext. Nothing for future kernels, huh? Yes, you say it. It definitely will go away and we do have not any influence on that! Did you not notice the very slow update rate these days? > Regards > > CS > > P. S.: If you continue like that you make people run away. > Instead you better should try to win people, shouldn't you? > > Just see how many volunteers are here to help and then reflect > why that manpower is missing, Mauro! > Your gesture being expressed above does a lot, but it is definitely NOT > motivating to change that precarious situation. Then maybe better tell what you tried already, instead leaving others behind doing the same in vain again? Mauro always did try to keep backward compat as much as possible and others had to tell him better not to waste his time on it. You hit the wrong guy again and he can't even test anything. Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 23:12 ` hermann pitton @ 2010-02-05 23:39 ` Chicken Shack 2010-02-06 0:25 ` hermann pitton 0 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-05 23:39 UTC (permalink / raw) To: hermann pitton Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds Am Samstag, den 06.02.2010, 00:12 +0100 schrieb hermann pitton: > Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > > Andreas Oberritter wrote: > > > > Andy Walls wrote: > > > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > > >>> software running on Dream Multimedia set top boxes. > > > >> Right, so reverting the patch is not an option. > > > >> > > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > > >> node probably a waste of time at this point. > > > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > > > If this discussion happened before 2.6.32 release, and provided that a different > > > implementation were agreed, things would be easier, as a different solution like > > > your proposal could be decided and used. > > > > > > You cannot expect people reacting immediately if something is wrong. > > There are and do exist enormous delays between publishing a new kernel > > and the decision to use it after appropriate system or distro update. > > So your expectation level is simply wrong. > > > > > > > Now, we have already a regression on a stable kernel, and solving it by > > > creating another regression is not something smart to do. > > > > > > Yes. Trivial! > > > > > > > >From what I understood, the regression appeared on an old, orphan > > > application with a non-official patch applied on it. Other applications with > > > similar features weren't affected. On the other hand, if the patch got reverted, > > > we'll break a maintained application that is used on a great number of devices, > > > and whose features depend on the new ioctls. > > > > > > It's truly amazing how the filter system of your perception works, isn't > > it? :) > > > > It's not just "an old, orphaned application with a non-official patch on > > it." That's nonsense! > > > > a. As I stated already, there do exist several patched versions of > > alevt-dvb. For instance the one that Herman Pitton tested here in public > > causes a closed demux device error on my machine. That means that it > > does not run because xine-ui is already using the demux device. > > And this phenomenon has got nothing to do with the kernel headers! > > I've tried all possibilities (old kernel headers and actual ones) so I > > know better than Hermann Pitton does! > > > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > > whom I helped with my tip to revert that patch) cause a kernel crash > > with the actual kernel. > > > > b. As I also stated already the other teletext application called mtt > > does officially not exist except for Novell / OpenSuSe distros (at least > > as far as I have seen and found out). And this one > > is, as I also stated, not affected by the kernel patch. It's part of a > > discontinued program suite called xawtv-4.0 pre with a very complex > > infrastructure behind. > > > > Please do not ask me why this one runs without noise - I do not know. > > > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > > available in almost all Gnu/Linux distros. > > > > "Other applications with similar features weren't affected." > > > > >From where do you know that the features are "similar"? > > > > This is a 100 % phantasy product of your mind that has got nothing to do > > with existing reality, man! > > > > Just one example: alevt-dvb has got an excellent html export filter > > which makes it possible to export teletext pages as graphical html > > files. > > I do not know any other teletext application offering that. > > > > > > > We are too late in -rc cycle, so probably there's not enough time for > > > writing, test, validate any new API in time for 2.6.33 and write some compat > > > layer to emulate those two ioctls with a different implementation. > > > > Who says that a new API or an overworked API must be ready for 2.6.33? > > When do you think the correct starting point must be set? > > When the merge window for 2.6.34 opens or when? > > Absurd argument! Not valid at all! > > > > > > > So, removing those two ioctls is not an option anymore. > > > > Yes. Conclusion??? None! > > > > So if everybody wants to close down this discussion with that output > > then you must admit (if you want it or not) that you de facto bury > > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > > > So the output is more than badly disappointing. > > Bye bye Teletext. Nothing for future kernels, huh? > > Yes, you say it. It definitely will go away and we do have not any > influence on that! Did you not notice the very slow update rate these > days? a. NOTHING "will go away". This is empty rant, nothing else it is! In US teletext is dead, yes. In Europe analogue television is close to dead. Yes. But I have found no information source that teletext will disappear in general. At least not in Europe or Germany. So if you keep that up then prove the assertion please. What slow update rate please? What the hell are you talking about, man? > > Regards > > > > CS > > > > P. S.: If you continue like that you make people run away. > > Instead you better should try to win people, shouldn't you? > > > > Just see how many volunteers are here to help and then reflect > > why that manpower is missing, Mauro! > > Your gesture being expressed above does a lot, but it is definitely NOT > > motivating to change that precarious situation. > > Then maybe better tell what you tried already, instead leaving others > behind doing the same in vain again? Goddamn! I've investigated a lot, and I have written down everything I did. See, even if you are too lazy to read all that go blame yourself for that lazyness, but not me, OK? > Mauro always did try to keep backward compat as much as possible and > others had to tell him better not to waste his time on it. > > You hit the wrong guy again and he can't even test anything. All I want him is to immediately and forever stop spreading nonsense and demotivate people and offer us all that propagandist style that I and others do not appreciate at all. Unfortunately I am missing the American English equivalent for "Differenziertheit". Is it "straightforwardness"? This is what I am missing when you start to express yourself. Your "test" of alevt-dvb-t may serve as an example: Noone knows your card type, noone knows your reception area, transponder, channel. All we know from you is a pid. And that there are versions of alevt-dvb who are incapable for parallel tasking due to a wrong DVB patch you simply missed as a matter of fact. So what the hell did you get at all, man? Very low discussion level, isn't it? I'll leave it up to that - don't want no dumb flamings at all. Cheers CS ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-05 23:39 ` Chicken Shack @ 2010-02-06 0:25 ` hermann pitton 2010-02-06 8:55 ` "However, if you don't want to lose your freedom, you had better not follow him." " Chicken Shack 2010-02-06 12:02 ` Need to discuss method for multiple, multiple-PID TS's from same demux " BOUWSMA Barry 0 siblings, 2 replies; 38+ messages in thread From: hermann pitton @ 2010-02-06 0:25 UTC (permalink / raw) To: Chicken Shack Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds Am Samstag, den 06.02.2010, 00:39 +0100 schrieb Chicken Shack: > Am Samstag, den 06.02.2010, 00:12 +0100 schrieb hermann pitton: > > Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > > > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > > > Andreas Oberritter wrote: > > > > > Andy Walls wrote: > > > > > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > > > >>> software running on Dream Multimedia set top boxes. > > > > >> Right, so reverting the patch is not an option. > > > > >> > > > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > > > >> node probably a waste of time at this point. > > > > > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > > > > > If this discussion happened before 2.6.32 release, and provided that a different > > > > implementation were agreed, things would be easier, as a different solution like > > > > your proposal could be decided and used. > > > > > > > > > You cannot expect people reacting immediately if something is wrong. > > > There are and do exist enormous delays between publishing a new kernel > > > and the decision to use it after appropriate system or distro update. > > > So your expectation level is simply wrong. > > > > > > > > > > Now, we have already a regression on a stable kernel, and solving it by > > > > creating another regression is not something smart to do. > > > > > > > > > Yes. Trivial! > > > > > > > > > > >From what I understood, the regression appeared on an old, orphan > > > > application with a non-official patch applied on it. Other applications with > > > > similar features weren't affected. On the other hand, if the patch got reverted, > > > > we'll break a maintained application that is used on a great number of devices, > > > > and whose features depend on the new ioctls. > > > > > > > > > It's truly amazing how the filter system of your perception works, isn't > > > it? :) > > > > > > It's not just "an old, orphaned application with a non-official patch on > > > it." That's nonsense! > > > > > > a. As I stated already, there do exist several patched versions of > > > alevt-dvb. For instance the one that Herman Pitton tested here in public > > > causes a closed demux device error on my machine. That means that it > > > does not run because xine-ui is already using the demux device. > > > And this phenomenon has got nothing to do with the kernel headers! > > > I've tried all possibilities (old kernel headers and actual ones) so I > > > know better than Hermann Pitton does! > > > > > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > > > whom I helped with my tip to revert that patch) cause a kernel crash > > > with the actual kernel. > > > > > > b. As I also stated already the other teletext application called mtt > > > does officially not exist except for Novell / OpenSuSe distros (at least > > > as far as I have seen and found out). And this one > > > is, as I also stated, not affected by the kernel patch. It's part of a > > > discontinued program suite called xawtv-4.0 pre with a very complex > > > infrastructure behind. > > > > > > Please do not ask me why this one runs without noise - I do not know. > > > > > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > > > available in almost all Gnu/Linux distros. > > > > > > "Other applications with similar features weren't affected." > > > > > > >From where do you know that the features are "similar"? > > > > > > This is a 100 % phantasy product of your mind that has got nothing to do > > > with existing reality, man! > > > > > > Just one example: alevt-dvb has got an excellent html export filter > > > which makes it possible to export teletext pages as graphical html > > > files. > > > I do not know any other teletext application offering that. > > > > > > > > > > We are too late in -rc cycle, so probably there's not enough time for > > > > writing, test, validate any new API in time for 2.6.33 and write some compat > > > > layer to emulate those two ioctls with a different implementation. > > > > > > Who says that a new API or an overworked API must be ready for 2.6.33? > > > When do you think the correct starting point must be set? > > > When the merge window for 2.6.34 opens or when? > > > Absurd argument! Not valid at all! > > > > > > > > > > So, removing those two ioctls is not an option anymore. > > > > > > Yes. Conclusion??? None! > > > > > > So if everybody wants to close down this discussion with that output > > > then you must admit (if you want it or not) that you de facto bury > > > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > > > > > So the output is more than badly disappointing. > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > Yes, you say it. It definitely will go away and we do have not any > > influence on that! Did you not notice the very slow update rate these > > days? > > a. NOTHING "will go away". This is empty rant, nothing else it is! > In US teletext is dead, yes. In Europe analogue television is close to > dead. Yes. > But I have found no information source that teletext will disappear in > general. At least not in Europe or Germany. > So if you keep that up then prove the assertion please. In the UK too. And after world war II we always followed BBC. Not that bad ... http://pressetext.com/news/090720037/nutzung-von-teletext-hat-den-zenit-erreicht > What slow update rate please? > What the hell are you talking about, man? Previously information available there was updated within minutes, now in best case every six hours it seems to me. > > > Regards > > > > > > CS > > > > > > P. S.: If you continue like that you make people run away. > > > Instead you better should try to win people, shouldn't you? > > > > > > Just see how many volunteers are here to help and then reflect > > > why that manpower is missing, Mauro! > > > Your gesture being expressed above does a lot, but it is definitely NOT > > > motivating to change that precarious situation. > > > > Then maybe better tell what you tried already, instead leaving others > > behind doing the same in vain again? > > Goddamn! I've investigated a lot, and I have written down everything I > did. > See, even if you are too lazy to read all that go blame yourself for > that lazyness, but not me, OK? My, I see a difficult to identify something of code around, not in any major distribution. One can link to any headers wanted, and scripts seem to be wrapped around too as liked ... > > Mauro always did try to keep backward compat as much as possible and > > others had to tell him better not to waste his time on it. > > > > You hit the wrong guy again and he can't even test anything. > > > All I want him is to immediately and forever stop spreading nonsense and > demotivate people and offer us all that propagandist style that I and > others do not appreciate at all. > > Unfortunately I am missing the American English equivalent for > "Differenziertheit". Is it "straightforwardness"? > > This is what I am missing when you start to express yourself. > > Your "test" of alevt-dvb-t may serve as an example: > > Noone knows your card type, noone knows your reception area, > transponder, channel. All we know from you is a pid. You did report all that? The pid is from ZDF DVB-T from Frankfurt/Main/Feldberg on a saa7134 Medion Quadro, should not matter at all. > And that there are versions of alevt-dvb who are incapable for parallel > tasking due to a wrong DVB patch you simply missed as a matter of fact. > So what the hell did you get at all, man? They really do exist, or only the sripts around? > Very low discussion level, isn't it? > > I'll leave it up to that - don't want no dumb flamings at all. > > Cheers > > CS Peace. Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-06 0:25 ` hermann pitton @ 2010-02-06 8:55 ` Chicken Shack 2010-02-07 3:58 ` hermann pitton 2010-02-06 12:02 ` Need to discuss method for multiple, multiple-PID TS's from same demux " BOUWSMA Barry 1 sibling, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-06 8:55 UTC (permalink / raw) To: hermann pitton Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds [-- Attachment #1: Type: text/plain, Size: 10142 bytes --] Am Samstag, den 06.02.2010, 01:25 +0100 schrieb hermann pitton: > Am Samstag, den 06.02.2010, 00:39 +0100 schrieb Chicken Shack: > > Am Samstag, den 06.02.2010, 00:12 +0100 schrieb hermann pitton: > > > Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > > > > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > > > > Andreas Oberritter wrote: > > > > > > Andy Walls wrote: > > > > > > > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > > > > >>> software running on Dream Multimedia set top boxes. > > > > > >> Right, so reverting the patch is not an option. > > > > > >> > > > > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > > > > >> node probably a waste of time at this point. > > > > > > > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > > > > > > > If this discussion happened before 2.6.32 release, and provided that a different > > > > > implementation were agreed, things would be easier, as a different solution like > > > > > your proposal could be decided and used. > > > > > > > > > > > > You cannot expect people reacting immediately if something is wrong. > > > > There are and do exist enormous delays between publishing a new kernel > > > > and the decision to use it after appropriate system or distro update. > > > > So your expectation level is simply wrong. > > > > > > > > > > > > > Now, we have already a regression on a stable kernel, and solving it by > > > > > creating another regression is not something smart to do. > > > > > > > > > > > > Yes. Trivial! > > > > > > > > > > > > > >From what I understood, the regression appeared on an old, orphan > > > > > application with a non-official patch applied on it. Other applications with > > > > > similar features weren't affected. On the other hand, if the patch got reverted, > > > > > we'll break a maintained application that is used on a great number of devices, > > > > > and whose features depend on the new ioctls. > > > > > > > > > > > > It's truly amazing how the filter system of your perception works, isn't > > > > it? :) > > > > > > > > It's not just "an old, orphaned application with a non-official patch on > > > > it." That's nonsense! > > > > > > > > a. As I stated already, there do exist several patched versions of > > > > alevt-dvb. For instance the one that Herman Pitton tested here in public > > > > causes a closed demux device error on my machine. That means that it > > > > does not run because xine-ui is already using the demux device. > > > > And this phenomenon has got nothing to do with the kernel headers! > > > > I've tried all possibilities (old kernel headers and actual ones) so I > > > > know better than Hermann Pitton does! > > > > > > > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > > > > whom I helped with my tip to revert that patch) cause a kernel crash > > > > with the actual kernel. > > > > > > > > b. As I also stated already the other teletext application called mtt > > > > does officially not exist except for Novell / OpenSuSe distros (at least > > > > as far as I have seen and found out). And this one > > > > is, as I also stated, not affected by the kernel patch. It's part of a > > > > discontinued program suite called xawtv-4.0 pre with a very complex > > > > infrastructure behind. > > > > > > > > Please do not ask me why this one runs without noise - I do not know. > > > > > > > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > > > > available in almost all Gnu/Linux distros. > > > > > > > > "Other applications with similar features weren't affected." > > > > > > > > >From where do you know that the features are "similar"? > > > > > > > > This is a 100 % phantasy product of your mind that has got nothing to do > > > > with existing reality, man! > > > > > > > > Just one example: alevt-dvb has got an excellent html export filter > > > > which makes it possible to export teletext pages as graphical html > > > > files. > > > > I do not know any other teletext application offering that. > > > > > > > > > > > > > We are too late in -rc cycle, so probably there's not enough time for > > > > > writing, test, validate any new API in time for 2.6.33 and write some compat > > > > > layer to emulate those two ioctls with a different implementation. > > > > > > > > Who says that a new API or an overworked API must be ready for 2.6.33? > > > > When do you think the correct starting point must be set? > > > > When the merge window for 2.6.34 opens or when? > > > > Absurd argument! Not valid at all! > > > > > > > > > > > > > So, removing those two ioctls is not an option anymore. > > > > > > > > Yes. Conclusion??? None! > > > > > > > > So if everybody wants to close down this discussion with that output > > > > then you must admit (if you want it or not) that you de facto bury > > > > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > > > > > > > So the output is more than badly disappointing. > > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > > > Yes, you say it. It definitely will go away and we do have not any > > > influence on that! Did you not notice the very slow update rate these > > > days? > > > > a. NOTHING "will go away". This is empty rant, nothing else it is! > > In US teletext is dead, yes. In Europe analogue television is close to > > dead. Yes. > > But I have found no information source that teletext will disappear in > > general. At least not in Europe or Germany. > > So if you keep that up then prove the assertion please. > > In the UK too. And after world war II we always followed BBC. > Not that bad ... > > http://pressetext.com/news/090720037/nutzung-von-teletext-hat-den-zenit-erreicht > > > What slow update rate please? > > What the hell are you talking about, man? > > Previously information available there was updated within minutes, now > in best case every six hours it seems to me. > > > > > Regards > > > > > > > > CS > > > > > > > > P. S.: If you continue like that you make people run away. > > > > Instead you better should try to win people, shouldn't you? > > > > > > > > Just see how many volunteers are here to help and then reflect > > > > why that manpower is missing, Mauro! > > > > Your gesture being expressed above does a lot, but it is definitely NOT > > > > motivating to change that precarious situation. > > > > > > Then maybe better tell what you tried already, instead leaving others > > > behind doing the same in vain again? > > > > Goddamn! I've investigated a lot, and I have written down everything I > > did. > > See, even if you are too lazy to read all that go blame yourself for > > that lazyness, but not me, OK? > > My, I see a difficult to identify something of code around, not in any > major distribution. One can link to any headers wanted, and scripts seem > to be wrapped around too as liked ... > > > > Mauro always did try to keep backward compat as much as possible and > > > others had to tell him better not to waste his time on it. > > > > > > You hit the wrong guy again and he can't even test anything. > > > > > > All I want him is to immediately and forever stop spreading nonsense and > > demotivate people and offer us all that propagandist style that I and > > others do not appreciate at all. > > > > Unfortunately I am missing the American English equivalent for > > "Differenziertheit". Is it "straightforwardness"? > > > > This is what I am missing when you start to express yourself. > > > > Your "test" of alevt-dvb-t may serve as an example: > > > > Noone knows your card type, noone knows your reception area, > > transponder, channel. All we know from you is a pid. > > You did report all that? The pid is from ZDF DVB-T from > Frankfurt/Main/Feldberg on a saa7134 Medion Quadro, should not matter at > all. I was stating 2 things for several times: a. I am working with DVB-S equipment (Flexcop Rev. 2.8, sold as Technisat Skystar). b. It is not impossible to adjust the application (alevt-dvb) to the new needs of the current demux device. This important aspect was simply bypassed and ignored. There is no need to bury its compatibility right into the mud. Instead of that everybody talks about possible kernel alternatives, time factors, incompatibilities etc. And then everybody concludes that it's better not to change anything and buries the discussion. And buries the teletext compatibility of future kernels without any perspective. I scratch my head reading all that! How absurd! What the hell is going on in your minds? > > And that there are versions of alevt-dvb who are incapable for parallel > > tasking due to a wrong DVB patch you simply missed as a matter of fact. > > So what the hell did you get at all, man? > > They really do exist, or only the sripts around? I'll attach an overworked version with all available patches that make sense applied. This version is free from cruft and it is capable of parallel tasking (i. e. DVB-S playback and recording plus teletext at the same time without kernel complaints). The parallel tasking capability has got NOTHING to do with any "scripts around". It really sucks to put facts against written nonsense of you, Hermann, and of MCC of course. This is not the level of constructive elaborated discussion at all! Some people sampled around here should _urgently_ reflect the ideals they stand for when they perform kernel or application hacking here. To produce kernel regressions without taking the responsibility for the consequences is simply an intolerable behaviour. I've always thought that Stallman hopelessly exaggerates when he is beating his _marketing drum_ for his ideas - exaggeration as stylistic device. But I have changed my mind - I think this guy is right. there is no exaggeration at all. And here is the link to read the context: http://www.webmonkey.com/blog/Richard_Stallman_On_Novell__The_GPL_and_Linus_Torvalds The _blind followers_ seem to grow instead of vanishing! Cheers CS [-- Attachment #2: alevt-1.7.0.tar.bz2 --] [-- Type: application/x-bzip-compressed-tar, Size: 80146 bytes --] ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-06 8:55 ` "However, if you don't want to lose your freedom, you had better not follow him." " Chicken Shack @ 2010-02-07 3:58 ` hermann pitton 2010-02-07 12:11 ` Chicken Shack 2010-02-07 14:43 ` Andy Walls 0 siblings, 2 replies; 38+ messages in thread From: hermann pitton @ 2010-02-07 3:58 UTC (permalink / raw) To: Chicken Shack Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds Am Samstag, den 06.02.2010, 09:55 +0100 schrieb Chicken Shack: > Am Samstag, den 06.02.2010, 01:25 +0100 schrieb hermann pitton: > > Am Samstag, den 06.02.2010, 00:39 +0100 schrieb Chicken Shack: > > > Am Samstag, den 06.02.2010, 00:12 +0100 schrieb hermann pitton: > > > > Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > > > > > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > > > > > Andreas Oberritter wrote: > > > > > > > Andy Walls wrote: > > > > > > > > > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > > > > > >>> software running on Dream Multimedia set top boxes. > > > > > > >> Right, so reverting the patch is not an option. > > > > > > >> > > > > > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > > > > > >> node probably a waste of time at this point. > > > > > > > > > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > > > > > > > > > If this discussion happened before 2.6.32 release, and provided that a different > > > > > > implementation were agreed, things would be easier, as a different solution like > > > > > > your proposal could be decided and used. > > > > > > > > > > > > > > > You cannot expect people reacting immediately if something is wrong. > > > > > There are and do exist enormous delays between publishing a new kernel > > > > > and the decision to use it after appropriate system or distro update. > > > > > So your expectation level is simply wrong. > > > > > > > > > > > > > > > > Now, we have already a regression on a stable kernel, and solving it by > > > > > > creating another regression is not something smart to do. > > > > > > > > > > > > > > > Yes. Trivial! > > > > > > > > > > > > > > > > >From what I understood, the regression appeared on an old, orphan > > > > > > application with a non-official patch applied on it. Other applications with > > > > > > similar features weren't affected. On the other hand, if the patch got reverted, > > > > > > we'll break a maintained application that is used on a great number of devices, > > > > > > and whose features depend on the new ioctls. > > > > > > > > > > > > > > > It's truly amazing how the filter system of your perception works, isn't > > > > > it? :) > > > > > > > > > > It's not just "an old, orphaned application with a non-official patch on > > > > > it." That's nonsense! > > > > > > > > > > a. As I stated already, there do exist several patched versions of > > > > > alevt-dvb. For instance the one that Herman Pitton tested here in public > > > > > causes a closed demux device error on my machine. That means that it > > > > > does not run because xine-ui is already using the demux device. > > > > > And this phenomenon has got nothing to do with the kernel headers! > > > > > I've tried all possibilities (old kernel headers and actual ones) so I > > > > > know better than Hermann Pitton does! > > > > > > > > > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > > > > > whom I helped with my tip to revert that patch) cause a kernel crash > > > > > with the actual kernel. > > > > > > > > > > b. As I also stated already the other teletext application called mtt > > > > > does officially not exist except for Novell / OpenSuSe distros (at least > > > > > as far as I have seen and found out). And this one > > > > > is, as I also stated, not affected by the kernel patch. It's part of a > > > > > discontinued program suite called xawtv-4.0 pre with a very complex > > > > > infrastructure behind. > > > > > > > > > > Please do not ask me why this one runs without noise - I do not know. > > > > > > > > > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > > > > > available in almost all Gnu/Linux distros. > > > > > > > > > > "Other applications with similar features weren't affected." > > > > > > > > > > >From where do you know that the features are "similar"? > > > > > > > > > > This is a 100 % phantasy product of your mind that has got nothing to do > > > > > with existing reality, man! > > > > > > > > > > Just one example: alevt-dvb has got an excellent html export filter > > > > > which makes it possible to export teletext pages as graphical html > > > > > files. > > > > > I do not know any other teletext application offering that. > > > > > > > > > > > > > > > > We are too late in -rc cycle, so probably there's not enough time for > > > > > > writing, test, validate any new API in time for 2.6.33 and write some compat > > > > > > layer to emulate those two ioctls with a different implementation. > > > > > > > > > > Who says that a new API or an overworked API must be ready for 2.6.33? > > > > > When do you think the correct starting point must be set? > > > > > When the merge window for 2.6.34 opens or when? > > > > > Absurd argument! Not valid at all! > > > > > > > > > > > > > > > > So, removing those two ioctls is not an option anymore. > > > > > > > > > > Yes. Conclusion??? None! > > > > > > > > > > So if everybody wants to close down this discussion with that output > > > > > then you must admit (if you want it or not) that you de facto bury > > > > > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > > > > > > > > > So the output is more than badly disappointing. > > > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > > > > > Yes, you say it. It definitely will go away and we do have not any > > > > influence on that! Did you not notice the very slow update rate these > > > > days? > > > > > > a. NOTHING "will go away". This is empty rant, nothing else it is! > > > In US teletext is dead, yes. In Europe analogue television is close to > > > dead. Yes. > > > But I have found no information source that teletext will disappear in > > > general. At least not in Europe or Germany. > > > So if you keep that up then prove the assertion please. > > > > In the UK too. And after world war II we always followed BBC. > > Not that bad ... > > > > http://pressetext.com/news/090720037/nutzung-von-teletext-hat-den-zenit-erreicht > > > > > What slow update rate please? > > > What the hell are you talking about, man? > > > > Previously information available there was updated within minutes, now > > in best case every six hours it seems to me. > > > > > > > Regards > > > > > > > > > > CS > > > > > > > > > > P. S.: If you continue like that you make people run away. > > > > > Instead you better should try to win people, shouldn't you? > > > > > > > > > > Just see how many volunteers are here to help and then reflect > > > > > why that manpower is missing, Mauro! > > > > > Your gesture being expressed above does a lot, but it is definitely NOT > > > > > motivating to change that precarious situation. > > > > > > > > Then maybe better tell what you tried already, instead leaving others > > > > behind doing the same in vain again? > > > > > > Goddamn! I've investigated a lot, and I have written down everything I > > > did. > > > See, even if you are too lazy to read all that go blame yourself for > > > that lazyness, but not me, OK? > > > > My, I see a difficult to identify something of code around, not in any > > major distribution. One can link to any headers wanted, and scripts seem > > to be wrapped around too as liked ... > > > > > > Mauro always did try to keep backward compat as much as possible and > > > > others had to tell him better not to waste his time on it. > > > > > > > > You hit the wrong guy again and he can't even test anything. > > > > > > > > > All I want him is to immediately and forever stop spreading nonsense and > > > demotivate people and offer us all that propagandist style that I and > > > others do not appreciate at all. > > > > > > Unfortunately I am missing the American English equivalent for > > > "Differenziertheit". Is it "straightforwardness"? > > > > > > This is what I am missing when you start to express yourself. > > > > > > Your "test" of alevt-dvb-t may serve as an example: > > > > > > Noone knows your card type, noone knows your reception area, > > > transponder, channel. All we know from you is a pid. > > > > You did report all that? The pid is from ZDF DVB-T from > > Frankfurt/Main/Feldberg on a saa7134 Medion Quadro, should not matter at > > all. > > I was stating 2 things for several times: > > a. I am working with DVB-S equipment (Flexcop Rev. 2.8, sold as > Technisat Skystar). > > b. It is not impossible to adjust the application (alevt-dvb) to the new > needs of the current demux device. > > This important aspect was simply bypassed and ignored. > There is no need to bury its compatibility right into the mud. > > > Instead of that everybody talks about possible kernel alternatives, time > factors, incompatibilities etc. And then everybody concludes that it's > better not to change anything and buries the discussion. > And buries the teletext compatibility of future kernels without any > perspective. > > > I scratch my head reading all that! > How absurd! What the hell is going on in your minds? > > > > > And that there are versions of alevt-dvb who are incapable for parallel > > > tasking due to a wrong DVB patch you simply missed as a matter of fact. > > > So what the hell did you get at all, man? > > > > They really do exist, or only the sripts around? > > > I'll attach an overworked version with all available patches that make > sense applied. This version is free from cruft and it is capable of > parallel tasking (i. e. DVB-S playback and recording plus teletext at > the same time without kernel complaints). The parallel tasking > capability has got NOTHING to do with any "scripts around". > It really sucks to put facts against written nonsense of you, Hermann, > and of MCC of course. > This is not the level of constructive elaborated discussion at all! > > > Some people sampled around here should _urgently_ reflect the ideals > they stand for when they perform kernel or application hacking here. > > To produce kernel regressions without taking the responsibility for the > consequences is simply an intolerable behaviour. > > > I've always thought that Stallman hopelessly exaggerates when he is > beating his _marketing drum_ for his ideas - > exaggeration as stylistic device. > > But I have changed my mind - I think this guy is right. there is no > exaggeration at all. > > And here is the link to read the context: > > http://www.webmonkey.com/blog/Richard_Stallman_On_Novell__The_GPL_and_Linus_Torvalds > > The _blind followers_ seem to grow instead of vanishing! > > Cheers > > CS > Hi, I agree with much above, not all. 1. That previous version I tested on DVB-T, and DVB-S should not be different here, did work on a unpatched recent F11 2.6.30, but _also_ with quite _latest_ v4l-dvb installed on a vanilla 2.6.30 something. 2. Agreed also, one seems not to be able to escape from the hard oops by exchanging headers on your latest version with current. Even with latest v4l-dvb headers, which would/should come with any newer kernel in question, it still happens. As long you set the -t teletext pid, your later revision 1.7.0 works for all teletext available on the DVB-T transponder tuned in at once with multiple instances of alevt against also latest headers. 3. Also confirmed, your 1.7.0 version did work on a latest unpatched F11 2.6.30 without setting the teletext pid explicitly, providing the information what else is around there, and next should allow switching through all teletext stuff with the UI I guess. Taking the oopses now, you are likely right, that we have a backward compat regression here and should try to fix it. I'm at least still available for reproducing oopses ;) And, an app, which ever, should not to be able to get all down. Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 3:58 ` hermann pitton @ 2010-02-07 12:11 ` Chicken Shack 2010-02-07 14:43 ` Andy Walls 1 sibling, 0 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-07 12:11 UTC (permalink / raw) To: hermann pitton Cc: Mauro Carvalho Chehab, Andreas Oberritter, Andy Walls, linux-media, akpm, torvalds Am Sonntag, den 07.02.2010, 04:58 +0100 schrieb hermann pitton: > Am Samstag, den 06.02.2010, 09:55 +0100 schrieb Chicken Shack: > > Am Samstag, den 06.02.2010, 01:25 +0100 schrieb hermann pitton: > > > Am Samstag, den 06.02.2010, 00:39 +0100 schrieb Chicken Shack: > > > > Am Samstag, den 06.02.2010, 00:12 +0100 schrieb hermann pitton: > > > > > Am Freitag, den 05.02.2010, 23:32 +0100 schrieb Chicken Shack: > > > > > > Am Freitag, den 05.02.2010, 19:07 -0200 schrieb Mauro Carvalho Chehab: > > > > > > > Andreas Oberritter wrote: > > > > > > > > Andy Walls wrote: > > > > > > > > > > > > > > >>> As Honza noted, these ioctls are used by enigma2 and, in general, by > > > > > > > >>> software running on Dream Multimedia set top boxes. > > > > > > > >> Right, so reverting the patch is not an option. > > > > > > > >> > > > > > > > >> It also makes implementing multiple dvr0.n nodes for a demux0 device > > > > > > > >> node probably a waste of time at this point. > > > > > > > > > > > > > > > > I think so, too. But I guess it's always worth discussing alternatives. > > > > > > > > > > > > > > If this discussion happened before 2.6.32 release, and provided that a different > > > > > > > implementation were agreed, things would be easier, as a different solution like > > > > > > > your proposal could be decided and used. > > > > > > > > > > > > > > > > > > You cannot expect people reacting immediately if something is wrong. > > > > > > There are and do exist enormous delays between publishing a new kernel > > > > > > and the decision to use it after appropriate system or distro update. > > > > > > So your expectation level is simply wrong. > > > > > > > > > > > > > > > > > > > Now, we have already a regression on a stable kernel, and solving it by > > > > > > > creating another regression is not something smart to do. > > > > > > > > > > > > > > > > > > Yes. Trivial! > > > > > > > > > > > > > > > > > > > >From what I understood, the regression appeared on an old, orphan > > > > > > > application with a non-official patch applied on it. Other applications with > > > > > > > similar features weren't affected. On the other hand, if the patch got reverted, > > > > > > > we'll break a maintained application that is used on a great number of devices, > > > > > > > and whose features depend on the new ioctls. > > > > > > > > > > > > > > > > > > It's truly amazing how the filter system of your perception works, isn't > > > > > > it? :) > > > > > > > > > > > > It's not just "an old, orphaned application with a non-official patch on > > > > > > it." That's nonsense! > > > > > > > > > > > > a. As I stated already, there do exist several patched versions of > > > > > > alevt-dvb. For instance the one that Herman Pitton tested here in public > > > > > > causes a closed demux device error on my machine. That means that it > > > > > > does not run because xine-ui is already using the demux device. > > > > > > And this phenomenon has got nothing to do with the kernel headers! > > > > > > I've tried all possibilities (old kernel headers and actual ones) so I > > > > > > know better than Hermann Pitton does! > > > > > > > > > > > > And my version (and obviously the ones of Thomas Voegtle and Emil Meier > > > > > > whom I helped with my tip to revert that patch) cause a kernel crash > > > > > > with the actual kernel. > > > > > > > > > > > > b. As I also stated already the other teletext application called mtt > > > > > > does officially not exist except for Novell / OpenSuSe distros (at least > > > > > > as far as I have seen and found out). And this one > > > > > > is, as I also stated, not affected by the kernel patch. It's part of a > > > > > > discontinued program suite called xawtv-4.0 pre with a very complex > > > > > > infrastructure behind. > > > > > > > > > > > > Please do not ask me why this one runs without noise - I do not know. > > > > > > > > > > > > So AFAICS alevt-dvb is the ONLY teletext application for Linux which is > > > > > > available in almost all Gnu/Linux distros. > > > > > > > > > > > > "Other applications with similar features weren't affected." > > > > > > > > > > > > >From where do you know that the features are "similar"? > > > > > > > > > > > > This is a 100 % phantasy product of your mind that has got nothing to do > > > > > > with existing reality, man! > > > > > > > > > > > > Just one example: alevt-dvb has got an excellent html export filter > > > > > > which makes it possible to export teletext pages as graphical html > > > > > > files. > > > > > > I do not know any other teletext application offering that. > > > > > > > > > > > > > > > > > > > We are too late in -rc cycle, so probably there's not enough time for > > > > > > > writing, test, validate any new API in time for 2.6.33 and write some compat > > > > > > > layer to emulate those two ioctls with a different implementation. > > > > > > > > > > > > Who says that a new API or an overworked API must be ready for 2.6.33? > > > > > > When do you think the correct starting point must be set? > > > > > > When the merge window for 2.6.34 opens or when? > > > > > > Absurd argument! Not valid at all! > > > > > > > > > > > > > > > > > > > So, removing those two ioctls is not an option anymore. > > > > > > > > > > > > Yes. Conclusion??? None! > > > > > > > > > > > > So if everybody wants to close down this discussion with that output > > > > > > then you must admit (if you want it or not) that you de facto bury > > > > > > teletext usage in the mud for the majority of Gnu/Linux DVB users. > > > > > > > > > > > > So the output is more than badly disappointing. > > > > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > > > > > > > Yes, you say it. It definitely will go away and we do have not any > > > > > influence on that! Did you not notice the very slow update rate these > > > > > days? > > > > > > > > a. NOTHING "will go away". This is empty rant, nothing else it is! > > > > In US teletext is dead, yes. In Europe analogue television is close to > > > > dead. Yes. > > > > But I have found no information source that teletext will disappear in > > > > general. At least not in Europe or Germany. > > > > So if you keep that up then prove the assertion please. > > > > > > In the UK too. And after world war II we always followed BBC. > > > Not that bad ... > > > > > > http://pressetext.com/news/090720037/nutzung-von-teletext-hat-den-zenit-erreicht > > > > > > > What slow update rate please? > > > > What the hell are you talking about, man? > > > > > > Previously information available there was updated within minutes, now > > > in best case every six hours it seems to me. > > > > > > > > > Regards > > > > > > > > > > > > CS > > > > > > > > > > > > P. S.: If you continue like that you make people run away. > > > > > > Instead you better should try to win people, shouldn't you? > > > > > > > > > > > > Just see how many volunteers are here to help and then reflect > > > > > > why that manpower is missing, Mauro! > > > > > > Your gesture being expressed above does a lot, but it is definitely NOT > > > > > > motivating to change that precarious situation. > > > > > > > > > > Then maybe better tell what you tried already, instead leaving others > > > > > behind doing the same in vain again? > > > > > > > > Goddamn! I've investigated a lot, and I have written down everything I > > > > did. > > > > See, even if you are too lazy to read all that go blame yourself for > > > > that lazyness, but not me, OK? > > > > > > My, I see a difficult to identify something of code around, not in any > > > major distribution. One can link to any headers wanted, and scripts seem > > > to be wrapped around too as liked ... > > > > > > > > Mauro always did try to keep backward compat as much as possible and > > > > > others had to tell him better not to waste his time on it. > > > > > > > > > > You hit the wrong guy again and he can't even test anything. > > > > > > > > > > > > All I want him is to immediately and forever stop spreading nonsense and > > > > demotivate people and offer us all that propagandist style that I and > > > > others do not appreciate at all. > > > > > > > > Unfortunately I am missing the American English equivalent for > > > > "Differenziertheit". Is it "straightforwardness"? > > > > > > > > This is what I am missing when you start to express yourself. > > > > > > > > Your "test" of alevt-dvb-t may serve as an example: > > > > > > > > Noone knows your card type, noone knows your reception area, > > > > transponder, channel. All we know from you is a pid. > > > > > > You did report all that? The pid is from ZDF DVB-T from > > > Frankfurt/Main/Feldberg on a saa7134 Medion Quadro, should not matter at > > > all. > > > > I was stating 2 things for several times: > > > > a. I am working with DVB-S equipment (Flexcop Rev. 2.8, sold as > > Technisat Skystar). > > > > b. It is not impossible to adjust the application (alevt-dvb) to the new > > needs of the current demux device. > > > > This important aspect was simply bypassed and ignored. > > There is no need to bury its compatibility right into the mud. > > > > > > Instead of that everybody talks about possible kernel alternatives, time > > factors, incompatibilities etc. And then everybody concludes that it's > > better not to change anything and buries the discussion. > > And buries the teletext compatibility of future kernels without any > > perspective. > > > > > > I scratch my head reading all that! > > How absurd! What the hell is going on in your minds? > > > > > > > > And that there are versions of alevt-dvb who are incapable for parallel > > > > tasking due to a wrong DVB patch you simply missed as a matter of fact. > > > > So what the hell did you get at all, man? > > > > > > They really do exist, or only the sripts around? > > > > > > I'll attach an overworked version with all available patches that make > > sense applied. This version is free from cruft and it is capable of > > parallel tasking (i. e. DVB-S playback and recording plus teletext at > > the same time without kernel complaints). The parallel tasking > > capability has got NOTHING to do with any "scripts around". > > It really sucks to put facts against written nonsense of you, Hermann, > > and of MCC of course. > > This is not the level of constructive elaborated discussion at all! > > > > > > Some people sampled around here should _urgently_ reflect the ideals > > they stand for when they perform kernel or application hacking here. > > > > To produce kernel regressions without taking the responsibility for the > > consequences is simply an intolerable behaviour. > > > > > > I've always thought that Stallman hopelessly exaggerates when he is > > beating his _marketing drum_ for his ideas - > > exaggeration as stylistic device. > > > > But I have changed my mind - I think this guy is right. there is no > > exaggeration at all. > > > > And here is the link to read the context: > > > > http://www.webmonkey.com/blog/Richard_Stallman_On_Novell__The_GPL_and_Linus_Torvalds > > > > The _blind followers_ seem to grow instead of vanishing! > > > > Cheers > > > > CS > > > > Hi, > > I agree with much above, not all. > > 1. > That previous version I tested on DVB-T, and DVB-S should not be > different here, did work on a unpatched recent F11 2.6.30, but _also_ > with quite _latest_ v4l-dvb installed on a vanilla 2.6.30 something. > > 2. > Agreed also, one seems not to be able to escape from the hard oops by > exchanging headers on your latest version with current. Even with latest > v4l-dvb headers, which would/should come with any newer kernel in > question, it still happens. > > As long you set the -t teletext pid, your later revision 1.7.0 works for > all teletext available on the DVB-T transponder tuned in at once with > multiple instances of alevt against also latest headers. > > 3. > Also confirmed, your 1.7.0 version did work on a latest unpatched F11 > 2.6.30 without setting the teletext pid explicitly, providing the > information what else is around there, and next should allow switching > through all teletext stuff with the UI I guess. > > Taking the oopses now, you are likely right, that we have a backward > compat regression here and should try to fix it. > > I'm at least still available for reproducing oopses ;) > > And, an app, which ever, should not to be able to get all down. > > Cheers, > Hermann Hello all, let me give you all some last rendering more precisely statements to sharpen your minds: 1. alevt-dvb and kernel version: To get out all application features of my last version 1.7.0 without crash there is no need to go back to 2.6.30 final: Although being a buggy stinker and thus not part of all distros 2.6.31 final is the last official kernel with which everything is fine. 2. Although setting the -t teletext pid is the way to go without kernel crash, you need to know the couples of teletext pids of the channels being sampled in one transponder if you want to run multiple instances of the same program in parallel mode. As this is normally NOT the case, helper scripts exist who carry the information of the outfile function (switch -o) into a graphical window where you can start multiple windows by mouseclick. This outfile option (-o) does NOT work as long as you are forced to give the program the long device string (i. e. -vbi /dev/dvb/adapter0/demux0) plus a teletext pid (f. ex. -t 230 for 3sat). Don't ask me why this does not work - I do not know! So in practice, running the application under a current kernel, you are reduced to the following: a. mandatory starting the application with the long string plus ttpid: -vbi /dev/dvb/adapter0/demux0 -pid 230 b. no chance to start it without parameter, or by sid or by channel name c. one teletext window per one running channel, as the program itself does not provide you a graphical menu to allow you switching several channels within the currently switched transponder. This reduction WAS NOT intended. And a kernel which can be smashed down to a point (in extreme cases, nota bene) where nothing goes without the _violent_ hard reset button, is not a kernel. It is a security risk instead. 3. The "discussion" that happened here shows very precisely in how far this public list conforms to a little village carrying the unofficial name "Absurdistan". Yeah, it's really weird and crazy, if not to say completely insane. It all starts up with a chief maintainer talking and writing a kind of English which is almost unreadable and highly disgusting sometimes. Although this chief maintainer has been doing his job for years now, he still doesn't know what his tasks are. Instead of trying to win qualified people and / or testers and users he very often acts as if there would be thousands of volunteers around stamping down each other in order to receive a chance for doing unpaid qualified work here. His utterances very often remind me of "Apparatschniks", who are a certain kind of people that you very often find in petty bourgeois politics. For primitive structured people howling with the wolves counts more than essence and sophistication of the contribution. The fact that alevt-dvb crashes the current kernel is definitely a backward compatibility issue. On the one hand. On the other hand it is not. It is a matter on how you define the issue. I stated that several times - in vain! To reduce the issue to 50 % of its real essence due to missing application hacking skills is an insane behaviour. It's like a row of doctors each giving perfect sounding diagnosis but noone touching the issue and starting the therapy instead. The white dressed people endlessly rant while the patient dies... Here is the path to resolve the alevt-dvb issue without changing the kernel at all: As I stated already there is a teletext application written by Gerd Knorr in about 2004. That was Gerd's SuSE-Novell-Phase, when he was MCCs precedent here, v4l maintainer. This product called mtt is worth to be examined a bit. When you start it with -d 10 (debug) it first automatically probes all available dvb devices to see where the card is. Its ioctls do not imply the two new calls introduced by Andreas Oberritters patch (how could it -> anachronism?), but I have seen stuff like "STRUCT LIST HEAD" etc. Having found the card it is added to the correct device and demux. Alevt's way of performing the same task is much more primitive. And thus buggy or, like in our specific case, susceptible to the latest kernel changes. To avoid hanging processes a kind of monitoring daemon is working in the background: It's taking care of the program map table (I wrote "program management table" in one of my previous postings and that's crap, sorry!). It somehow (correct me if I am wrong!) makes the demux release dependent from the current contents of the PMT. So you can switch the channel AND change the transponder (ex.: ARD -> ZDF) with an external application, and alevt-dvb will follow the new transponder by reading and "advertising" the new PMT to the other components instead of causing a hanging process not knowing how to deal with the new PMT. The solution of the problem, without the slightest kernel change, is: Pump up alevt-dvb with the necessary daemons, system calls and functions found in mtt. The question is: Which are necessary, which are redundant? To accomplish that I need an experienced application programmer coaching me. I definitely cannot do that on my own. The simpler tasks to do I already did in my version 1.7.0. But this one is not that trivial. Without qualified coaching I am lost. If V4L/DVB weren't a scarcities management (which it will always be as long as MCC is maintainer here), if it were a melting pot of real sputtering people instead, it would not be the slightest problem to ressolve the issue. But instead there are people here who claim to be short in time on the one hand but are performing completely effectless "discussions" here. And that's insane, isn't it? And the other insane gesture is blindly pushing through kernel changesets without caring for the consequences at all. Close your eyes - Signed-off-by - push it through - bunk! It's the ellbow egoism behind the gesture which is insane here. RGDS CS ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 3:58 ` hermann pitton 2010-02-07 12:11 ` Chicken Shack @ 2010-02-07 14:43 ` Andy Walls 2010-02-07 15:29 ` Chicken Shack 1 sibling, 1 reply; 38+ messages in thread From: Andy Walls @ 2010-02-07 14:43 UTC (permalink / raw) To: hermann pitton Cc: Chicken Shack, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds On Sun, 2010-02-07 at 04:58 +0100, hermann pitton wrote: > Am Samstag, den 06.02.2010, 09:55 +0100 schrieb Chicken Shack: > > Am Samstag, den 06.02.2010, 01:25 +0100 schrieb hermann pitton: > 3. > Also confirmed, your 1.7.0 version did work on a latest unpatched F11 > 2.6.30 without setting the teletext pid explicitly, providing the > information what else is around there, and next should allow switching > through all teletext stuff with the UI I guess. > > Taking the oopses now, you are likely right, that we have a backward > compat regression here and should try to fix it. I'm looking at this still, just not quickly. The over-abundance of the use of the words "demux", "dmx", "dvb", "feed", "ts", and "sec" in the dvb-core make code analysis difficult. I'm putting the dvb-core data structures into a UML tool, so I can get some decent class and collaboration diagrams to have a good picture of the relationships. I can say that the easiest fix will most likely be that in dmxdev.h: struct dmxdev_filter { ... union { /* list of TS and PES feeds (struct dmxdev_feed) */ struct list_head ts; struct dmx_section_feed *sec; } feed; .... "feed" should no longer be a union, or that "feed.sec" should be converted to a list as well. It appears under certain circumstances "feed.sec" is being set to NULL, which corrupts the "feed.ts" list head. The "feed.ts" list head is being properly intiialized in dvb_demux_open(), so that's not the problem. Regards, Andy > I'm at least still available for reproducing oopses ;) > > And, an app, which ever, should not to be able to get all down. > > Cheers, > Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 14:43 ` Andy Walls @ 2010-02-07 15:29 ` Chicken Shack 2010-02-07 18:10 ` HoP 0 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-07 15:29 UTC (permalink / raw) To: Andy Walls Cc: Francesco Lavra, hermann pitton, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds [-- Attachment #1: Type: text/plain, Size: 3645 bytes --] Am Sonntag, den 07.02.2010, 09:43 -0500 schrieb Andy Walls: > On Sun, 2010-02-07 at 04:58 +0100, hermann pitton wrote: > > Am Samstag, den 06.02.2010, 09:55 +0100 schrieb Chicken Shack: > > > Am Samstag, den 06.02.2010, 01:25 +0100 schrieb hermann pitton: > > > 3. > > Also confirmed, your 1.7.0 version did work on a latest unpatched F11 > > 2.6.30 without setting the teletext pid explicitly, providing the > > information what else is around there, and next should allow switching > > through all teletext stuff with the UI I guess. > > > > Taking the oopses now, you are likely right, that we have a backward > > compat regression here and should try to fix it. > > > I'm looking at this still, just not quickly. > > The over-abundance of the use of the words "demux", "dmx", "dvb", > "feed", "ts", and "sec" in the dvb-core make code analysis difficult. > I'm putting the dvb-core data structures into a UML tool, so I can get > some decent class and collaboration diagrams to have a good picture of > the relationships. > > I can say that the easiest fix will most likely be that in dmxdev.h: > > struct dmxdev_filter { > ... > union { > /* list of TS and PES feeds (struct dmxdev_feed) */ > struct list_head ts; > struct dmx_section_feed *sec; > } feed; > .... > > "feed" should no longer be a union, or that "feed.sec" should be > converted to a list as well. > > It appears under certain circumstances "feed.sec" is being set to NULL, > which corrupts the "feed.ts" list head. The "feed.ts" list head is > being properly intiialized in dvb_demux_open(), so that's not the > problem. > > > Regards, > Andy > > > > > I'm at least still available for reproducing oopses ;) > > > > And, an app, which ever, should not to be able to get all down. > > > > Cheers, > > Hermann Hi everybody, Although quite effectless in the end I do not want to forget about politeness and thank you for your investigation - especially Andy for sure. An outsider that I found by a google research, an Italian called Francesco Lavra already resolved the kernel crash issue by a simple one-liner that you can find easily on this today's list. So please stop your investigation as the problem is solved already. Alevt works without kernel crash - fantastic! So do everything please to make this one-liner part of 2.6.33 main line final. However I am still alone with the other problem I always stressed: When using alevt-dvb (I attached my overworked version 1.7.0 in earlier mails - please do have a look at it!) the application hangs when you decide to switch to a channel that is part of a new transponder. The program hangs then. That means the way alevt-dvb is dealing with the PMT (program map table) is highly incomplete. It needs a reset function to read the new PMT when the transponder is being changed... I do not know how to program that simple reset function. But I know that thsi is the definite key to resolve the issue. PMT reading, PMT opening, PMT parsing....... Everything is already inside of the source code of alevt-dvb. But as soon as the transponder is being changed the program is quite helpless - it simply does not know what to do and hangs...... This behaviour is not being shown when alevt-dvb shows teletext addressing analogue cards (which seems to be technically something completely different). Only the DVB part of the program behaves buggy in that context. And this goes to Francesco Lavra: God bless you, Francesco! You got it! With a simple one-liner! I'm breathless! Mille grazie per questa contribuzione, Francesco! :) :) :) [-- Attachment #2: alevt-1.7.0.tar.bz2 --] [-- Type: application/x-bzip-compressed-tar, Size: 85333 bytes --] ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 15:29 ` Chicken Shack @ 2010-02-07 18:10 ` HoP 2010-02-07 18:46 ` Chicken Shack 0 siblings, 1 reply; 38+ messages in thread From: HoP @ 2010-02-07 18:10 UTC (permalink / raw) To: Chicken Shack Cc: Andy Walls, Francesco Lavra, hermann pitton, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds Hi Chicken, > > However I am still alone with the other problem I always stressed: > > When using alevt-dvb (I attached my overworked version 1.7.0 in earlier > mails - please do have a look at it!) the application hangs when you > decide to switch to a channel that is part of a new transponder. > The program hangs then. That means the way alevt-dvb is dealing with the > PMT (program map table) is highly incomplete. > It needs a reset function to read the new PMT when the transponder is > being changed... > If you tell me which application is managing channel zaping function then we can try to find way how to signal that to alevt-dvb. > I do not know how to program that simple reset function. But I know that > thsi is the definite key to resolve the issue. > PMT reading, PMT opening, PMT parsing....... > Everything is already inside of the source code of alevt-dvb. > In case, if more then one DVB application is running, one is something like "master" (which do frontend operation, ie. channel change) and rest are slaves. So master has to signal channel/transponder change to the all slaves. Typically, it is done by some custom specific way. For example master can open some well-known unix socket where all slaves are connecting and where, in case of channel change, is sent (by master) some info about such event. Cheers /Honza ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 18:10 ` HoP @ 2010-02-07 18:46 ` Chicken Shack 2010-02-07 19:13 ` HoP 0 siblings, 1 reply; 38+ messages in thread From: Chicken Shack @ 2010-02-07 18:46 UTC (permalink / raw) To: HoP Cc: Andy Walls, Francesco Lavra, hermann pitton, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds Am Sonntag, den 07.02.2010, 19:10 +0100 schrieb HoP: > Hi Chicken, > > > > > However I am still alone with the other problem I always stressed: > > > > When using alevt-dvb (I attached my overworked version 1.7.0 in earlier > > mails - please do have a look at it!) the application hangs when you > > decide to switch to a channel that is part of a new transponder. > > The program hangs then. That means the way alevt-dvb is dealing with the > > PMT (program map table) is highly incomplete. > > It needs a reset function to read the new PMT when the transponder is > > being changed... > > > > If you tell me which application is managing channel zaping function > then we can try to find way how to signal that to alevt-dvb. Hi Hello Honza, well, every application being capable of playing back DVB-TV with in-built receiver engine could manage that. Just the examples that I know: 1. mplayer (receiver engine is good old dvbstream from D. Chapman) 2. xine-ui (receiver engine is libxine) 3. kaffeine (dito 2.) 4. mythtv (don't know which) 5. xawtv (proprietary receiver engine) > > I do not know how to program that simple reset function. But I know that > > this is the definite key to resolve the issue. > > PMT reading, PMT opening, PMT parsing....... > > Everything is already inside of the source code of alevt-dvb. > > > > In case, if more then one DVB application is running, one is something > like "master" (which do frontend operation, ie. channel change) > and rest are slaves. So master has to signal channel/transponder change > to the all slaves. Typically, it is done by some custom specific way. > For example master can open some well-known unix socket > where all slaves are connecting and where, in case of channel change, > is sent (by master) some info about such event. Yes, exactly that's the way it is! Right! But however the "master" application is doing this tuning job, it's not our problem issue right here. Our problem issue right here is how to make the "slave" application comprehend what the "master" application just managed to do. When I was doing the code cleanup of the complete Flexcop driver series Patrick Boettcher taught me what a software watchdog is and how it works. The Conexant frontend / demodulator chip does not work together with the Flexcop main chip without a software watchdog performing reinitialization every 400 milliseconds. That came into my mind a couple of minutes ago. So how about giving alevt-dvb a software watchdog function that just looks up lets say every 2 seconds whether the PMT has changed or not, performing a reinitialisation of the PMT treatment built inside, i. e. doing something like a restart of alevt-dvb? Would that be a pratical solution? Or what would be your personal proposal, Honza? Cheers CS P. S.: The decisive case the program must learn to deal with is NOT a simple channel change, as you express it above, Honza. The proggy can already run multiple instances in parallel console sessions if the transponder is one and the same...... The decisive case the program must learn to deal with is a combination of channel change PLUS transponder change, which makes it necessary to read, work over and parse a complete new PMT (program map table) causing the UI to at least starting the main program of the new transponder (which is ZDF f. ex. if the transponder is ZDFVision. Everything clear so far? Questions? > Cheers > > /Honza ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 18:46 ` Chicken Shack @ 2010-02-07 19:13 ` HoP 2010-02-07 19:41 ` Chicken Shack 0 siblings, 1 reply; 38+ messages in thread From: HoP @ 2010-02-07 19:13 UTC (permalink / raw) To: Chicken Shack Cc: Andy Walls, Francesco Lavra, hermann pitton, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds Hi Chicken 2010/2/7 Chicken Shack <chicken.shack@gmx.de>: > Am Sonntag, den 07.02.2010, 19:10 +0100 schrieb HoP: >> Hi Chicken, >> >> > >> > However I am still alone with the other problem I always stressed: >> > >> > When using alevt-dvb (I attached my overworked version 1.7.0 in earlier >> > mails - please do have a look at it!) the application hangs when you >> > decide to switch to a channel that is part of a new transponder. >> > The program hangs then. That means the way alevt-dvb is dealing with the >> > PMT (program map table) is highly incomplete. >> > It needs a reset function to read the new PMT when the transponder is >> > being changed... >> > >> >> If you tell me which application is managing channel zaping function >> then we can try to find way how to signal that to alevt-dvb. > > Hi Hello Honza, > > well, every application being capable of playing back DVB-TV with > in-built receiver engine could manage that. > > Just the examples that I know: > > 1. mplayer (receiver engine is good old dvbstream from D. Chapman) > 2. xine-ui (receiver engine is libxine) > 3. kaffeine (dito 2.) > 4. mythtv (don't know which) > 5. xawtv (proprietary receiver engine) > > Oki, seems you not understood me fully. I ment exactly your configuration. I need to know: 1, which application is tuning to transponder in your case. 2, is there only one alevt-dvb instance running? Typically, there is the only one, but, of course I can imagine you do some postprocessing of ALL teletext services on current transponder. >> > I do not know how to program that simple reset function. But I know that >> > this is the definite key to resolve the issue. >> > PMT reading, PMT opening, PMT parsing....... >> > Everything is already inside of the source code of alevt-dvb. >> > >> >> In case, if more then one DVB application is running, one is something >> like "master" (which do frontend operation, ie. channel change) >> and rest are slaves. So master has to signal channel/transponder change >> to the all slaves. Typically, it is done by some custom specific way. >> For example master can open some well-known unix socket >> where all slaves are connecting and where, in case of channel change, >> is sent (by master) some info about such event. > > Yes, exactly that's the way it is! Right! > > But however the "master" application is doing this tuning job, it's not > our problem issue right here. > Our problem issue right here is how to make the "slave" application > comprehend what the "master" application just managed to do. > > When I was doing the code cleanup of the complete Flexcop driver series > Patrick Boettcher taught me what a software watchdog is and how it > works. The Conexant frontend / demodulator chip does not work together > with the Flexcop main chip without a software watchdog performing > reinitialization every 400 milliseconds. That came into my mind a couple > of minutes ago. > Well, we should stay outside kernel layer. Best solution should be to manage signalling (of transponder change and futher information) inside userland level. And this is why I was asking who is the master (who is doing channel change) > So how about giving alevt-dvb a software watchdog function that just > looks up lets say every 2 seconds whether the PMT has changed or not, > performing a reinitialisation of the PMT treatment built inside, i. e. > doing something like a restart of alevt-dvb? > To find how to catch that "PMT has changed" we have to know who is doing such PMT change operation. > Would that be a pratical solution? > Or what would be your personal proposal, Honza? > > Cheers > > CS > > P. S.: The decisive case the program must learn to deal with is NOT a > simple channel change, as you express it above, Honza. > The proggy can already run multiple instances in parallel console > sessions if the transponder is one and the same...... > > The decisive case the program must learn to deal with is a combination > of channel change PLUS transponder change, which makes it necessary to > read, work over and parse a complete new PMT (program map table) causing > the UI to at least starting the main program of the new transponder > (which is ZDF f. ex. if the transponder is ZDFVision. > Everything clear so far? Questions? > Still the only one question - how it works for you now? How do you zap to channel right now? I expect you have some favourite application. Cheers /Honza ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: "However, if you don't want to lose your freedom, you had better not follow him." (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-07 19:13 ` HoP @ 2010-02-07 19:41 ` Chicken Shack 0 siblings, 0 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-07 19:41 UTC (permalink / raw) To: HoP Cc: Andy Walls, Francesco Lavra, hermann pitton, Mauro Carvalho Chehab, Andreas Oberritter, linux-media, akpm, torvalds Am Sonntag, den 07.02.2010, 20:13 +0100 schrieb HoP: > Hi Chicken > > 2010/2/7 Chicken Shack <chicken.shack@gmx.de>: > > Am Sonntag, den 07.02.2010, 19:10 +0100 schrieb HoP: > >> Hi Chicken, > >> > >> > > >> > However I am still alone with the other problem I always stressed: > >> > > >> > When using alevt-dvb (I attached my overworked version 1.7.0 in earlier > >> > mails - please do have a look at it!) the application hangs when you > >> > decide to switch to a channel that is part of a new transponder. > >> > The program hangs then. That means the way alevt-dvb is dealing with the > >> > PMT (program map table) is highly incomplete. > >> > It needs a reset function to read the new PMT when the transponder is > >> > being changed... > >> > > >> > >> If you tell me which application is managing channel zaping function > >> then we can try to find way how to signal that to alevt-dvb. > > > > Hi Hello Honza, > > > > well, every application being capable of playing back DVB-TV with > > in-built receiver engine could manage that. > > > > Just the examples that I know: > > > > 1. mplayer (receiver engine is good old dvbstream from D. Chapman) > > 2. xine-ui (receiver engine is libxine) > > 3. kaffeine (dito 2.) > > 4. mythtv (don't know which) > > 5. xawtv (proprietary receiver engine) > > > > > > Oki, seems you not understood me fully. I ment exactly your configuration. > I need to know: > > 1, which application is tuning to transponder in your case. > 2, is there only one alevt-dvb instance running? Typically, there is the only > one, but, of course I can imagine you do some postprocessing of ALL > teletext services on current transponder. > > >> > I do not know how to program that simple reset function. But I know that > >> > this is the definite key to resolve the issue. > >> > PMT reading, PMT opening, PMT parsing....... > >> > Everything is already inside of the source code of alevt-dvb. > >> > > >> > >> In case, if more then one DVB application is running, one is something > >> like "master" (which do frontend operation, ie. channel change) > >> and rest are slaves. So master has to signal channel/transponder change > >> to the all slaves. Typically, it is done by some custom specific way. > >> For example master can open some well-known unix socket > >> where all slaves are connecting and where, in case of channel change, > >> is sent (by master) some info about such event. > > > > Yes, exactly that's the way it is! Right! > > > > But however the "master" application is doing this tuning job, it's not > > our problem issue right here. > > Our problem issue right here is how to make the "slave" application > > comprehend what the "master" application just managed to do. > > > > When I was doing the code cleanup of the complete Flexcop driver series > > Patrick Boettcher taught me what a software watchdog is and how it > > works. The Conexant frontend / demodulator chip does not work together > > with the Flexcop main chip without a software watchdog performing > > reinitialization every 400 milliseconds. That came into my mind a couple > > of minutes ago. > > > > Well, we should stay outside kernel layer. Best solution should be > to manage signalling (of transponder change and futher information) > inside userland level. And this is why I was asking who is the master > (who is doing channel change) > > > So how about giving alevt-dvb a software watchdog function that just > > looks up lets say every 2 seconds whether the PMT has changed or not, > > performing a reinitialisation of the PMT treatment built inside, i. e. > > doing something like a restart of alevt-dvb? > > > > To find how to catch that "PMT has changed" we have to know > who is doing such PMT change operation. > > > Would that be a pratical solution? > > Or what would be your personal proposal, Honza? > > > > Cheers > > > > CS > > > > P. S.: The decisive case the program must learn to deal with is NOT a > > simple channel change, as you express it above, Honza. > > The proggy can already run multiple instances in parallel console > > sessions if the transponder is one and the same...... > > > > The decisive case the program must learn to deal with is a combination > > of channel change PLUS transponder change, which makes it necessary to > > read, work over and parse a complete new PMT (program map table) causing > > the UI to at least starting the main program of the new transponder > > (which is ZDF f. ex. if the transponder is ZDFVision. > > Everything clear so far? Questions? > > > > Still the only one question - how it works for you now? How do you > zap to channel right now? I expect you have some favourite application. > > Cheers > > /Honza Sorry Honza, my current favourite application is of course xine-ui, but not the one in the distro Debian Squeeze. A self-debianized more recent version 0.6 instead, but definitely xine-ui. As alternative I sometimes use mplayer. These two go for videostreams so far. As far as audiostreams (DVB Radio only) are concerned I do prefer audacious2 with its inofficial or say external DVB-plugin which you can download at the audacious2 homepage. So I do not use simply one application for all (as you might expect), because xine-ui and mplayer are awfully slow for Radio streams. I use at least 2 different ones, if not to say three, while 2 (xine and audacious2 with DVB plugin are the preferred ones. Does that help us so far? I still wonder why you are asking so straightly for the master application. Not as a matter of ignorance I wonder, but as a matter of different experience. If you for instance extract mtt, the videotext application from Gerd Knorr's xawtv-4.0 pre suite and compile it without the other components of the suite you can start it in every "master" application context you may ever wish: If the transponder is changed by whatever external application then mtt follows the transponder change. While it officially belongs to xawtv as program suite it can run autonomously outside that xawtv context. So the "master" application in that case MUST NOT BE necessarily xawtv doing the channel and transponder tuning. It can be every other deliberate DVB application instead. That's why I wonder about your questions. CS ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-06 0:25 ` hermann pitton 2010-02-06 8:55 ` "However, if you don't want to lose your freedom, you had better not follow him." " Chicken Shack @ 2010-02-06 12:02 ` BOUWSMA Barry 2010-03-11 4:00 ` hermann pitton 1 sibling, 1 reply; 38+ messages in thread From: BOUWSMA Barry @ 2010-02-06 12:02 UTC (permalink / raw) To: linux-media I'm not even trying to follow this discussion at all, but I feel I have to chime in to be off-topic... On Sat, 6 Feb 2010, hermann pitton wrote: > > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > > > Yes, you say it. It definitely will go away and we do have not any > > > influence on that! Did you not notice the very slow update rate these > > > days? > > > > a. NOTHING "will go away". This is empty rant, nothing else it is! > > In US teletext is dead, yes. In Europe analogue television is close to > > dead. Yes. > > But I have found no information source that teletext will disappear in > > general. At least not in Europe or Germany. > > So if you keep that up then prove the assertion please. > > In the UK too. And after world war II we always followed BBC. > Not that bad ... The BBC has switched over to ``Digital Text'' via the Red Button service on Freeview. This is based on MHEG, and has the advantage that pretty much all receivers are built around a particular platform which specifies inclusion of the Red Button services, a particular EPG, LCNs, and so on. Be that platform Freeview, or Sky, or Freesat. This is not the case in your country -- the public broadcasters have adopted MHP which has gone over about as well as a lead balloon. There is also not a specified platform, but rather any manufacturer can offer a receiver based on the DVB specifications. Usually teletext support will be built-in to the decoder; also, most boxes pass the DVB Teletext information to the television regenerated as the analogue VBI interval which pretty much every set supports. As far as I know, the proposed Eutelsat Viseo platform being pushed does not specify a MHP- or MHEG-based replacement for teletext, nor am I aware of any alternative platforms to take over and mandate a replacement of the current level teletext. Can you even find a MHP-capable settop box in the shops today? Also, as far as I know, the national MHP service was dropped from terrestrial broadcasting some years ago, and at best there may be still a regional and minimal service offered by Bayerischer Rundfunk, but nothing like one finds on Freeview. Conditions have diverged too much between the two countries these days. In the UK, Sky has a lion's share of the market, while I've barely seen anything but a few sports bars with a Premiere subscription. Also while the commercial public service broadcasters in the UK have relied on terrestrial service through the country, this has not been true of the comparable private commercial broadcasters in germany, who are not even participating in terrestrial broadcasting outside of a handful of strategic centres. Also, teletext in germany is a service of the individual broadcasters or contracted out in the commercial case, while the Teletext and Teletext Holidays and such closing in the UK is its own service. Without support already in place for a transition away from VBI- based teletext over the coming years, I can't see it happening. I know that Austria made a big deal of their MHP-based ORF text service, but I don't know how great a penetration it has. I've read tht it requires significant bandwidth of the terrestrial multiplexes, while conventional teletext requires around that of an audio channel -- back when ZDFvision was sending MHP data plus AC3 streams terrestrially, I clocked four MHP streams each with a data rate comparable to a lower-quality audio stream, together some twice the data rate of each of the three separate teletext streams. > > What slow update rate please? > > What the hell are you talking about, man? > > Previously information available there was updated within minutes, now > in best case every six hours it seems to me. I don't know what services you are viewing; those which I use are updated within seconds of updated data, and happen to be the first place I turn to for current information. The amount and quality of information I get from conventional teletext is far more impressive than what I see on the BBC's Red Button service. barry bouwsma ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) 2010-02-06 12:02 ` Need to discuss method for multiple, multiple-PID TS's from same demux " BOUWSMA Barry @ 2010-03-11 4:00 ` hermann pitton 0 siblings, 0 replies; 38+ messages in thread From: hermann pitton @ 2010-03-11 4:00 UTC (permalink / raw) To: BOUWSMA Barry; +Cc: linux-media Am Samstag, den 06.02.2010, 13:02 +0100 schrieb BOUWSMA Barry: > I'm not even trying to follow this discussion at all, but I > feel I have to chime in to be off-topic... > > On Sat, 6 Feb 2010, hermann pitton wrote: > > > > > > Bye bye Teletext. Nothing for future kernels, huh? > > > > > > > > Yes, you say it. It definitely will go away and we do have not any > > > > influence on that! Did you not notice the very slow update rate these > > > > days? > > > > > > a. NOTHING "will go away". This is empty rant, nothing else it is! > > > In US teletext is dead, yes. In Europe analogue television is close to > > > dead. Yes. > > > But I have found no information source that teletext will disappear in > > > general. At least not in Europe or Germany. > > > So if you keep that up then prove the assertion please. > > > > In the UK too. And after world war II we always followed BBC. > > Not that bad ... > > The BBC has switched over to ``Digital Text'' via the Red Button > service on Freeview. This is based on MHEG, and has the advantage > that pretty much all receivers are built around a particular > platform which specifies inclusion of the Red Button services, > a particular EPG, LCNs, and so on. Be that platform Freeview, or > Sky, or Freesat. > > This is not the case in your country -- the public broadcasters > have adopted MHP which has gone over about as well as a lead > balloon. There is also not a specified platform, but rather any > manufacturer can offer a receiver based on the DVB specifications. > Usually teletext support will be built-in to the decoder; also, > most boxes pass the DVB Teletext information to the television > regenerated as the analogue VBI interval which pretty much every > set supports. > > As far as I know, the proposed Eutelsat Viseo platform being > pushed does not specify a MHP- or MHEG-based replacement for > teletext, nor am I aware of any alternative platforms to take > over and mandate a replacement of the current level teletext. > > Can you even find a MHP-capable settop box in the shops today? > Also, as far as I know, the national MHP service was dropped from > terrestrial broadcasting some years ago, and at best there may > be still a regional and minimal service offered by Bayerischer > Rundfunk, but nothing like one finds on Freeview. > > Conditions have diverged too much between the two countries these > days. In the UK, Sky has a lion's share of the market, while I've > barely seen anything but a few sports bars with a Premiere > subscription. Also while the commercial public service > broadcasters in the UK have relied on terrestrial service through > the country, this has not been true of the comparable private > commercial broadcasters in germany, who are not even participating > in terrestrial broadcasting outside of a handful of strategic > centres. Also, teletext in germany is a service of the individual > broadcasters or contracted out in the commercial case, while the > Teletext and Teletext Holidays and such closing in the UK is its > own service. > > > Without support already in place for a transition away from VBI- > based teletext over the coming years, I can't see it happening. > I know that Austria made a big deal of their MHP-based ORF text > service, but I don't know how great a penetration it has. I've > read tht it requires significant bandwidth of the terrestrial > multiplexes, while conventional teletext requires around that of > an audio channel -- back when ZDFvision was sending MHP data plus > AC3 streams terrestrially, I clocked four MHP streams each with a > data rate comparable to a lower-quality audio stream, together > some twice the data rate of each of the three separate teletext > streams. > > > > > > What slow update rate please? > > > What the hell are you talking about, man? > > > > Previously information available there was updated within minutes, now > > in best case every six hours it seems to me. > > I don't know what services you are viewing; those which I use > are updated within seconds of updated data, and happen to be the > first place I turn to for current information. The amount and > quality of information I get from conventional teletext is far > more impressive than what I see on the BBC's Red Button service. > > > barry bouwsma Hi Barry, sorry for delay and thanks for your advice. I know it was already there previously and is best we have. ZDF is becoming very slow in updating news on page 112 and 113. KiKa seems to be already fully commercial. Cheers, Hermann ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-01 9:56 Videotext application crashes the kernel due to DVB-demux patch Chicken Shack 2010-02-01 12:41 ` Andy Walls @ 2010-02-01 13:02 ` Mauro Carvalho Chehab 2010-02-01 13:59 ` Chicken Shack 1 sibling, 1 reply; 38+ messages in thread From: Mauro Carvalho Chehab @ 2010-02-01 13:02 UTC (permalink / raw) To: Chicken Shack; +Cc: linux-media, torvalds, akpm, Andreas Oberritter Chicken Shack wrote: > Hi, > > here is a link to a patch which breaks backwards compatibility for a > teletext software called alevt-dvb. > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > The kernel patch was introduced with kernel 2.6.32-rc1. > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > author, Andreas Oberritter. > > Previous help calls, not only on this list, have been ignored for > reasons that I do not know. > Even distro maintainers have given up and removed the DVB implementation > of alevt from their distro list. > > Is that really what things are up to? > To pull through an API update by kernel patch, but simply dive off with > the usual "Sorry, but I don't have no time" when objections or problems > arise? > > What the hell is going on in those peoples' minds? > > It seems to me that the following disclaimer is worth nothing: > > "If anyone has any objections, please let us know by sending a message > to: Linux Media Mailing List <linux-me...@vger.kernel.org>" > > Volunteers welcome! Who please consacres some time and DVB competence to > give the appropriate hints please? This is the first time I've seen an email about this subject from you at the linux-media ML. Also, I didn't noticed any report or patches from distro packagers about a driver issue related to videotext. Also, there were no reply to the announcement that the patch would be sent upstream (the email you're pointing). Maybe I missed something. If you found a bug on a patch that were already applied upstream, the better procedure is to fill a bug report at kernel.bugzilla.org. Please enclose there the full dmesg output and any other descriptions that may help the developers to know what card/driver/application you're using, and how to reproduce the bug. The application logs may also be useful, but please don't mix it together with the dmesg. Before reporting the bug, please test the latest stable kernel version (currently 2.6.32.7) first, to be sure that this regression weren't correct yet, or, even better, the latest development kernel, since the bug may already be solved. The latest development kernel is found at the -git tree: http://git.linuxtv.org/v4l-dvb.git -- Cheers, Mauro ^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: Videotext application crashes the kernel due to DVB-demux patch 2010-02-01 13:02 ` Videotext application crashes the kernel due to DVB-demux patch Mauro Carvalho Chehab @ 2010-02-01 13:59 ` Chicken Shack 0 siblings, 0 replies; 38+ messages in thread From: Chicken Shack @ 2010-02-01 13:59 UTC (permalink / raw) To: Mauro Carvalho Chehab; +Cc: linux-media, torvalds, akpm, Andreas Oberritter Am Montag, den 01.02.2010, 11:02 -0200 schrieb Mauro Carvalho Chehab: > Chicken Shack wrote: > > Hi, > > > > here is a link to a patch which breaks backwards compatibility for a > > teletext software called alevt-dvb. > > > > http://www.mail-archive.com/linuxtv-commits@linuxtv.org/msg04638.html > > > > The kernel patch was introduced with kernel 2.6.32-rc1. > > It was Signed-off-by Brandon Philips, Mauro Carvalho Chehab and its > > author, Andreas Oberritter. > > > > Previous help calls, not only on this list, have been ignored for > > reasons that I do not know. > > Even distro maintainers have given up and removed the DVB implementation > > of alevt from their distro list. > > > > Is that really what things are up to? > > To pull through an API update by kernel patch, but simply dive off with > > the usual "Sorry, but I don't have no time" when objections or problems > > arise? > > > > What the hell is going on in those peoples' minds? > > > > It seems to me that the following disclaimer is worth nothing: > > > > "If anyone has any objections, please let us know by sending a message > > to: Linux Media Mailing List <linux-me...@vger.kernel.org>" > > > > Volunteers welcome! Who please consacres some time and DVB competence to > > give the appropriate hints please? Hello Mauro, > > This is the first time I've seen an email about this subject from you > at the linux-media ML. A few days ago there has been some Emil Meyer mentioning the same thing using alevt-dvb in connection with two Hauppauge DVB-T cards. But you are highly under charge, so you cannot receive anything. > Also, I didn't notice any report or patches from distro > packagers about a driver issue related to videotext. I got no answer from Andreas Rottmann yet. He is the Debian maintainer of the "official" alevt-1.6.2. He spreaded a DVB-patched version under the roof of Debian. Concerning Gentoo I read somewhere in the Internet that the Gentoo maintainer withdrew all DVB patches of alevt with the consequence that you can only use this "classic" teletext app with analogue cards. So I do neither exaggerate nor do I lie, OK? > Also, there were no reply > to the announcement that the patch would be sent upstream (the email you're > pointing). Maybe I missed something. I know that I am a bit late - one point for you, mea culpa. Sorry! > If you found a bug on a patch that were already applied upstream, the > better procedure is to fill a bug report at kernel.bugzilla.org. Please > enclose there the full dmesg output and any other descriptions that may > help the developers to know what card/driver/application you're using, and > how to reproduce the bug. The application logs may also be useful, but please > don't mix it together with the dmesg. This is too bureaucratic and too official - I prefer the inofficial way, directly contacting relevant people in relevant forums. I've been practising that for years now. > Before reporting the bug, please test the latest stable kernel version (currently > 2.6.32.7) first, to be sure that this regression weren't correct yet, or, even > better, the latest development kernel, since the bug may already be solved. Peanuts! I tested the latest v4l HG, and as a kind of normality, I am using the latest rc candidate being published by Linus. Normally that "system of early warning" works well, but sometimes you're missing some things. That's the way it is. Shit happens. But if too many people dive off with that typical "I do not have any time left-gesture" then this is sonmething that really frustrates you. > The latest development kernel is found at the -git tree: > http://git.linuxtv.org/v4l-dvb.git > Guess I will supply the necessary info to Andy. We will see what happens. Publically I want to mention the following points: 1. Within the first call of alevt-dvb you do see the printout that I already integrated in my mail. 2. If you call alevt a second time from the command line after that it will hang your system so that nothing goes without hard reset. 3. Having a look at the code of alevt-dvb I would say that its DVB-implementation looks a bit crude to me. This crudeness shows up in so far that alevt-dvb does not continue working and does not follow if the DVB channel is being switched by some external application like kaffeine, xine-ui, mplayer etc. Instead alevt-dvb hangs and does not accept a normal quit (or call it normal exit or whatever). The only ways to get it finished then are: a. killall -9 alevt or b. CTRL-C if you started alevt-dvb from the command line before. So basically there are two problems to solve: a. the channel change problem (i. e. NOT accepting a quit if channel is being changed) b. the kernel oops due to the new demux design If both problems are solved I can publish a completely freshed up and cleaned up version of the protagonist of all teletext programs. The whole Linux community will be the winner of that. There will be full analogue and DVB compatibility. If this is no motivation, then what else is a motivation please? Regards CS ^ permalink raw reply [flat|nested] 38+ messages in thread
end of thread, other threads:[~2010-03-11 4:00 UTC | newest] Thread overview: 38+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-02-01 9:56 Videotext application crashes the kernel due to DVB-demux patch Chicken Shack 2010-02-01 12:41 ` Andy Walls 2010-02-02 2:00 ` Andy Walls 2010-02-02 9:11 ` Chicken Shack 2010-02-02 12:52 ` Andy Walls 2010-02-03 1:01 ` hermann pitton 2010-02-04 12:54 ` Andy Walls 2010-02-04 14:07 ` Chicken Shack 2010-02-05 2:21 ` Need to discuss method for multiple, multiple-PID TS's from same demux (Re: Videotext application crashes the kernel due to DVB-demux patch) Andy Walls 2010-02-05 2:37 ` hermann pitton 2010-02-05 11:39 ` Chicken Shack 2010-02-05 12:19 ` HoP 2010-02-05 18:29 ` Andy Walls 2010-02-05 13:19 ` Andreas Oberritter 2010-02-05 13:28 ` Mauro Carvalho Chehab 2010-02-05 13:58 ` Chicken Shack 2010-02-05 15:31 ` Chicken Shack 2010-02-05 19:22 ` Andy Walls 2010-02-05 20:27 ` Andreas Oberritter 2010-02-05 21:07 ` Mauro Carvalho Chehab 2010-02-05 21:46 ` hermann pitton 2010-02-05 22:32 ` Chicken Shack 2010-02-05 23:12 ` hermann pitton 2010-02-05 23:39 ` Chicken Shack 2010-02-06 0:25 ` hermann pitton 2010-02-06 8:55 ` "However, if you don't want to lose your freedom, you had better not follow him." " Chicken Shack 2010-02-07 3:58 ` hermann pitton 2010-02-07 12:11 ` Chicken Shack 2010-02-07 14:43 ` Andy Walls 2010-02-07 15:29 ` Chicken Shack 2010-02-07 18:10 ` HoP 2010-02-07 18:46 ` Chicken Shack 2010-02-07 19:13 ` HoP 2010-02-07 19:41 ` Chicken Shack 2010-02-06 12:02 ` Need to discuss method for multiple, multiple-PID TS's from same demux " BOUWSMA Barry 2010-03-11 4:00 ` hermann pitton 2010-02-01 13:02 ` Videotext application crashes the kernel due to DVB-demux patch Mauro Carvalho Chehab 2010-02-01 13:59 ` Chicken Shack
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox