1390f915aSHu Haowen.. SPDX-License-Identifier: GPL-2.0 2390f915aSHu Haowen 3390f915aSHu Haowen.. SPDX-License-Identifier: GPL-2.0 4390f915aSHu Haowen 5390f915aSHu Haowen.. include:: ../disclaimer-zh_TW.rst 6390f915aSHu Haowen 7390f915aSHu Haowen:Original: :ref:`Documentation/process/license-rules.rst <kernel_licensing>` 8390f915aSHu Haowen:Translator: Alex Shi <alex.shi@linux.alibaba.com> 9*44a54e25SHu Haowen Hu Haowen <src.res.211@gmail.com> 10390f915aSHu Haowen 11390f915aSHu Haowen.. _tw_kernel_licensing: 12390f915aSHu Haowen 13390f915aSHu HaowenLinux內核許可規則 14390f915aSHu Haowen================= 15390f915aSHu Haowen 16390f915aSHu HaowenLinux內核根據LICENSES/preferred/GPL-2.0中提供的GNU通用公共許可證版本2 17390f915aSHu Haowen(GPL-2.0)的條款提供,並在LICENSES/exceptions/Linux-syscall-note中顯式 18390f915aSHu Haowen描述了例外的系統調用,如COPYING文件中所述。 19390f915aSHu Haowen 20390f915aSHu Haowen此文檔文件提供了如何對每個源文件進行注釋以使其許可證清晰明確的說明。 21390f915aSHu Haowen它不會取代內核的許可證。 22390f915aSHu Haowen 23390f915aSHu Haowen內核原始碼作爲一個整體適用於COPYING文件中描述的許可證,但是單個源文件可以 24390f915aSHu Haowen具有不同的與GPL-20兼容的許可證:: 25390f915aSHu Haowen 26390f915aSHu Haowen GPL-1.0+ : GNU通用公共許可證v1.0或更高版本 27390f915aSHu Haowen GPL-2.0+ : GNU通用公共許可證v2.0或更高版本 28390f915aSHu Haowen LGPL-2.0 : 僅限GNU庫通用公共許可證v2 29390f915aSHu Haowen LGPL-2.0+: GNU 庫通用公共許可證v2或更高版本 30390f915aSHu Haowen LGPL-2.1 : 僅限GNU寬通用公共許可證v2.1 31390f915aSHu Haowen LGPL-2.1+: GNU寬通用公共許可證v2.1或更高版本 32390f915aSHu Haowen 33390f915aSHu Haowen除此之外,個人文件可以在雙重許可下提供,例如一個兼容的GPL變體,或者BSD, 34390f915aSHu HaowenMIT等許可。 35390f915aSHu Haowen 36390f915aSHu Haowen用戶空間API(UAPI)頭文件描述了用戶空間程序與內核的接口,這是一種特殊情況。 37390f915aSHu Haowen根據內核COPYING文件中的注釋,syscall接口是一個明確的邊界,它不會將GPL要求 38390f915aSHu Haowen擴展到任何使用它與內核通信的軟體。由於UAPI頭文件必須包含在創建在Linux內核 39390f915aSHu Haowen上運行的可執行文件的任何源文件中,因此此例外必須記錄在特別的許可證表述中。 40390f915aSHu Haowen 41390f915aSHu Haowen表達源文件許可證的常用方法是將匹配的樣板文本添加到文件的頂部注釋中。由於 42390f915aSHu Haowen格式,拼寫錯誤等,這些「樣板」很難通過那些在上下文中使用的驗證許可證合規性 43390f915aSHu Haowen的工具。 44390f915aSHu Haowen 45390f915aSHu Haowen樣板文本的替代方法是在每個源文件中使用軟體包數據交換(SPDX)許可證標識符。 46390f915aSHu HaowenSPDX許可證標識符是機器可解析的,並且是用於提供文件內容的許可證的精確縮寫。 47390f915aSHu HaowenSPDX許可證標識符由Linux 基金會的SPDX 工作組管理,並得到了整個行業,工具 48390f915aSHu Haowen供應商和法律團隊的合作夥伴的一致同意。有關詳細信息,請參閱 49390f915aSHu Haowenhttps://spdx.org/ 50390f915aSHu Haowen 51390f915aSHu HaowenLinux內核需要所有源文件中的精確SPDX標識符。內核中使用的有效標識符在 52390f915aSHu Haowen`許可標識符`_ 一節中進行了解釋,並且已可以在 53390f915aSHu Haowenhttps://spdx.org/licenses/ 上的官方SPDX許可證列表中檢索,並附帶許可證 54390f915aSHu Haowen文本。 55390f915aSHu Haowen 56390f915aSHu Haowen許可標識符語法 57390f915aSHu Haowen-------------- 58390f915aSHu Haowen 59390f915aSHu Haowen1.安置: 60390f915aSHu Haowen 61390f915aSHu Haowen 內核文件中的SPDX許可證標識符應添加到可包含注釋的文件中的第一行。對於大多 62390f915aSHu Haowen 數文件,這是第一行,除了那些在第一行中需要'#!PATH_TO_INTERPRETER'的腳本。 63390f915aSHu Haowen 對於這些腳本,SPDX標識符進入第二行。 64390f915aSHu Haowen 65390f915aSHu Haowen| 66390f915aSHu Haowen 67390f915aSHu Haowen2. 風格: 68390f915aSHu Haowen 69390f915aSHu Haowen SPDX許可證標識符以注釋的形式添加。注釋樣式取決於文件類型:: 70390f915aSHu Haowen 71390f915aSHu Haowen C source: // SPDX-License-Identifier: <SPDX License Expression> 72390f915aSHu Haowen C header: /* SPDX-License-Identifier: <SPDX License Expression> */ 73390f915aSHu Haowen ASM: /* SPDX-License-Identifier: <SPDX License Expression> */ 74390f915aSHu Haowen scripts: # SPDX-License-Identifier: <SPDX License Expression> 75390f915aSHu Haowen .rst: .. SPDX-License-Identifier: <SPDX License Expression> 76390f915aSHu Haowen .dts{i}: // SPDX-License-Identifier: <SPDX License Expression> 77390f915aSHu Haowen 78390f915aSHu Haowen 如果特定工具無法處理標準注釋樣式,則應使用工具接受的相應注釋機制。這是在 79390f915aSHu Haowen C 頭文件中使用「/\*\*/」樣式注釋的原因。過去在使用生成的.lds文件中觀察到 80390f915aSHu Haowen 構建被破壞,其中'ld'無法解析C++注釋。現在已經解決了這個問題,但仍然有較 81390f915aSHu Haowen 舊的彙編程序工具無法處理C++樣式的注釋。 82390f915aSHu Haowen 83390f915aSHu Haowen| 84390f915aSHu Haowen 85390f915aSHu Haowen3. 句法: 86390f915aSHu Haowen 87390f915aSHu Haowen <SPDX許可證表達式>是SPDX許可證列表中的SPDX短格式許可證標識符,或者在許可 88390f915aSHu Haowen 證例外適用時由「WITH」分隔的兩個SPDX短格式許可證標識符的組合。當應用多個許 89390f915aSHu Haowen 可證時,表達式由分隔子表達式的關鍵字「AND」,「OR」組成,並由「(」,「)」包圍。 90390f915aSHu Haowen 91390f915aSHu Haowen 帶有「或更高」選項的[L]GPL等許可證的許可證標識符通過使用「+」來表示「或更高」 92390f915aSHu Haowen 選項來構建。:: 93390f915aSHu Haowen 94390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ 95390f915aSHu Haowen // SPDX-License-Identifier: LGPL-2.1+ 96390f915aSHu Haowen 97390f915aSHu Haowen 當需要修正的許可證時,應使用WITH。 例如,linux內核UAPI文件使用表達式:: 98390f915aSHu Haowen 99390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note 100390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note 101390f915aSHu Haowen 102390f915aSHu Haowen 其它在內核中使用WITH例外的事例如下:: 103390f915aSHu Haowen 104390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 WITH mif-exception 105390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0+ WITH GCC-exception-2.0 106390f915aSHu Haowen 107390f915aSHu Haowen 例外只能與特定的許可證標識符一起使用。有效的許可證標識符列在異常文本文件 108390f915aSHu Haowen 的標記中。有關詳細信息,請參閱 `許可標識符`_ 一章中的 `例外`_ 。 109390f915aSHu Haowen 110390f915aSHu Haowen 如果文件是雙重許可且只選擇一個許可證,則應使用OR。例如,一些dtsi文件在雙 111390f915aSHu Haowen 許可下可用:: 112390f915aSHu Haowen 113390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 114390f915aSHu Haowen 115390f915aSHu Haowen 內核中雙許可文件中許可表達式的示例:: 116390f915aSHu Haowen 117390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR MIT 118390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 119390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR Apache-2.0 120390f915aSHu Haowen // SPDX-License-Identifier: GPL-2.0 OR MPL-1.1 121390f915aSHu Haowen // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT 122390f915aSHu Haowen // SPDX-License-Identifier: GPL-1.0+ OR BSD-3-Clause OR OpenSSL 123390f915aSHu Haowen 124390f915aSHu Haowen 如果文件具有多個許可證,其條款全部適用於使用該文件,則應使用AND。例如, 125390f915aSHu Haowen 如果代碼是從另一個項目繼承的,並且已經授予了將其放入內核的權限,但原始 126390f915aSHu Haowen 許可條款需要保持有效:: 127390f915aSHu Haowen 128390f915aSHu Haowen // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) AND MIT 129390f915aSHu Haowen 130390f915aSHu Haowen 另一個需要遵守兩套許可條款的例子是:: 131390f915aSHu Haowen 132390f915aSHu Haowen // SPDX-License-Identifier: GPL-1.0+ AND LGPL-2.1+ 133390f915aSHu Haowen 134390f915aSHu Haowen許可標識符 135390f915aSHu Haowen---------- 136390f915aSHu Haowen 137390f915aSHu Haowen當前使用的許可證以及添加到內核的代碼許可證可以分解爲: 138390f915aSHu Haowen 139390f915aSHu Haowen1. _`優先許可`: 140390f915aSHu Haowen 141390f915aSHu Haowen 應儘可能使用這些許可證,因爲它們已知完全兼容並廣泛使用。這些許可證在內核 142390f915aSHu Haowen 目錄:: 143390f915aSHu Haowen 144390f915aSHu Haowen LICENSES/preferred/ 145390f915aSHu Haowen 146390f915aSHu Haowen 此目錄中的文件包含完整的許可證文本和 `元標記`_ 。文件名與SPDX許可證標識 147390f915aSHu Haowen 符相同,後者應用於源文件中的許可證。 148390f915aSHu Haowen 149390f915aSHu Haowen 例如:: 150390f915aSHu Haowen 151390f915aSHu Haowen LICENSES/preferred/GPL-2.0 152390f915aSHu Haowen 153390f915aSHu Haowen 包含GPLv2許可證文本和所需的元標籤:: 154390f915aSHu Haowen 155390f915aSHu Haowen LICENSES/preferred/MIT 156390f915aSHu Haowen 157390f915aSHu Haowen 包含MIT許可證文本和所需的元標記 158390f915aSHu Haowen 159390f915aSHu Haowen _`元標記`: 160390f915aSHu Haowen 161390f915aSHu Haowen 許可證文件中必須包含以下元標記: 162390f915aSHu Haowen 163390f915aSHu Haowen - Valid-License-Identifier: 164390f915aSHu Haowen 165390f915aSHu Haowen 一行或多行, 聲明那些許可標識符在項目內有效, 以引用此特定許可的文本。通 166390f915aSHu Haowen 常這是一個有效的標識符,但是例如對於帶有'或更高'選項的許可證,兩個標識 167390f915aSHu Haowen 符都有效。 168390f915aSHu Haowen 169390f915aSHu Haowen - SPDX-URL: 170390f915aSHu Haowen 171390f915aSHu Haowen SPDX頁面的URL,其中包含與許可證相關的其他信息. 172390f915aSHu Haowen 173390f915aSHu Haowen - Usage-Guidance: 174390f915aSHu Haowen 175390f915aSHu Haowen 使用建議的自由格式文本。該文本必須包含SPDX許可證標識符的正確示例,因爲 176390f915aSHu Haowen 它們應根據 `許可標識符語法`_ 指南放入源文件中。 177390f915aSHu Haowen 178390f915aSHu Haowen - License-Text: 179390f915aSHu Haowen 180390f915aSHu Haowen 此標記之後的所有文本都被視爲原始許可文本 181390f915aSHu Haowen 182390f915aSHu Haowen 文件格式示例:: 183390f915aSHu Haowen 184390f915aSHu Haowen Valid-License-Identifier: GPL-2.0 185390f915aSHu Haowen Valid-License-Identifier: GPL-2.0+ 186390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/GPL-2.0.html 187390f915aSHu Haowen Usage-Guide: 188390f915aSHu Haowen To use this license in source code, put one of the following SPDX 189390f915aSHu Haowen tag/value pairs into a comment according to the placement 190390f915aSHu Haowen guidelines in the licensing rules documentation. 191390f915aSHu Haowen For 'GNU General Public License (GPL) version 2 only' use: 192390f915aSHu Haowen SPDX-License-Identifier: GPL-2.0 193390f915aSHu Haowen For 'GNU General Public License (GPL) version 2 or any later version' use: 194390f915aSHu Haowen SPDX-License-Identifier: GPL-2.0+ 195390f915aSHu Haowen License-Text: 196390f915aSHu Haowen Full license text 197390f915aSHu Haowen 198390f915aSHu Haowen :: 199390f915aSHu Haowen 200390f915aSHu Haowen SPDX-License-Identifier: MIT 201390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/MIT.html 202390f915aSHu Haowen Usage-Guide: 203390f915aSHu Haowen To use this license in source code, put the following SPDX 204390f915aSHu Haowen tag/value pair into a comment according to the placement 205390f915aSHu Haowen guidelines in the licensing rules documentation. 206390f915aSHu Haowen SPDX-License-Identifier: MIT 207390f915aSHu Haowen License-Text: 208390f915aSHu Haowen Full license text 209390f915aSHu Haowen 210390f915aSHu Haowen| 211390f915aSHu Haowen 212390f915aSHu Haowen2. 不推薦的許可證: 213390f915aSHu Haowen 214390f915aSHu Haowen 這些許可證只應用於現有代碼或從其他項目導入代碼。這些許可證在內核目錄:: 215390f915aSHu Haowen 216390f915aSHu Haowen LICENSES/other/ 217390f915aSHu Haowen 218390f915aSHu Haowen 此目錄中的文件包含完整的許可證文本和 `元標記`_ 。文件名與SPDX許可證標識 219390f915aSHu Haowen 符相同,後者應用於源文件中的許可證。 220390f915aSHu Haowen 221390f915aSHu Haowen 例如:: 222390f915aSHu Haowen 223390f915aSHu Haowen LICENSES/other/ISC 224390f915aSHu Haowen 225390f915aSHu Haowen 包含國際系統聯合許可文本和所需的元標籤:: 226390f915aSHu Haowen 227390f915aSHu Haowen LICENSES/other/ZLib 228390f915aSHu Haowen 229390f915aSHu Haowen 包含ZLIB許可文本和所需的元標籤. 230390f915aSHu Haowen 231390f915aSHu Haowen 元標籤: 232390f915aSHu Haowen 233390f915aSHu Haowen 「其他」許可證的元標籤要求與 `優先許可`_ 的要求相同。 234390f915aSHu Haowen 235390f915aSHu Haowen 文件格式示例:: 236390f915aSHu Haowen 237390f915aSHu Haowen Valid-License-Identifier: ISC 238390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/ISC.html 239390f915aSHu Haowen Usage-Guide: 240390f915aSHu Haowen Usage of this license in the kernel for new code is discouraged 241390f915aSHu Haowen and it should solely be used for importing code from an already 242390f915aSHu Haowen existing project. 243390f915aSHu Haowen To use this license in source code, put the following SPDX 244390f915aSHu Haowen tag/value pair into a comment according to the placement 245390f915aSHu Haowen guidelines in the licensing rules documentation. 246390f915aSHu Haowen SPDX-License-Identifier: ISC 247390f915aSHu Haowen License-Text: 248390f915aSHu Haowen Full license text 249390f915aSHu Haowen 250390f915aSHu Haowen| 251390f915aSHu Haowen 252390f915aSHu Haowen3. _`例外`: 253390f915aSHu Haowen 254390f915aSHu Haowen 某些許可證可以修改,並允許原始許可證不具有的某些例外權利。這些例外在 255390f915aSHu Haowen 內核目錄:: 256390f915aSHu Haowen 257390f915aSHu Haowen LICENSES/exceptions/ 258390f915aSHu Haowen 259390f915aSHu Haowen 此目錄中的文件包含完整的例外文本和所需的 `例外元標記`_ 。 260390f915aSHu Haowen 261390f915aSHu Haowen 例如:: 262390f915aSHu Haowen 263390f915aSHu Haowen LICENSES/exceptions/Linux-syscall-note 264390f915aSHu Haowen 265390f915aSHu Haowen 包含Linux內核的COPYING文件中記錄的Linux系統調用例外,該文件用於UAPI 266390f915aSHu Haowen 頭文件。例如:: 267390f915aSHu Haowen 268390f915aSHu Haowen LICENSES/exceptions/GCC-exception-2.0 269390f915aSHu Haowen 270390f915aSHu Haowen 包含GCC'連結例外',它允許獨立於其許可證的任何二進位文件與標記有此例外的 271390f915aSHu Haowen 文件的編譯版本連結。這是從GPL不兼容原始碼創建可運行的可執行文件所必需的。 272390f915aSHu Haowen 273390f915aSHu Haowen _`例外元標記`: 274390f915aSHu Haowen 275390f915aSHu Haowen 以下元標記必須在例外文件中可用: 276390f915aSHu Haowen 277390f915aSHu Haowen - SPDX-Exception-Identifier: 278390f915aSHu Haowen 279390f915aSHu Haowen 一個可與SPDX許可證標識符一起使用的例外標識符。 280390f915aSHu Haowen 281390f915aSHu Haowen - SPDX-URL: 282390f915aSHu Haowen 283390f915aSHu Haowen SPDX頁面的URL,其中包含與例外相關的其他信息。 284390f915aSHu Haowen 285390f915aSHu Haowen - SPDX-Licenses: 286390f915aSHu Haowen 287390f915aSHu Haowen 以逗號分隔的例外可用的SPDX許可證標識符列表。 288390f915aSHu Haowen 289390f915aSHu Haowen - Usage-Guidance: 290390f915aSHu Haowen 291390f915aSHu Haowen 使用建議的自由格式文本。必須在文本後面加上SPDX許可證標識符的正確示例, 292390f915aSHu Haowen 因爲它們應根據 `許可標識符語法`_ 指南放入源文件中。 293390f915aSHu Haowen 294390f915aSHu Haowen - Exception-Text: 295390f915aSHu Haowen 296390f915aSHu Haowen 此標記之後的所有文本都被視爲原始異常文本 297390f915aSHu Haowen 298390f915aSHu Haowen 文件格式示例:: 299390f915aSHu Haowen 300390f915aSHu Haowen SPDX-Exception-Identifier: Linux-syscall-note 301390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html 302390f915aSHu Haowen SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+ 303390f915aSHu Haowen Usage-Guidance: 304390f915aSHu Haowen This exception is used together with one of the above SPDX-Licenses 305390f915aSHu Haowen to mark user-space API (uapi) header files so they can be included 306390f915aSHu Haowen into non GPL compliant user-space application code. 307390f915aSHu Haowen To use this exception add it with the keyword WITH to one of the 308390f915aSHu Haowen identifiers in the SPDX-Licenses tag: 309390f915aSHu Haowen SPDX-License-Identifier: <SPDX-License> WITH Linux-syscall-note 310390f915aSHu Haowen Exception-Text: 311390f915aSHu Haowen Full exception text 312390f915aSHu Haowen 313390f915aSHu Haowen :: 314390f915aSHu Haowen 315390f915aSHu Haowen SPDX-Exception-Identifier: GCC-exception-2.0 316390f915aSHu Haowen SPDX-URL: https://spdx.org/licenses/GCC-exception-2.0.html 317390f915aSHu Haowen SPDX-Licenses: GPL-2.0, GPL-2.0+ 318390f915aSHu Haowen Usage-Guidance: 319390f915aSHu Haowen The "GCC Runtime Library exception 2.0" is used together with one 320390f915aSHu Haowen of the above SPDX-Licenses for code imported from the GCC runtime 321390f915aSHu Haowen library. 322390f915aSHu Haowen To use this exception add it with the keyword WITH to one of the 323390f915aSHu Haowen identifiers in the SPDX-Licenses tag: 324390f915aSHu Haowen SPDX-License-Identifier: <SPDX-License> WITH GCC-exception-2.0 325390f915aSHu Haowen Exception-Text: 326390f915aSHu Haowen Full exception text 327390f915aSHu Haowen 328390f915aSHu Haowen 329390f915aSHu Haowen所有SPDX許可證標識符和例外都必須在LICENSES子目錄中具有相應的文件。這是允許 330390f915aSHu Haowen工具驗證(例如checkpatch.pl)以及準備好從源讀取和提取許可證所必需的, 這是 331390f915aSHu Haowen各種FOSS組織推薦的,例如 `FSFE REUSE initiative <https://reuse.software/>`_. 332390f915aSHu Haowen 333390f915aSHu Haowen_`模塊許可` 334390f915aSHu Haowen----------------- 335390f915aSHu Haowen 336390f915aSHu Haowen 可加載內核模塊還需要MODULE_LICENSE()標記。此標記既不替代正確的原始碼 337390f915aSHu Haowen 許可證信息(SPDX-License-Identifier),也不以任何方式表示或確定提供模塊 338390f915aSHu Haowen 原始碼的確切許可證。 339390f915aSHu Haowen 340390f915aSHu Haowen 此標記的唯一目的是提供足夠的信息,該模塊是否是自由軟體或者是內核模塊加 341390f915aSHu Haowen 載器和用戶空間工具的專有模塊。 342390f915aSHu Haowen 343390f915aSHu Haowen MODULE_LICENSE()的有效許可證字符串是: 344390f915aSHu Haowen 345390f915aSHu Haowen ============================= ============================================= 346390f915aSHu Haowen "GPL" 模塊是根據GPL版本2許可的。這並不表示僅限於 347390f915aSHu Haowen GPL-2.0或GPL-2.0或更高版本之間的任何區別。 348390f915aSHu Haowen 最正確許可證信息只能通過相應源文件中的許可證 349390f915aSHu Haowen 信息來確定 350390f915aSHu Haowen 351390f915aSHu Haowen "GPL v2" 和"GPL"相同,它的存在是因爲歷史原因。 352390f915aSHu Haowen 353390f915aSHu Haowen "GPL and additional rights" 表示模塊源在GPL v2變體和MIT許可下雙重許可的 354390f915aSHu Haowen 歷史變體。請不要在新代碼中使用。 355390f915aSHu Haowen 356390f915aSHu Haowen "Dual MIT/GPL" 表達該模塊在GPL v2變體或MIT許可證選擇下雙重 357390f915aSHu Haowen 許可的正確方式。 358390f915aSHu Haowen 359390f915aSHu Haowen "Dual BSD/GPL" 該模塊根據GPL v2變體或BSD許可證選擇進行雙重 360390f915aSHu Haowen 許可。 BSD許可證的確切變體只能通過相應源文件 361390f915aSHu Haowen 中的許可證信息來確定。 362390f915aSHu Haowen 363390f915aSHu Haowen "Dual MPL/GPL" 該模塊根據GPL v2變體或Mozilla Public License 364390f915aSHu Haowen (MPL)選項進行雙重許可。 MPL許可證的確切變體 365390f915aSHu Haowen 只能通過相應的源文件中的許可證信息來確定。 366390f915aSHu Haowen 367390f915aSHu Haowen "Proprietary" 該模塊屬於專有許可。此字符串僅用於專有的第三 368390f915aSHu Haowen 方模塊,不能用於在內核樹中具有原始碼的模塊。 369390f915aSHu Haowen 以這種方式標記的模塊在加載時會使用'P'標記汙 370390f915aSHu Haowen 染內核,並且內核模塊加載器拒絕將這些模塊連結 371390f915aSHu Haowen 到使用EXPORT_SYMBOL_GPL()導出的符號。 372390f915aSHu Haowen ============================= ============================================= 373390f915aSHu Haowen 374390f915aSHu Haowen 375