Re: firedtv and removal of old IEEE1394 stack
On Feb 09 Jan Hoogenraad wrote: For a problem description, and workaround, see: http://linuxtv.org/hg/~jhoogenraad/ubuntu-firedtv/ Do you mean http://linuxtv.org/hg/~jhoogenraad/ubuntu-firedtv/rev/c8e14191e48d Disable FIREDTV for debian/ubuntu distributions with bad header files? I still don't see what the problem is. If you have a kernel without drivers/ieee1394/*, then you also must have a kernel .config without CONFIG_IEEE1394. Et voilĂ , firedtv builds fine (if CONFIG_FIREWIRE is y or m). So, please make sure that .config and kernel sources match. IOW the workaround c8e14191e48d addresses the wrong issue. Don't disable CONFIG_DVB_FIREDTV; just make sure that the dependency of CONFIG_DVB_FIREDTV_IEEE1394 on CONFIG_IEEE1394 is taken into account, like in the mainline kernel's build system. and https://bugs.launchpad.net/ubuntu/+source/linux-kernel-headers/+bug/134222 Well, if you move arbitrary drivers/*/*.h files somewhere else where they were never intended to be exported to, and supplant Kconfig by some homegrewn ad hoc configuration builder, then you are of course on your own. Still, my above comment on .config having to match the kernel sources applies just as well and fully describes the problem and its solution. :-) -- Stefan Richter -=-==-== --=- -=--= http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
On Feb 09 Stefan Richter wrote: https://bugs.launchpad.net/ubuntu/+source/linux-kernel-headers/+bug/134222 Correction: Bug 134222 has *nothing* to do with the removal of the older ieee1394 stack. The bug is about 1. a defect during assembling the linux-kernel-headers package. The drivers/ieee1394/* files do not belong into such a package. They are driver source files, not exported kernel headers. Don't export kernel source files as linux-headers if they are not meant to be exported. 2. the dvb backports relying on this broken package. Tough luck. You want to build a kernelspace driver whose sources include other kernel sources? Well, include these kernel sources, not some arbitrary userland source files. -- Stefan Richter -=-==-== --=- -=--= http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
Em 09-02-2011 11:22, Stefan Richter escreveu: On Feb 09 Jan Hoogenraad wrote: For a problem description, and workaround, see: http://linuxtv.org/hg/~jhoogenraad/ubuntu-firedtv/ Do you mean http://linuxtv.org/hg/~jhoogenraad/ubuntu-firedtv/rev/c8e14191e48d Disable FIREDTV for debian/ubuntu distributions with bad header files? I still don't see what the problem is. If you have a kernel without drivers/ieee1394/*, then you also must have a kernel .config without CONFIG_IEEE1394. Et voilĂ , firedtv builds fine (if CONFIG_FIREWIRE is y or m). So, please make sure that .config and kernel sources match. IOW the workaround c8e14191e48d addresses the wrong issue. Don't disable CONFIG_DVB_FIREDTV; just make sure that the dependency of CONFIG_DVB_FIREDTV_IEEE1394 on CONFIG_IEEE1394 is taken into account, like in the mainline kernel's build system. The out-of-tree build system tries to match the CONFIG_foo symbols found on distros where this is possible, but sometimes the config symbol changes its name. So, the out-of-tree building system has also a per-kernel version list of drivers that need to be disabled with some older kernel versions (vanilla kernels), where the driver is known to not work or compile. The problem arises when a distro-patched kernel uses a newer version of a core ABI and not providing backport support for the old ABI. Ubuntu has a bad history of doing things like that. On some cases, their devel kernel packages don't match some drivers shipped with it. For example, some (all?) versions of Ubuntu distribute the alsa headers at the kernel package that don't match the alsa core ABI found on it. So, if you compile a kernel driver based on it, the driver won't work, as symbols won't match (to be worse, it generally compiles fine). The firewire and alsa drivers compile and run fine on other distros like Fedora and RHEL. I never tried with other distros, so I can't provide a more complete list, but I suspect that it will also work with Suse/Open Suse, as they also try to preserve ABI backports. The only fix for it is to disable the compilation of such drivers for the out-of-tree build if a broken distro kernel is detected. That's the approach of Jan's patches. Cheers, Mauro. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
Em 09-02-2011 12:24, Stefan Richter escreveu: On Feb 09 Stefan Richter wrote: https://bugs.launchpad.net/ubuntu/+source/linux-kernel-headers/+bug/134222 Correction: Bug 134222 has *nothing* to do with the removal of the older ieee1394 stack. Agreed. The bug is about 1. a defect during assembling the linux-kernel-headers package. Yes. The drivers/ieee1394/* files do not belong into such a package. They are driver source files, not exported kernel headers. Don't export kernel source files as linux-headers if they are not meant to be exported. It would be fine if they match the ABI symbols found on the vanilla kernel for the same version. If they don't match, the media backport system could have a fix, as there are several cases where the backport system detects for some specific ABI changes, and apply some solution that will make the driver compile and work with that ABI version. 2. the dvb backports relying on this broken package. Tough luck. You want to build a kernelspace driver whose sources include other kernel sources? Well, include these kernel sources, not some arbitrary userland source files. I partially agree The media backport tree is meant only to help people to test media drivers. It is not meant to be used on production, as nobody is actually doing tests to check if the backports are fine for some specific distro. So, it is an use with your own risk approach. If it doesn't work... well, this can happen. People are free to fix and send us patches for it. The real solution is to do a real backport for some specific distro. The media_build might help to point where the ABI differences are, but some additional changes may be required to be sure that the module will work fine. On the other hand, adding the Firewire stack at the media building tree would probably add more pain, especially for the ones using other firewire hardware and/or other distros. In any case, I don't think that Stefan or any Firewire upstream developer should do anything to solve it. It is a problem that needs to be addressed by Ubuntu people, and/or by the developers that want to test the Firwire driver with the Ubuntu-shipped kernel. Cheers, Mauro. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
On Feb 03 Hans Verkuil wrote: Hi Stefan, I discovered (somewhat to my surprise) that the IEEE1394 stack was removed from the kernel in 2.6.37. Your commit 66fa12c571d35e3cd62574c65f1785a460105397 indicates that the ieee1394 firedtv code can be removed in an indepedent commit. It seems that this was forgotten since the firedtv-1394.c source is still present. It is not forgotten, just delayed. :-) Is it OK if I remove it? I assume that anything that depends on DVB_FIREDTV_IEEE1394 can be deleted. This stuff can be removed indeed, and will be. After that, some further simplifications are possible since the backend abstraction is no longer necessary. It would be nice to remove this since building the firedtv driver for older kernels always gives problems on ubuntu due to some missing ieee1394 headers. How so? Then there is something wrong with the backported sources. If CONFIG_IEEE1394 is not defined, neither make nor gcc ever see anything that includes ieee1394 headers. Vice versa regarding CONFIG_FIREWIRE and the newer firewire headers. -- Stefan Richter -=-==-== --=- --=-= http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
On Feb 05 Stefan Richter wrote: On Feb 03 Hans Verkuil wrote: It would be nice to remove this since building the firedtv driver for older kernels always gives problems on ubuntu due to some missing ieee1394 headers. How so? Then there is something wrong with the backported sources. Or with the backports' build system perhaps. -- Stefan Richter -=-==-== --=- --=-= http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: firedtv and removal of old IEEE1394 stack
On Saturday, February 05, 2011 15:21:22 Stefan Richter wrote: On Feb 03 Hans Verkuil wrote: Hi Stefan, I discovered (somewhat to my surprise) that the IEEE1394 stack was removed from the kernel in 2.6.37. Your commit 66fa12c571d35e3cd62574c65f1785a460105397 indicates that the ieee1394 firedtv code can be removed in an indepedent commit. It seems that this was forgotten since the firedtv-1394.c source is still present. It is not forgotten, just delayed. :-) Is it OK if I remove it? I assume that anything that depends on DVB_FIREDTV_IEEE1394 can be deleted. This stuff can be removed indeed, and will be. After that, some further simplifications are possible since the backend abstraction is no longer necessary. I posted a patch for this already after I discovered that it wasn't build at all anymore due to incorrect Kconfig dependencies. If you can Ack this patch (or comment on it if there are problems with it), then that would be very helpful. http://git.linuxtv.org/hverkuil/media_tree.git?a=commit;h=f02c316436eef3baf349c489545edc7ade419ff6 It just removes the 1394 parts and fixes the Kconfig dependencies. It would be nice to remove this since building the firedtv driver for older kernels always gives problems on ubuntu due to some missing ieee1394 headers. How so? Then there is something wrong with the backported sources. If CONFIG_IEEE1394 is not defined, neither make nor gcc ever see anything that includes ieee1394 headers. Vice versa regarding CONFIG_FIREWIRE and the newer firewire headers. It is possible using a special build environment to build the latest media drivers on older kernels. This is a service to our end-users and hopefully increases our test coverage. But if you compile the latest drivers against an older kernel that still has the IEEE1394 stack, then anything that still depends on it gets enabled again. Anyway, this is very specific to the media subsystem and does not affect the current kernel. It will resolve itself automatically once the IEEE1394 code is removed. Regards, Hans -- Hans Verkuil - video4linux developer - sponsored by Cisco -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
firedtv and removal of old IEEE1394 stack
Hi Stefan, I discovered (somewhat to my surprise) that the IEEE1394 stack was removed from the kernel in 2.6.37. Your commit 66fa12c571d35e3cd62574c65f1785a460105397 indicates that the ieee1394 firedtv code can be removed in an indepedent commit. It seems that this was forgotten since the firedtv-1394.c source is still present. Is it OK if I remove it? I assume that anything that depends on DVB_FIREDTV_IEEE1394 can be deleted. It would be nice to remove this since building the firedtv driver for older kernels always gives problems on ubuntu due to some missing ieee1394 headers. Regards, Hans -- Hans Verkuil - video4linux developer - sponsored by Cisco -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html