Hacker News new | past | comments | ask | show | jobs | submit login

> I can't write and distribute a proprietary Linux kernel module using EXPORT_SYMBOL_GPL functions.

That is because by using EXPORT_SYMBOL_GPL functions you are invoking code that is GPL'ed. If you made a clean room implmentation of a kernel that exposed the same interfaces as Linux, you could licence it anyway you want.




By calling any kernel API you are invoking code that is GPL'd. It is not like EXPORT_SYMBOL functions are BSD-licensed (and even if they were, they themselves call GPL-licensed code). In fact even making a normal system call from userspace invokes GPL'd code.

So I think there are only two interpretations. One is that EXPORT_SYMBOL_GPL attempts to claim a copyright on the interface, and not the code. The other is that redistributing a GPL-incompatible object that invokes GPL'd code is always infringement, and (possibly) the special exception for userspace in Linux's copyright statement, https://github.com/torvalds/linux/blob/master/LICENSES/excep... , is the only thing that makes normal userspace processes non-infringing, and that regular EXPORT_SYMBOL is basically also an explicit exception (which may or may not even be legally meaningful - during the dma-buf discussion, various copyright holders expressed that they did not interpret EXPORT_SYMBOL as an exception).


>By calling any kernel API you are invoking code that is GPL'd.

What does this have to do with anything? If you think this is a relevant statement you are severely confused about the current subject matter and what is being argued in court.

Please explain how the above statement is relevant to the current case.


That sentence is a reply to the comment above it, which states, "That is because by using EXPORT_SYMBOL_GPL functions you are invoking code that is GPL'ed."

My claim is precisely that this is not a relevant statement.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: