EXPORT_SYMBOL_GPL(paravirt_ops);

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chris Wright wrote:
> * Zachary Amsden (zach at vmware.com) wrote:
>   
>> EXPORT_SYMBOL_GPL is still possible - if you patch over every op in 
>> paravirt_ops.  Then only the paravirt modules need to be GPL, not all 
>> modules.
>>     
>
> Problem is the pervasive nature.  So any old module that was doing
> local_irq_disable() will need access to the paravirt_ops structure via
>
> local_irq_disable() -> raw_local_irq_disable -> paravirt_ops.irq_disable()
>   
> IOW, all modules need paravirt_ops access, otherwise non-GPL modules
> will fail to load with "Unknown symbol paravirt_ops."  We can't make an
> interface change like that.
>   

But my point is that if you patch everything in the paravirt_ops struct, 
no module other than the paravirt_ops backend code needs paravirt_ops 
access, so paravirt_ops can still be GPL only.  The problem is you would 
need to patch everything.

Zach


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux