On Thu, Aug 9, 2012 at 8:42 PM, Ann Davis <andavis@xxxxxxxx> wrote: > Hi all, Hi, (BTW we have a new mailing list for backport stuff: backports@xxxxxxxxxxxxxxx. I CC'ed that too) > > 1) Is the intention for backporters to pull the compat source into their own build structure, build the compat module themselves, then provide it along with their backported driver? > Normally the compat-* trees (compat-drivers for example) copies the compat tree into itself, builds it and finally builds/links drivers that use it. So in the simplest case you end up with compat.ko and let's say foobar.ko which depends on compat.ko. Then when you load foobar.ko, it loads compat.ko. That's all. > 2) How to address the problem of providing 2 different drivers pulled from different upstream kernel versions? This would entail 2 different compat modules, right? Seems like there would be a conflict. The compat module will always be one as it only backports the low level API changes that will allow building the new drivers (wlan, eth, bluetooth, drm, etc. etc whatever you want to backport) against the kernels that it supports (2.6.24 through the last major stable). Instead you will have 2 different driver builds for a specific device using the same compat module. (If I correctly get what you asked and I'm not mistaken). > PS. I'm working on a patch that includes SUSE kernels into the compat project. So Andy, I'm interested to see what you're doing from the RHEL 6 perspective. Right now I'm just modifying bin/get-compat/kernels and bin/ckmake but I don't know if this is structurally a reasonable approach. I.e., should there be separate "get-<distro>-compat-kernels" scripts for separate distros? I'd love to hear what other folks are doing on this front so I can head in the same general direction. the get-compat-kernels and ckmake scripts just build-tests the compat module against the supported kernel versions 2.6.24 through the latest stable major version. It uses Ubuntu vanilla kernels to do this. The scripts are distro-independent. ckmake only builds against the kernels having a "-generic" suffix in /lib/modules. Probably you would want to build-test compat against SUSE kernels so simply you can modify the below line in ckmake (line ~217) for i in $(find $KSRC_PREFIX/lib/modules/ -type d -name \*generic\* to filter the SUSE kernels instead of "-generic" Ubuntu kernels. (For example for Fedora -name \.fc\* will suffice) This will test the compat compilation against SUSE kernels. -- Ozan Çağlayan -- To unsubscribe from this list: send the line "unsubscribe backports" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html