There are a whole pile of rules and precedents over this. For one, a
certain code size limit applies, as does the notion of whether there's
any creative input (for example, constants and structure definitions are
not considered creative, because they are simply required for an
interface to work).
One argument is that since the interfaces require you to manipulate the
locks in a particular way, and only a given set of instructions will do
those manipulations correctly, then any correct implementation will
contain those instructions. Whether they get them from including a
particular header, or by having their own versions of those
instructions, it all looks the same in the binary. It would be hard
work to claim the presence of those instructions constitutes a derived
work, any more than you could claim the instructions which set the stack
or registers up for a function call constitute a derived work.
J
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/