亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

C語言EXPORT_SYMBOL_(INTERNAL and/or GPL)

2019-11-17 05:40:26
字體:
來源:轉載
供稿:網友

  Submitted by Jeremy Andrews on Thursday, APRil 04, 2002 - 16:20

Another interesting debate recently ensued on the lkml, this time with kernel guru Alan Cox in the middle. The topic was related to the GPL (hence the emotions involved), though specifically referring to the changing of an EXPORT_SYMBOL_GPL flag to EXPORT_SYMBOL. Among the questions raised is whether this infringes upon a developer's rights...

MUCh of the debate follows, involving many kernel notables, including Andrea Arcangeli, Alan Cox, Rik van Riel, Ingo Molnar, and Linus Torvalds. Many good points are raised on both sides of the issue, making for an interesting read...

--------------------------------------------------------------------------------
From: Andrea Arcangeli
Cc: linux-kernel-mailing-list
Subject: Re: [PATCH 2.5.5] do export vmalloc_to_page to modules...
Date: Wed, 3 Apr 2002 18:21:18 +0200

On Wed, Feb 20, 2002 at 11:01:27AM -0500, Arjan van de Ven wrote:
> Now if it should be EXPORT_SYMBOL or EXPORT_SYMBOL_GPL() I leave to Ingo

It has to be EXPORT_SYMBOL. Requiring non GPL drivers to walk pagetables
by hand is pointless. we should definitely recommend those driver
authors to use vmalloc_to_page, in particular if the drivers are not
GPL.

To see it in another way If we make vmalloc_to_page linkable only by GPL
drivers, then we should do the same with all the other functionalities
too starting from map_user_kiobuf etc...

Infact I'm not really sure the _GPL tag makes sense in the first place.
If an interface shouldn't be used by a binary only module, why should it
be used by a GPL module? It doesn't make any sense to me, of course
I'm looking at it from a technical prospective. If your grand plan is to
forbid a non GPL module to call vmalloc/kmalloc/alloc_pages, then the
non GPL module developer will be in great pain I see, but that still
doesn't make any sense to me because the rule is that binary only
modules are legal. Not that I will ever use binary only modules myself,
not that I will ever do anything to help binary only modules, but I
don't either do anything to explicitly hurt them, I just ignore them.

--- 2.4.19pre5aa1/kernel/ksyms.c.~1~ Sun Mar 31 03:37:18 2002
+++ 2.4.19pre5aa1/kernel/ksyms.c Wed Apr 3 17:53:29 2002
@@ -114,7 +114,7 @@
EXPORT_SYMBOL(kfree);

EXPORT_SYMBOL(vfree);
EXPORT_SYMBOL(__vmalloc);
-EXPORT_SYMBOL_GPL(vmalloc_to_page);
+EXPORT_SYMBOL(vmalloc_to_page);
#ifndef CONFIG_DISCONTIGMEM
EXPORT_SYMBOL(contig_page_data);
EXPORT_SYMBOL(mem_map);
Andrea



From: Alan Cox
Subject: Re: [PATCH 2.5.5] do export vmalloc_to_page to modules...
Date: Wed, 3 Apr 2002 18:43:10 +0100 (BST)

> EXPORT_SYMBOL(vfree);
> EXPORT_SYMBOL(__vmalloc);
> -EXPORT_SYMBOL_GPL(vmalloc_to_page);
> +EXPORT_SYMBOL(vmalloc_to_page);

The authors of that code made it GPL. You have no right to change that. Its
exactly the same as someone taking all your code and making it binary only.

You are
- subverting a digital rights management system [5 years jail in the USA] - breaking a license


but worse than that you are ignoring the basic moral rights of the authors
of that code.

Alan



From: Andrea Arcangeli
Subject: Re: [PATCH 2.5.5] do export vmalloc_to_page to modules...
Date: Wed, 3 Apr 2002 20:13:22 +0200

On Wed, Apr 03, 2002 at 06:43:10PM +0100, Alan Cox wrote:
> The authors of that code made it GPL. You have no right to change that. Its
> exactly the same as someone taking all your code and making it binary only.
>
> You are
> - subverting a digital rights management system
> [5 years jail in the USA]
> - breaking a license
>
> but worse than that you are ignoring the basic moral rights of the authors
> of that code.

The vmalloc_to_page function is been patched into the kernel without any
special restriction or requirement for such code, there is not a single
comment about a change of licence (infact it's probably been cut and
pasted from one of the dozen of device drivers doing that by hand
previously, just changing the retval to a struct page, so changing the
licence would been probably illegal from your part in the first place).

Now from your comment it seems with your _GPL tag you meant to give
special licence to the function, that is not obvious at all, I don't
find it written anywhere, not even in your above email, so I recommend
you to licence your code properly ASAP if you don't want to use the
standard licence of the kernel code (like bsdcomp and other piece of
sourcecode deos).

Also please realize that you are ridicolous posting emails like the
above, any real lawyer will laught at you if you pretend me to go in
jail for 5 years in the US because you think such a "_GPL" four letters

in ksyms.c enforce in a court a different licence in a function in
memory.c covered by the usual kernel license (like map_user_kiobuf),
despite there is not a single line of english out there written by the
author to confirm your assumption. Not even a kernel hacker can guess
you meant to change the licence of the code if you don't even write a
line about a change of licence anywhere, period. Not even there is
written anywhere in the kernel that such _GPL tags are meant to change
the licence.

Infact it's the other way around, if the author of vmalloc_to_page
wanted really to change the licence as it seems while reading your above
email (not confirmed yet), as soon as he documents his request properly,
I will tell him that I refuse him to do that, I'm one of the authors of
memory.c so that is my right to enforce it, as it was my right for Linus
to refuse my code if I wanted to use a difference licence. The reason I
refuse a change of licence for a basic functionality in memory.c, is
that those are lawyers tricks that can only hurt linux. If everybody
that writes a function starts crying like you did above it will be a
true mess, and at the very least such kind of tricks should be put in a
separate file.

So if you want to change the module licensing and avoid binary only
drivers, go and ask all the copyright holders to agree on that, once you
have the agreement Linus can release a new kernel tarball with the new
licence for all the normal kernel code, i.e. pure GPL. But for the core
kernel code it must be possible to intermix it without worrying about
licensing issues, so no special licences within memory.c, I will enforce
that, period.

If there's any expert out there that can check the correctness of what I
said I'd be grateful, thanks.

Andrea



From: Alan Cox
Subject: Re: [PATCH 2.5.5] do export vmalloc_to_page to modules...
Date: Wed, 3 Apr 2002 20:11:49 +0100 (BST)

> The vmalloc_to_page function is been patched into the kernel without any
> special restriction or requirement for such code, there is not a single

Untrue

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性猛交xxxx黑人猛交| 国产日韩在线看片| 欧美理论在线观看| 久久久亚洲欧洲日产国码aⅴ| 久久久精品日本| 国产日韩在线观看av| 91精品久久久久久久久不口人| 色樱桃影院亚洲精品影院| 欧美高清videos高潮hd| 亚洲欧美自拍一区| 日本一区二区在线免费播放| 亚洲二区在线播放视频| 成人黄色片在线| 亚洲尤物视频网| 国产精品久久久久秋霞鲁丝| 中文字幕日韩免费视频| 欧美xxxx18性欧美| 97精品伊人久久久大香线蕉| 91社区国产高清| 国产成人精品午夜| 亚洲欧美成人一区二区在线电影| 欧美国产日韩一区二区| 欧美日韩国产麻豆| 这里精品视频免费| 疯狂蹂躏欧美一区二区精品| 欧美成人午夜激情| 91在线视频成人| 成人免费看吃奶视频网站| 精品国产一区二区三区久久久狼| 97香蕉久久夜色精品国产| 色噜噜狠狠狠综合曰曰曰88av| 一区二区三区在线播放欧美| 日本精品中文字幕| 91精品国产高清自在线| 麻豆国产va免费精品高清在线| 91在线中文字幕| 亚洲国产中文字幕久久网| 日韩亚洲欧美中文高清在线| 成人福利视频在线观看| 日韩欧美在线播放| 亚洲国产精品网站| 尤物yw午夜国产精品视频明星| 亚洲精品自在久久| 最近2019中文免费高清视频观看www99| 97精品久久久| 8090理伦午夜在线电影| 欧美一区二区色| 精品国产欧美一区二区五十路| 久久久精品久久久| 欧美成人精品一区| 久久久久久国产精品久久| 自拍偷拍亚洲精品| 中文字幕国产精品久久| 国产精品99导航| 久久久免费在线观看| 26uuu久久噜噜噜噜| 亚洲精品国精品久久99热一| 亚洲天堂免费视频| 亚洲精品久久久久久久久久久久久| 九九热最新视频//这里只有精品| 日韩欧美在线一区| 亚洲免费电影一区| 欧美激情亚洲另类| 亚洲高清免费观看高清完整版| 国产丝袜一区二区三区免费视频| 欧美www在线| 国产日韩中文在线| 91精品国产自产在线老师啪| xx视频.9999.com| 最新日韩中文字幕| 国产丝袜一区二区三区免费视频| 久久综合久中文字幕青草| 一本大道久久加勒比香蕉| 欧美成人午夜视频| 欧美日韩国产va另类| 日韩中文字幕精品| 日本三级久久久| 国产精品成人一区| 97精品伊人久久久大香线蕉| 久久久久久久国产精品视频| 一本色道久久综合狠狠躁篇的优点| 久久精品视频免费播放| 国产三级精品网站| 久久久久久高潮国产精品视| 一区二区三区四区精品| 亚洲视频欧美视频| 国产精品九九久久久久久久| 亚洲福利精品在线| 久久久精品影院| 国产一区视频在线播放| 夜夜躁日日躁狠狠久久88av| 精品国产一区二区三区久久狼黑人| 亚洲人成电影网站色www| 国产精品va在线| 911国产网站尤物在线观看| 亚洲毛片在线观看.| 欧美老女人性视频| 久久久精品电影| 国产精品久久久久免费a∨大胸| 欧美大片欧美激情性色a∨久久| 韩国三级日本三级少妇99| 亚洲欧美激情四射在线日| 日韩亚洲欧美中文高清在线| 中文字幕免费精品一区高清| 精品视频一区在线视频| 最近2019年中文视频免费在线观看| 国产91露脸中文字幕在线| 欧美黑人一区二区三区| 亚洲老司机av| 成人h视频在线观看播放| 国产精品一区二区在线| 亚洲韩国日本中文字幕| 亚洲精品成a人在线观看| 欧美中文在线字幕| 亚洲精品福利视频| 成人网在线观看| 91av免费观看91av精品在线| 青青草精品毛片| 国产精品久久久久久久久粉嫩av| 成人午夜在线影院| 91地址最新发布| 久久人人爽人人爽人人片亚洲| 欧美日韩高清在线观看| 亚洲精品国精品久久99热一| 这里只有精品在线播放| 久久福利视频导航| 色综合五月天导航| 日韩在线观看免费全集电视剧网站| 日韩精品视频在线免费观看| 国产精品久久久久久久久借妻| 国产成人亚洲综合| 欧美午夜无遮挡| 国产精品免费电影| 国产精品亚洲视频在线观看| 国产精品第100页| 在线观看免费高清视频97| 亚洲国产成人爱av在线播放| 欧美精品www在线观看| 国产在线不卡精品| 国产精品吹潮在线观看| 亚洲人成在线电影| 国内精品久久影院| 欧美另类极品videosbestfree| 亚洲黄色www网站| 欧美在线日韩在线| 欧美激情伊人电影| 日韩av成人在线| 日韩精品视频在线免费观看| 国产精品老女人精品视频| 粉嫩老牛aⅴ一区二区三区| 久久在线免费观看视频| 日韩h在线观看| 亚洲欧美日韩天堂一区二区| 久久国产视频网站| 一区二区三区日韩在线| 欧美在线视频免费播放| 亚洲影视中文字幕| 欧美国产中文字幕| 久久久免费观看| 成人黄色午夜影院| 亚洲精品自产拍| 久久精品91久久久久久再现| 亚洲天堂成人在线视频| 国产成人一区二区|