1*390f915aSHu Haowen.. SPDX-License-Identifier: GPL-2.0 2*390f915aSHu Haowen 3*390f915aSHu Haowen.. SPDX-License-Identifier: GPL-2.0 4*390f915aSHu Haowen 5*390f915aSHu Haowen.. include:: ../disclaimer-zh_TW.rst 6*390f915aSHu Haowen 7*390f915aSHu Haowen:Original: :ref:`Documentation/process/license-rules.rst <kernel_licensing>` 8*390f915aSHu Haowen:Translator: Alex Shi <alex.shi@linux.alibaba.com> 9*390f915aSHu Haowen Hu Haowen <src.res@email.cn> 10*390f915aSHu Haowen 11*390f915aSHu Haowen.. _tw_kernel_licensing: 12*390f915aSHu Haowen 13*390f915aSHu HaowenLinux內核許可規則 14*390f915aSHu Haowen================= 15*390f915aSHu Haowen 16*390f915aSHu HaowenLinux內核根據LICENSES/preferred/GPL-2.0中提供的GNU通用公共許可證版本2 17*390f915aSHu Haowen(GPL-2.0)的條款提供,並在LICENSES/exceptions/Linux-syscall-note中顯式 18*390f915aSHu Haowen描述了例外的系統調用,如COPYING文件中所述。 19*390f915aSHu Haowen 20*390f915aSHu Haowen此文檔文件提供了如何對每個源文件進行注釋以使其許可證清晰明確的說明。 21*390f915aSHu Haowen它不會取代內核的許可證。 22*390f915aSHu Haowen 23*390f915aSHu Haowen內核原始碼作爲一個整體適用於COPYING文件中描述的許可證,但是單個源文件可以 24*390f915aSHu Haowen具有不同的與GPL-20兼容的許可證:: 25*390f915aSHu Haowen 26*390f915aSHu Haowen GPL-1.0+ : GNU通用公共許可證v1.0或更高版本 27*390f915aSHu Haowen GPL-2.0+ : GNU通用公共許可證v2.0或更高版本 28*390f915aSHu Haowen LGPL-2.0 : 僅限GNU庫通用公共許可證v2 29*390f915aSHu Haowen LGPL-2.0+: GNU 庫通用公共許可證v2或更高版本 30*390f915aSHu Haowen LGPL-2.1 : 僅限GNU寬通用公共許可證v2.1 31*390f915aSHu Haowen LGPL-2.1+: GNU寬通用公共許可證v2.1或更高版本 32*390f915aSHu Haowen 33*390f915aSHu Haowen除此之外,個人文件可以在雙重許可下提供,例如一個兼容的GPL變體,或者BSD, 34*390f915aSHu HaowenMIT等許可。 35*390f915aSHu Haowen 36*390f915aSHu Haowen用戶空間API(UAPI)頭文件描述了用戶空間程序與內核的接口,這是一種特殊情況。 37*390f915aSHu Haowen根據內核COPYING文件中的注釋,syscall接口是一個明確的邊界,它不會將GPL要求 38*390f915aSHu Haowen擴展到任何使用它與內核通信的軟體。由於UAPI頭文件必須包含在創建在Linux內核 39*390f915aSHu Haowen上運行的可執行文件的任何源文件中,因此此例外必須記錄在特別的許可證表述中。 40*390f915aSHu Haowen 41*390f915aSHu Haowen表達源文件許可證的常用方法是將匹配的樣板文本添加到文件的頂部注釋中。由於 42*390f915aSHu Haowen格式,拼寫錯誤等,這些「樣板」很難通過那些在上下文中使用的驗證許可證合規性 43*390f915aSHu Haowen的工具。 44*390f915aSHu Haowen 45*390f915aSHu Haowen樣板文本的替代方法是在每個源文件中使用軟體包數據交換(SPDX)許可證標識符。 46*390f915aSHu HaowenSPDX許可證標識符是機器可解析的,並且是用於提供文件內容的許可證的精確縮寫。 47*390f915aSHu HaowenSPDX許可證標識符由Linux 基金會的SPDX 工作組管理,並得到了整個行業,工具 48*390f915aSHu Haowen供應商和法律團隊的合作夥伴的一致同意。有關詳細信息,請參閱 49*390f915aSHu Haowenhttps://spdx.org/ 50*390f915aSHu Haowen 51*390f915aSHu HaowenLinux內核需要所有源文件中的精確SPDX標識符。內核中使用的有效標識符在 52*390f915aSHu Haowen`許可標識符`_ 一節中進行了解釋,並且已可以在 53*390f915aSHu Haowenhttps://spdx.org/licenses/ 上的官方SPDX許可證列表中檢索,並附帶許可證 54*390f915aSHu Haowen文本。 55*390f915aSHu Haowen 56*390f915aSHu Haowen許可標識符語法 57*390f915aSHu Haowen-------------- 58*390f915aSHu Haowen 59*390f915aSHu Haowen1.安置: 60*390f915aSHu Haowen 61*390f915aSHu Haowen 內核文件中的SPDX許可證標識符應添加到可包含注釋的文件中的第一行。對於大多 62*390f915aSHu Haowen 數文件,這是第一行,除了那些在第一行中需要'#!PATH_TO_INTERPRETER'的腳本。 63*390f915aSHu Haowen 對於這些腳本,SPDX標識符進入第二行。 64*390f915aSHu Haowen 65*390f915aSHu Haowen| 66*390f915aSHu Haowen 67*390f915aSHu Haowen2. 風格: 68*390f915aSHu Haowen 69*390f915aSHu Haowen SPDX許可證標識符以注釋的形式添加。注釋樣式取決於文件類型:: 70*390f915aSHu Haowen 71*390f915aSHu Haowen C source: // SPDX-License-Identifier: <SPDX License Expression> 72*390f915aSHu Haowen C header: /* SPDX-License-Identifier: <SPDX License Expression> */ 73*390f915aSHu Haowen ASM: /* SPDX-License-Identifier: <SPDX License Expression> */ 74*390f915aSHu Haowen scripts: # SPDX-License-Identifier: <SPDX License Expression> 75*390f915aSHu Haowen .rst: .. SPDX-License-Identifier: <SPDX License Expression> 76*390f915aSHu Haowen .dts{i}: // SPDX-License-Identifier: <SPDX License Expression> 77*390f915aSHu Haowen 78*390f915aSHu Haowen 如果特定工具無法處理標準注釋樣式,則應使用工具接受的相應注釋機制。這是在 79*390f915aSHu Haowen C 頭文件中使用「/\*\*/」樣式注釋的原因。過去在使用生成的.lds文件中觀察到 80*390f915aSHu Haowen 構建被破壞,其中'ld'無法解析C++注釋。現在已經解決了這個問題,但仍然有較 81*390f915aSHu Haowen 舊的彙編程序工具無法處理C++樣式的注釋。 82*390f915aSHu Haowen 83*390f915aSHu Haowen| 84*390f915aSHu Haowen 85*390f915aSHu Haowen3. 句法: 86*390f915aSHu Haowen 87*390f915aSHu Haowen <SPDX許可證表達式>是SPDX許可證列表中的SPDX短格式許可證標識符,或者在許可 88*390f915aSHu Haowen 證例外適用時由「WITH」分隔的兩個SPDX短格式許可證標識符的組合。當應用多個許 89*390f915aSHu Haowen 可證時,表達式由分隔子表達式的關鍵字「AND」,「OR」組成,並由「(」,「)」包圍。 90*390f915aSHu Haowen 91*390f915aSHu Haowen 帶有「或更高」選項的[L]GPL等許可證的許可證標識符通過使用「+」來表示「或更高」 92*390f915aSHu Haowen 選項來構建。:: 93*390f915aSHu Haowen 94*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ 95*390f915aSHu Haowen // SPDX-License-Identifier: LGPL-2.1+ 96*390f915aSHu Haowen 97*390f915aSHu Haowen 當需要修正的許可證時,應使用WITH。 例如,linux內核UAPI文件使用表達式:: 98*390f915aSHu Haowen 99*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note 100*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note 101*390f915aSHu Haowen 102*390f915aSHu Haowen 其它在內核中使用WITH例外的事例如下:: 103*390f915aSHu Haowen 104*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 WITH mif-exception 105*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ WITH GCC-exception-2.0 106*390f915aSHu Haowen 107*390f915aSHu Haowen 例外只能與特定的許可證標識符一起使用。有效的許可證標識符列在異常文本文件 108*390f915aSHu Haowen 的標記中。有關詳細信息,請參閱 `許可標識符`_ 一章中的 `例外`_ 。 109*390f915aSHu Haowen 110*390f915aSHu Haowen 如果文件是雙重許可且只選擇一個許可證,則應使用OR。例如,一些dtsi文件在雙 111*390f915aSHu Haowen 許可下可用:: 112*390f915aSHu Haowen 113*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 114*390f915aSHu Haowen 115*390f915aSHu Haowen 內核中雙許可文件中許可表達式的示例:: 116*390f915aSHu Haowen 117*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR MIT 118*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 119*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR Apache-2.0 120*390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR MPL-1.1 121*390f915aSHu Haowen // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT 122*390f915aSHu Haowen // SPDX-License-Identifier: GPL-1.0+ OR BSD-3-Clause OR OpenSSL 123*390f915aSHu Haowen 124*390f915aSHu Haowen 如果文件具有多個許可證,其條款全部適用於使用該文件,則應使用AND。例如, 125*390f915aSHu Haowen 如果代碼是從另一個項目繼承的,並且已經授予了將其放入內核的權限,但原始 126*390f915aSHu Haowen 許可條款需要保持有效:: 127*390f915aSHu Haowen 128*390f915aSHu Haowen // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) AND MIT 129*390f915aSHu Haowen 130*390f915aSHu Haowen 另一個需要遵守兩套許可條款的例子是:: 131*390f915aSHu Haowen 132*390f915aSHu Haowen // SPDX-License-Identifier: GPL-1.0+ AND LGPL-2.1+ 133*390f915aSHu Haowen 134*390f915aSHu Haowen許可標識符 135*390f915aSHu Haowen---------- 136*390f915aSHu Haowen 137*390f915aSHu Haowen當前使用的許可證以及添加到內核的代碼許可證可以分解爲: 138*390f915aSHu Haowen 139*390f915aSHu Haowen1. _`優先許可`: 140*390f915aSHu Haowen 141*390f915aSHu Haowen 應儘可能使用這些許可證,因爲它們已知完全兼容並廣泛使用。這些許可證在內核 142*390f915aSHu Haowen 目錄:: 143*390f915aSHu Haowen 144*390f915aSHu Haowen LICENSES/preferred/ 145*390f915aSHu Haowen 146*390f915aSHu Haowen 此目錄中的文件包含完整的許可證文本和 `元標記`_ 。文件名與SPDX許可證標識 147*390f915aSHu Haowen 符相同,後者應用於源文件中的許可證。 148*390f915aSHu Haowen 149*390f915aSHu Haowen 例如:: 150*390f915aSHu Haowen 151*390f915aSHu Haowen LICENSES/preferred/GPL-2.0 152*390f915aSHu Haowen 153*390f915aSHu Haowen 包含GPLv2許可證文本和所需的元標籤:: 154*390f915aSHu Haowen 155*390f915aSHu Haowen LICENSES/preferred/MIT 156*390f915aSHu Haowen 157*390f915aSHu Haowen 包含MIT許可證文本和所需的元標記 158*390f915aSHu Haowen 159*390f915aSHu Haowen _`元標記`: 160*390f915aSHu Haowen 161*390f915aSHu Haowen 許可證文件中必須包含以下元標記: 162*390f915aSHu Haowen 163*390f915aSHu Haowen - Valid-License-Identifier: 164*390f915aSHu Haowen 165*390f915aSHu Haowen 一行或多行, 聲明那些許可標識符在項目內有效, 以引用此特定許可的文本。通 166*390f915aSHu Haowen 常這是一個有效的標識符,但是例如對於帶有'或更高'選項的許可證,兩個標識 167*390f915aSHu Haowen 符都有效。 168*390f915aSHu Haowen 169*390f915aSHu Haowen - SPDX-URL: 170*390f915aSHu Haowen 171*390f915aSHu Haowen SPDX頁面的URL,其中包含與許可證相關的其他信息. 172*390f915aSHu Haowen 173*390f915aSHu Haowen - Usage-Guidance: 174*390f915aSHu Haowen 175*390f915aSHu Haowen 使用建議的自由格式文本。該文本必須包含SPDX許可證標識符的正確示例,因爲 176*390f915aSHu Haowen 它們應根據 `許可標識符語法`_ 指南放入源文件中。 177*390f915aSHu Haowen 178*390f915aSHu Haowen - License-Text: 179*390f915aSHu Haowen 180*390f915aSHu Haowen 此標記之後的所有文本都被視爲原始許可文本 181*390f915aSHu Haowen 182*390f915aSHu Haowen 文件格式示例:: 183*390f915aSHu Haowen 184*390f915aSHu Haowen Valid-License-Identifier: GPL-2.0 185*390f915aSHu Haowen Valid-License-Identifier: GPL-2.0+ 186*390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/GPL-2.0.html 187*390f915aSHu Haowen Usage-Guide: 188*390f915aSHu Haowen To use this license in source code, put one of the following SPDX 189*390f915aSHu Haowen tag/value pairs into a comment according to the placement 190*390f915aSHu Haowen guidelines in the licensing rules documentation. 191*390f915aSHu Haowen For 'GNU General Public License (GPL) version 2 only' use: 192*390f915aSHu Haowen SPDX-License-Identifier: GPL-2.0 193*390f915aSHu Haowen For 'GNU General Public License (GPL) version 2 or any later version' use: 194*390f915aSHu Haowen SPDX-License-Identifier: GPL-2.0+ 195*390f915aSHu Haowen License-Text: 196*390f915aSHu Haowen Full license text 197*390f915aSHu Haowen 198*390f915aSHu Haowen :: 199*390f915aSHu Haowen 200*390f915aSHu Haowen SPDX-License-Identifier: MIT 201*390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/MIT.html 202*390f915aSHu Haowen Usage-Guide: 203*390f915aSHu Haowen To use this license in source code, put the following SPDX 204*390f915aSHu Haowen tag/value pair into a comment according to the placement 205*390f915aSHu Haowen guidelines in the licensing rules documentation. 206*390f915aSHu Haowen SPDX-License-Identifier: MIT 207*390f915aSHu Haowen License-Text: 208*390f915aSHu Haowen Full license text 209*390f915aSHu Haowen 210*390f915aSHu Haowen| 211*390f915aSHu Haowen 212*390f915aSHu Haowen2. 不推薦的許可證: 213*390f915aSHu Haowen 214*390f915aSHu Haowen 這些許可證只應用於現有代碼或從其他項目導入代碼。這些許可證在內核目錄:: 215*390f915aSHu Haowen 216*390f915aSHu Haowen LICENSES/other/ 217*390f915aSHu Haowen 218*390f915aSHu Haowen 此目錄中的文件包含完整的許可證文本和 `元標記`_ 。文件名與SPDX許可證標識 219*390f915aSHu Haowen 符相同,後者應用於源文件中的許可證。 220*390f915aSHu Haowen 221*390f915aSHu Haowen 例如:: 222*390f915aSHu Haowen 223*390f915aSHu Haowen LICENSES/other/ISC 224*390f915aSHu Haowen 225*390f915aSHu Haowen 包含國際系統聯合許可文本和所需的元標籤:: 226*390f915aSHu Haowen 227*390f915aSHu Haowen LICENSES/other/ZLib 228*390f915aSHu Haowen 229*390f915aSHu Haowen 包含ZLIB許可文本和所需的元標籤. 230*390f915aSHu Haowen 231*390f915aSHu Haowen 元標籤: 232*390f915aSHu Haowen 233*390f915aSHu Haowen 「其他」許可證的元標籤要求與 `優先許可`_ 的要求相同。 234*390f915aSHu Haowen 235*390f915aSHu Haowen 文件格式示例:: 236*390f915aSHu Haowen 237*390f915aSHu Haowen Valid-License-Identifier: ISC 238*390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/ISC.html 239*390f915aSHu Haowen Usage-Guide: 240*390f915aSHu Haowen Usage of this license in the kernel for new code is discouraged 241*390f915aSHu Haowen and it should solely be used for importing code from an already 242*390f915aSHu Haowen existing project. 243*390f915aSHu Haowen To use this license in source code, put the following SPDX 244*390f915aSHu Haowen tag/value pair into a comment according to the placement 245*390f915aSHu Haowen guidelines in the licensing rules documentation. 246*390f915aSHu Haowen SPDX-License-Identifier: ISC 247*390f915aSHu Haowen License-Text: 248*390f915aSHu Haowen Full license text 249*390f915aSHu Haowen 250*390f915aSHu Haowen| 251*390f915aSHu Haowen 252*390f915aSHu Haowen3. _`例外`: 253*390f915aSHu Haowen 254*390f915aSHu Haowen 某些許可證可以修改,並允許原始許可證不具有的某些例外權利。這些例外在 255*390f915aSHu Haowen 內核目錄:: 256*390f915aSHu Haowen 257*390f915aSHu Haowen LICENSES/exceptions/ 258*390f915aSHu Haowen 259*390f915aSHu Haowen 此目錄中的文件包含完整的例外文本和所需的 `例外元標記`_ 。 260*390f915aSHu Haowen 261*390f915aSHu Haowen 例如:: 262*390f915aSHu Haowen 263*390f915aSHu Haowen LICENSES/exceptions/Linux-syscall-note 264*390f915aSHu Haowen 265*390f915aSHu Haowen 包含Linux內核的COPYING文件中記錄的Linux系統調用例外,該文件用於UAPI 266*390f915aSHu Haowen 頭文件。例如:: 267*390f915aSHu Haowen 268*390f915aSHu Haowen LICENSES/exceptions/GCC-exception-2.0 269*390f915aSHu Haowen 270*390f915aSHu Haowen 包含GCC'連結例外',它允許獨立於其許可證的任何二進位文件與標記有此例外的 271*390f915aSHu Haowen 文件的編譯版本連結。這是從GPL不兼容原始碼創建可運行的可執行文件所必需的。 272*390f915aSHu Haowen 273*390f915aSHu Haowen _`例外元標記`: 274*390f915aSHu Haowen 275*390f915aSHu Haowen 以下元標記必須在例外文件中可用: 276*390f915aSHu Haowen 277*390f915aSHu Haowen - SPDX-Exception-Identifier: 278*390f915aSHu Haowen 279*390f915aSHu Haowen 一個可與SPDX許可證標識符一起使用的例外標識符。 280*390f915aSHu Haowen 281*390f915aSHu Haowen - SPDX-URL: 282*390f915aSHu Haowen 283*390f915aSHu Haowen SPDX頁面的URL,其中包含與例外相關的其他信息。 284*390f915aSHu Haowen 285*390f915aSHu Haowen - SPDX-Licenses: 286*390f915aSHu Haowen 287*390f915aSHu Haowen 以逗號分隔的例外可用的SPDX許可證標識符列表。 288*390f915aSHu Haowen 289*390f915aSHu Haowen - Usage-Guidance: 290*390f915aSHu Haowen 291*390f915aSHu Haowen 使用建議的自由格式文本。必須在文本後面加上SPDX許可證標識符的正確示例, 292*390f915aSHu Haowen 因爲它們應根據 `許可標識符語法`_ 指南放入源文件中。 293*390f915aSHu Haowen 294*390f915aSHu Haowen - Exception-Text: 295*390f915aSHu Haowen 296*390f915aSHu Haowen 此標記之後的所有文本都被視爲原始異常文本 297*390f915aSHu Haowen 298*390f915aSHu Haowen 文件格式示例:: 299*390f915aSHu Haowen 300*390f915aSHu Haowen SPDX-Exception-Identifier: Linux-syscall-note 301*390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html 302*390f915aSHu Haowen SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+ 303*390f915aSHu Haowen Usage-Guidance: 304*390f915aSHu Haowen This exception is used together with one of the above SPDX-Licenses 305*390f915aSHu Haowen to mark user-space API (uapi) header files so they can be included 306*390f915aSHu Haowen into non GPL compliant user-space application code. 307*390f915aSHu Haowen To use this exception add it with the keyword WITH to one of the 308*390f915aSHu Haowen identifiers in the SPDX-Licenses tag: 309*390f915aSHu Haowen SPDX-License-Identifier: <SPDX-License> WITH Linux-syscall-note 310*390f915aSHu Haowen Exception-Text: 311*390f915aSHu Haowen Full exception text 312*390f915aSHu Haowen 313*390f915aSHu Haowen :: 314*390f915aSHu Haowen 315*390f915aSHu Haowen SPDX-Exception-Identifier: GCC-exception-2.0 316*390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/GCC-exception-2.0.html 317*390f915aSHu Haowen SPDX-Licenses: GPL-2.0, GPL-2.0+ 318*390f915aSHu Haowen Usage-Guidance: 319*390f915aSHu Haowen The "GCC Runtime Library exception 2.0" is used together with one 320*390f915aSHu Haowen of the above SPDX-Licenses for code imported from the GCC runtime 321*390f915aSHu Haowen library. 322*390f915aSHu Haowen To use this exception add it with the keyword WITH to one of the 323*390f915aSHu Haowen identifiers in the SPDX-Licenses tag: 324*390f915aSHu Haowen SPDX-License-Identifier: <SPDX-License> WITH GCC-exception-2.0 325*390f915aSHu Haowen Exception-Text: 326*390f915aSHu Haowen Full exception text 327*390f915aSHu Haowen 328*390f915aSHu Haowen 329*390f915aSHu Haowen所有SPDX許可證標識符和例外都必須在LICENSES子目錄中具有相應的文件。這是允許 330*390f915aSHu Haowen工具驗證(例如checkpatch.pl)以及準備好從源讀取和提取許可證所必需的, 這是 331*390f915aSHu Haowen各種FOSS組織推薦的,例如 `FSFE REUSE initiative <https://reuse.software/>`_. 332*390f915aSHu Haowen 333*390f915aSHu Haowen_`模塊許可` 334*390f915aSHu Haowen----------------- 335*390f915aSHu Haowen 336*390f915aSHu Haowen 可加載內核模塊還需要MODULE_LICENSE()標記。此標記既不替代正確的原始碼 337*390f915aSHu Haowen 許可證信息(SPDX-License-Identifier),也不以任何方式表示或確定提供模塊 338*390f915aSHu Haowen 原始碼的確切許可證。 339*390f915aSHu Haowen 340*390f915aSHu Haowen 此標記的唯一目的是提供足夠的信息,該模塊是否是自由軟體或者是內核模塊加 341*390f915aSHu Haowen 載器和用戶空間工具的專有模塊。 342*390f915aSHu Haowen 343*390f915aSHu Haowen MODULE_LICENSE()的有效許可證字符串是: 344*390f915aSHu Haowen 345*390f915aSHu Haowen ============================= ============================================= 346*390f915aSHu Haowen "GPL" 模塊是根據GPL版本2許可的。這並不表示僅限於 347*390f915aSHu Haowen GPL-2.0或GPL-2.0或更高版本之間的任何區別。 348*390f915aSHu Haowen 最正確許可證信息只能通過相應源文件中的許可證 349*390f915aSHu Haowen 信息來確定 350*390f915aSHu Haowen 351*390f915aSHu Haowen "GPL v2" 和"GPL"相同,它的存在是因爲歷史原因。 352*390f915aSHu Haowen 353*390f915aSHu Haowen "GPL and additional rights" 表示模塊源在GPL v2變體和MIT許可下雙重許可的 354*390f915aSHu Haowen 歷史變體。請不要在新代碼中使用。 355*390f915aSHu Haowen 356*390f915aSHu Haowen "Dual MIT/GPL" 表達該模塊在GPL v2變體或MIT許可證選擇下雙重 357*390f915aSHu Haowen 許可的正確方式。 358*390f915aSHu Haowen 359*390f915aSHu Haowen "Dual BSD/GPL" 該模塊根據GPL v2變體或BSD許可證選擇進行雙重 360*390f915aSHu Haowen 許可。 BSD許可證的確切變體只能通過相應源文件 361*390f915aSHu Haowen 中的許可證信息來確定。 362*390f915aSHu Haowen 363*390f915aSHu Haowen "Dual MPL/GPL" 該模塊根據GPL v2變體或Mozilla Public License 364*390f915aSHu Haowen (MPL)選項進行雙重許可。 MPL許可證的確切變體 365*390f915aSHu Haowen 只能通過相應的源文件中的許可證信息來確定。 366*390f915aSHu Haowen 367*390f915aSHu Haowen "Proprietary" 該模塊屬於專有許可。此字符串僅用於專有的第三 368*390f915aSHu Haowen 方模塊,不能用於在內核樹中具有原始碼的模塊。 369*390f915aSHu Haowen 以這種方式標記的模塊在加載時會使用'P'標記汙 370*390f915aSHu Haowen 染內核,並且內核模塊加載器拒絕將這些模塊連結 371*390f915aSHu Haowen 到使用EXPORT_SYMBOL_GPL()導出的符號。 372*390f915aSHu Haowen ============================= ============================================= 373*390f915aSHu Haowen 374*390f915aSHu Haowen 375