Hi,
the current implementation of include/list.h is taken from Linux 2.4.0 and possibly licensed under GPL-2.0. If the implementation isn't trivial, this might make libasound a derivative work and extend the viral effect to clients of the library. See http://mailman.alsa-project.org/pipermail/alsa-devel/2014-December/085261.ht... http://mailman.alsa-project.org/pipermail/alsa-devel/2014-December/085262.ht... http://mailman.alsa-project.org/pipermail/alsa-devel/2014-December/085325.ht... http://mailman.alsa-project.org/pipermail/alsa-devel/2015-January/086754.htm... for previous discussion.
This patch series avoids this ambiguity by replacing the list implementation with a version I modified from Rusty Russell's MIT-licensed list at http://ccodearchive.net/info/list.html
The two patches replace the list implementation and adapt the alsa-lib code accordingly. They are intended to be squashed together when merging.
[PATCH 1/2] Replace list.h with MIT-licensed implementation [PATCH 2/2] Adapt to changes in the linked list API