The current 99-non-digium-and-oslec patch is rather outdated. I've spinned a new one based on the git repository available at git://gitorious.org/dahdi-extra/dahdi-linux-extra.git and will submit it here now. I need this as in interim going to 2.6.0 as I've picked up a few bugs with the existing patch (kernel panic and configure bug). Current patch was intended for 2.4 dahdi branch, oslec works, zaphfc does not. The patch also adds additional support for the following cards: * ap400 * opvxd115 And improves on the OSLEC support (which btw is a clone of the kernel tree, but requires an adaptor, which is why the dahdi_echocan_oslec module, to bridge between the echo.ko module's API and the wanted dahdi_echocan module (from what I can see). Reproducible: Always
Created attachment 302387 [details, diff] 99-non-digium-and-oslec.diff Updated patch.
Created attachment 302561 [details, diff] 99-non-digium-and-oslec.diff Fix an indexing bug that tzafrir let slip through. Fix as per discussion with tzafrir on irc, patch prepared, need to still mail it to him. With this I'm having a few issues with parallel builds and also with stuff compiling during "merge" phase - help in fixing those would be appreciated - will also put me in a position to attack the dahdi 2.6.0 ebuild (I'm also prepared to prepare a non-digium-hardware-and-oslec patch for that branch already).
Created attachment 303643 [details, diff] parallel_build_oct612x_separate_module.patch The tzafrir patch introduces a race condition on the build of the oct612x objects, this patch attempts to split out the oct612x objects (shared by wct4xxp and opvxd115 modules) into a separate .ko file that is dynamically loaded by wct4xxp.ko and opvxd115.ko. Atm it builds but still issues a few warnings (during modpost): WARNING: "Oct6100UserDriverWriteApi" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserDriverReadBurstApi" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserMemCopy" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserReleaseSerializeObject" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserDriverWriteBurstApi" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserSeizeSerializeObject" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserDriverWriteSmearApi" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserCreateSerializeObject" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserMemSet" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserDriverReadApi" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserGetTime" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: "Oct6100UserDestroySerializeObject" [/var/tmp/portage/net-misc/dahdi-2.6.0/work/dahdi-linux-2.6.0/drivers/dahdi/oct612x.ko] undefined! WARNING: modpost: Found 1 section mismatch(es). These warnings eventually end up preventing the compiled oct612x module from loading into a running kernel.
Created attachment 303645 [details, diff] parallel_build_oct612x_separate_module.patch Updated, fixed patch. Should work for both dahdi 2.5.0.2 as well as 2.6.0. Needs to apply after the non-digium patch (recommend moving digium patch closer into series and applying this after).
+*dahdi-2.5.0.2-r4 (28 Feb 2012) + + 28 Feb 2012; Tony Vroon <chainsaw@gentoo.org> +dahdi-2.5.0.2-r4.ebuild: + Actually *use* the new patch by Stefan "stkn" Knoblich, my apologies. Jaco + Kroon demonstrates to Digium how to do a parallel safe build, closing bug + #404407.