.. SPDX-License-Identifier: GPL-2.0 .. include:: ../disclaimer-zh_CN.rst :Original: :ref:`Documentation/process/license-rules.rst <kernel_licensing>` :Translator: Alex Shi <alex.shi@linux.alibaba.com> .. _cn_kernel_licensing: Linuxå æ ¸è®¸å¯è§å ================= Linuxå æ ¸æ ¹æ®LICENSES/preferred/GPL-2.0ä¸æä¾çGNUéç¨å ¬å ±è®¸å¯è¯çæ¬2 ï¼GPL-2.0ï¼çæ¡æ¬¾æä¾ï¼å¹¶å¨LICENSES/exceptions/Linux-syscall-noteä¸æ¾å¼ æè¿°äºä¾å¤çç³»ç»è°ç¨ï¼å¦COPYINGæ件ä¸æè¿°ã æ¤ææ¡£æ件æä¾äºå¦ä½å¯¹æ¯ä¸ªæºæ件è¿è¡æ³¨éä»¥ä½¿å ¶è®¸å¯è¯æ¸ æ°æç¡®ç说æã å®ä¸ä¼å代å æ ¸ç许å¯è¯ã å æ ¸æºä»£ç ä½ä¸ºä¸ä¸ªæ´ä½éç¨äºCOPYINGæ件ä¸æè¿°ç许å¯è¯ï¼ä½æ¯å个æºæ件å¯ä»¥ å ·æä¸åçä¸GPL-20å ¼å®¹ç许å¯è¯:: GPL-1.0+ : GNUéç¨å ¬å ±è®¸å¯è¯v1.0ææ´é«çæ¬ GPL-2.0+ : GNUéç¨å ¬å ±è®¸å¯è¯v2.0ææ´é«çæ¬ LGPL-2.0 : ä» éGNUåºéç¨å ¬å ±è®¸å¯è¯v2 LGPL-2.0+: GNU åºéç¨å ¬å ±è®¸å¯è¯v2ææ´é«çæ¬ LGPL-2.1 : ä» éGNU宽éç¨å ¬å ±è®¸å¯è¯v2.1 LGPL-2.1+: GNU宽éç¨å ¬å ±è®¸å¯è¯v2.1ææ´é«çæ¬ é¤æ¤ä¹å¤ï¼ä¸ªäººæ件å¯ä»¥å¨åé许å¯ä¸æä¾ï¼ä¾å¦ä¸ä¸ªå ¼å®¹çGPLåä½ï¼æè BSDï¼ MITç许å¯ã ç¨æ·ç©ºé´APIï¼UAPIï¼å¤´æ件æè¿°äºç¨æ·ç©ºé´ç¨åºä¸å æ ¸çæ¥å£ï¼è¿æ¯ä¸ç§ç¹æ®æ åµã æ ¹æ®å æ ¸COPYINGæ件ä¸ç注éï¼syscallæ¥å£æ¯ä¸ä¸ªæç¡®çè¾¹çï¼å®ä¸ä¼å°GPLè¦æ± æ©å±å°ä»»ä½ä½¿ç¨å®ä¸å æ ¸éä¿¡ç软件ãç±äºUAPI头æä»¶å¿ é¡»å å«å¨å建å¨Linuxå æ ¸ ä¸è¿è¡çå¯æ§è¡æ件çä»»ä½æºæ件ä¸ï¼å æ¤æ¤ä¾å¤å¿ 须记å½å¨ç¹å«ç许å¯è¯è¡¨è¿°ä¸ã 表达æºæ件许å¯è¯ç常ç¨æ¹æ³æ¯å°å¹é çæ ·æ¿ææ¬æ·»å å°æ件ç顶é¨æ³¨éä¸ãç±äº æ ¼å¼ï¼æ¼åé误çï¼è¿äºâæ ·æ¿âå¾é¾éè¿é£äºå¨ä¸ä¸æä¸ä½¿ç¨çéªè¯è®¸å¯è¯åè§æ§ çå·¥å ·ã æ ·æ¿ææ¬çæ¿ä»£æ¹æ³æ¯å¨æ¯ä¸ªæºæ件ä¸ä½¿ç¨è½¯ä»¶å æ°æ®äº¤æ¢ï¼SPDXï¼è®¸å¯è¯æ è¯ç¬¦ã SPDX许å¯è¯æ è¯ç¬¦æ¯æºå¨å¯è§£æçï¼å¹¶ä¸æ¯ç¨äºæä¾æ件å 容ç许å¯è¯ç精确缩åã SPDX许å¯è¯æ è¯ç¬¦ç±Linux åºéä¼çSPDX å·¥ä½ç»ç®¡çï¼å¹¶å¾å°äºæ´ä¸ªè¡ä¸ï¼å·¥å · ä¾åºååæ³å¾å¢éçåä½ä¼ä¼´çä¸è´åæãæå ³è¯¦ç»ä¿¡æ¯ï¼è¯·åé https://spdx.org/ Linuxå æ ¸éè¦æææºæ件ä¸ç精确SPDXæ è¯ç¬¦ãå æ ¸ä¸ä½¿ç¨çæææ è¯ç¬¦å¨ `许å¯æ è¯ç¬¦`_ ä¸èä¸è¿è¡äºè§£éï¼å¹¶ä¸å·²å¯ä»¥å¨ https://spdx.org/licenses/ ä¸çå®æ¹SPDX许å¯è¯å表ä¸æ£ç´¢ï¼å¹¶é带许å¯è¯ ææ¬ã 许å¯æ è¯ç¬¦è¯æ³ -------------- 1.å®ç½®:    å æ ¸æ件ä¸çSPDX许å¯è¯æ è¯ç¬¦åºæ·»å å°å¯å å«æ³¨éçæ件ä¸ç第ä¸è¡ã对äºå¤§å¤ æ°æ件ï¼è¿æ¯ç¬¬ä¸è¡ï¼é¤äºé£äºå¨ç¬¬ä¸è¡ä¸éè¦'#!PATH_TO_INTERPRETER'çèæ¬ã 对äºè¿äºèæ¬ï¼SPDXæ è¯ç¬¦è¿å ¥ç¬¬äºè¡ã | 2. é£æ ¼: SPDX许å¯è¯æ è¯ç¬¦ä»¥æ³¨éçå½¢å¼æ·»å ã注éæ ·å¼åå³äºæ件类å:: C source: // SPDX-License-Identifier: <SPDX License Expression> C header: /* SPDX-License-Identifier: <SPDX License Expression> */ ASM: /* SPDX-License-Identifier: <SPDX License Expression> */ scripts: # SPDX-License-Identifier: <SPDX License Expression> .rst: .. SPDX-License-Identifier: <SPDX License Expression> .dts{i}: // SPDX-License-Identifier: <SPDX License Expression> å¦æç¹å®å·¥å ·æ æ³å¤çæ å注éæ ·å¼ï¼ååºä½¿ç¨å·¥å ·æ¥åçç¸åºæ³¨éæºå¶ãè¿æ¯å¨ C 头æ件ä¸ä½¿ç¨â/\*\*/âæ ·å¼æ³¨éçåå ãè¿å»å¨ä½¿ç¨çæç.ldsæ件ä¸è§å¯å° æå»ºè¢«ç ´åï¼å ¶ä¸'ld'æ æ³è§£æC++注éãç°å¨å·²ç»è§£å³äºè¿ä¸ªé®é¢ï¼ä½ä»ç¶æè¾ æ§çæ±ç¼ç¨åºå·¥å ·æ æ³å¤çC++æ ·å¼ç注éã | 3. å¥æ³: <SPDX许å¯è¯è¡¨è¾¾å¼>æ¯SPDX许å¯è¯å表ä¸çSPDXçæ ¼å¼è®¸å¯è¯æ è¯ç¬¦ï¼æè å¨è®¸å¯ è¯ä¾å¤éç¨æ¶ç±âWITHâåéç两个SPDXçæ ¼å¼è®¸å¯è¯æ è¯ç¬¦çç»åãå½åºç¨å¤ä¸ªè®¸ å¯è¯æ¶ï¼è¡¨è¾¾å¼ç±åéå表达å¼çå ³é®åâANDâï¼âORâç»æï¼å¹¶ç±âï¼âï¼âï¼âå å´ã 带æâææ´é«âé项ç[L]GPLç许å¯è¯ç许å¯è¯æ è¯ç¬¦éè¿ä½¿ç¨â+âæ¥è¡¨ç¤ºâææ´é«â é项æ¥æ建ã:: // SPDX-License-Identifier: GPL-2.0+ // SPDX-License-Identifier: LGPL-2.1+ å½éè¦ä¿®æ£ç许å¯è¯æ¶ï¼åºä½¿ç¨WITHã ä¾å¦ï¼linuxå æ ¸UAPIæ件使ç¨è¡¨è¾¾å¼:: // SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note // SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note å ¶å®å¨å æ ¸ä¸ä½¿ç¨WITHä¾å¤çäºä¾å¦ä¸:: // SPDX-License-Identifier: GPL-2.0 WITH mif-exception // SPDX-License-Identifier: GPL-2.0+ WITH GCC-exception-2.0 ä¾å¤åªè½ä¸ç¹å®ç许å¯è¯æ è¯ç¬¦ä¸èµ·ä½¿ç¨ãææç许å¯è¯æ è¯ç¬¦åå¨å¼å¸¸ææ¬æ件 çæ è®°ä¸ãæå ³è¯¦ç»ä¿¡æ¯ï¼è¯·åé `许å¯æ è¯ç¬¦`_ ä¸ç« ä¸ç `ä¾å¤`_ ã å¦ææ件æ¯åé许å¯ä¸åªéæ©ä¸ä¸ªè®¸å¯è¯ï¼ååºä½¿ç¨ORãä¾å¦ï¼ä¸äºdtsiæ件å¨å 许å¯ä¸å¯ç¨:: // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause å æ ¸ä¸å许å¯æ件ä¸è®¸å¯è¡¨è¾¾å¼ç示ä¾:: // SPDX-License-Identifier: GPL-2.0 OR MIT // SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause // SPDX-License-Identifier: GPL-2.0 OR Apache-2.0 // SPDX-License-Identifier: GPL-2.0 OR MPL-1.1 // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT // SPDX-License-Identifier: GPL-1.0+ OR BSD-3-Clause OR OpenSSL å¦ææä»¶å ·æå¤ä¸ªè®¸å¯è¯ï¼å ¶æ¡æ¬¾å ¨é¨éç¨äºä½¿ç¨è¯¥æ件ï¼ååºä½¿ç¨ANDãä¾å¦ï¼ å¦æ代ç æ¯ä»å¦ä¸ä¸ªé¡¹ç®ç»§æ¿çï¼å¹¶ä¸å·²ç»æäºäºå°å ¶æ¾å ¥å æ ¸çæéï¼ä½åå§ è®¸å¯æ¡æ¬¾éè¦ä¿æææ:: // SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) AND MIT å¦ä¸ä¸ªéè¦éµå®ä¸¤å¥è®¸å¯æ¡æ¬¾çä¾åæ¯:: // SPDX-License-Identifier: GPL-1.0+ AND LGPL-2.1+ 许å¯æ è¯ç¬¦ ---------- å½å使ç¨ç许å¯è¯ä»¥åæ·»å å°å æ ¸ç代ç 许å¯è¯å¯ä»¥åè§£ä¸ºï¼ 1. _`ä¼å 许å¯`: åºå°½å¯è½ä½¿ç¨è¿äºè®¸å¯è¯ï¼å 为å®ä»¬å·²ç¥å®å ¨å ¼å®¹å¹¶å¹¿æ³ä½¿ç¨ãè¿äºè®¸å¯è¯å¨å æ ¸ ç®å½:: LICENSES/preferred/ æ¤ç®å½ä¸çæ件å å«å®æ´ç许å¯è¯ææ¬å `å æ è®°`_ ãæ件åä¸SPDX许å¯è¯æ è¯ ç¬¦ç¸åï¼åè åºç¨äºæºæ件ä¸ç许å¯è¯ã ä¾å¦:: LICENSES/preferred/GPL-2.0 å å«GPLv2许å¯è¯ææ¬åæéçå æ ç¾:: LICENSES/preferred/MIT å å«MIT许å¯è¯ææ¬åæéçå æ è®° _`å æ è®°`: 许å¯è¯æ件ä¸å¿ é¡»å å«ä»¥ä¸å æ è®°ï¼ - Valid-License-Identifier:   ä¸è¡æå¤è¡, 声æé£äºè®¸å¯æ è¯ç¬¦å¨é¡¹ç®å ææ, 以å¼ç¨æ¤ç¹å®è®¸å¯çææ¬ãé 常è¿æ¯ä¸ä¸ªææçæ è¯ç¬¦ï¼ä½æ¯ä¾å¦å¯¹äºå¸¦æ'ææ´é«'é项ç许å¯è¯ï¼ä¸¤ä¸ªæ è¯ ç¬¦é½ææã - SPDX-URL: SPDX页é¢çURLï¼å ¶ä¸å å«ä¸è®¸å¯è¯ç¸å ³çå ¶ä»ä¿¡æ¯. - Usage-Guidance: 使ç¨å»ºè®®çèªç±æ ¼å¼ææ¬ã该ææ¬å¿ é¡»å å«SPDX许å¯è¯æ è¯ç¬¦çæ£ç¡®ç¤ºä¾ï¼å 为 å®ä»¬åºæ ¹æ® `许å¯æ è¯ç¬¦è¯æ³`_ æåæ¾å ¥æºæ件ä¸ã - License-Text: æ¤æ è®°ä¹åçææææ¬é½è¢«è§ä¸ºåå§è®¸å¯ææ¬ æä»¶æ ¼å¼ç¤ºä¾:: Valid-License-Identifier: GPL-2.0 Valid-License-Identifier: GPL-2.0+ SPDX-URL: https://spdx.org/licenses/GPL-2.0.html Usage-Guide: To use this license in source code, put one of the following SPDX tag/value pairs into a comment according to the placement guidelines in the licensing rules documentation. For 'GNU General Public License (GPL) version 2 only' use: SPDX-License-Identifier: GPL-2.0 For 'GNU General Public License (GPL) version 2 or any later version' use: SPDX-License-Identifier: GPL-2.0+ License-Text: Full license text :: SPDX-License-Identifier: MIT SPDX-URL: https://spdx.org/licenses/MIT.html Usage-Guide: To use this license in source code, put the following SPDX tag/value pair into a comment according to the placement guidelines in the licensing rules documentation. SPDX-License-Identifier: MIT License-Text: Full license text | 2. ä¸æ¨èç许å¯è¯: è¿äºè®¸å¯è¯åªåºç¨äºç°æ代ç æä»å ¶ä»é¡¹ç®å¯¼å ¥ä»£ç ãè¿äºè®¸å¯è¯å¨å æ ¸ç®å½:: LICENSES/other/ æ¤ç®å½ä¸çæ件å å«å®æ´ç许å¯è¯ææ¬å `å æ è®°`_ ãæ件åä¸SPDX许å¯è¯æ è¯ ç¬¦ç¸åï¼åè åºç¨äºæºæ件ä¸ç许å¯è¯ã ä¾å¦:: LICENSES/other/ISC å å«å½é ç³»ç»èå许å¯ææ¬åæéçå æ ç¾:: LICENSES/other/ZLib å å«ZLIB许å¯ææ¬åæéçå æ ç¾. å æ ç¾: âå ¶ä»â许å¯è¯çå æ ç¾è¦æ±ä¸ `ä¼å 许å¯`_ çè¦æ±ç¸åã æä»¶æ ¼å¼ç¤ºä¾:: Valid-License-Identifier: ISC SPDX-URL: https://spdx.org/licenses/ISC.html Usage-Guide: Usage of this license in the kernel for new code is discouraged and it should solely be used for importing code from an already existing project. To use this license in source code, put the following SPDX tag/value pair into a comment according to the placement guidelines in the licensing rules documentation. SPDX-License-Identifier: ISC License-Text: Full license text | 3. _`ä¾å¤`: æäºè®¸å¯è¯å¯ä»¥ä¿®æ¹ï¼å¹¶å 许åå§è®¸å¯è¯ä¸å ·æçæäºä¾å¤æå©ãè¿äºä¾å¤å¨ å æ ¸ç®å½:: LICENSES/exceptions/ æ¤ç®å½ä¸çæ件å å«å®æ´çä¾å¤ææ¬åæéç `ä¾å¤å æ è®°`_ ã ä¾å¦:: LICENSES/exceptions/Linux-syscall-note å å«Linuxå æ ¸çCOPYINGæ件ä¸è®°å½çLinuxç³»ç»è°ç¨ä¾å¤ï¼è¯¥æ件ç¨äºUAPI 头æ件ãä¾å¦:: LICENSES/exceptions/GCC-exception-2.0 å å«GCC'é¾æ¥ä¾å¤'ï¼å®å 许ç¬ç«äºå ¶è®¸å¯è¯çä»»ä½äºè¿å¶æ件ä¸æ è®°ææ¤ä¾å¤ç æ件çç¼è¯çæ¬é¾æ¥ãè¿æ¯ä»GPLä¸å ¼å®¹æºä»£ç å建å¯è¿è¡çå¯æ§è¡æ件æå¿ éçã _`ä¾å¤å æ è®°`: 以ä¸å æ è®°å¿ é¡»å¨ä¾å¤æ件ä¸å¯ç¨ï¼ - SPDX-Exception-Identifier:   ä¸ä¸ªå¯ä¸SPDX许å¯è¯æ è¯ç¬¦ä¸èµ·ä½¿ç¨çä¾å¤æ è¯ç¬¦ã - SPDX-URL: SPDX页é¢çURLï¼å ¶ä¸å å«ä¸ä¾å¤ç¸å ³çå ¶ä»ä¿¡æ¯ã - SPDX-Licenses:   以éå·åéçä¾å¤å¯ç¨çSPDX许å¯è¯æ è¯ç¬¦å表ã - Usage-Guidance: 使ç¨å»ºè®®çèªç±æ ¼å¼ææ¬ãå¿ é¡»å¨ææ¬åé¢å ä¸SPDX许å¯è¯æ è¯ç¬¦çæ£ç¡®ç¤ºä¾ï¼ å 为å®ä»¬åºæ ¹æ® `许å¯æ è¯ç¬¦è¯æ³`_ æåæ¾å ¥æºæ件ä¸ã - Exception-Text: æ¤æ è®°ä¹åçææææ¬é½è¢«è§ä¸ºåå§å¼å¸¸ææ¬ æä»¶æ ¼å¼ç¤ºä¾:: SPDX-Exception-Identifier: Linux-syscall-note SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+ Usage-Guidance: This exception is used together with one of the above SPDX-Licenses to mark user-space API (uapi) header files so they can be included into non GPL compliant user-space application code. To use this exception add it with the keyword WITH to one of the identifiers in the SPDX-Licenses tag: SPDX-License-Identifier: <SPDX-License> WITH Linux-syscall-note Exception-Text: Full exception text :: SPDX-Exception-Identifier: GCC-exception-2.0 SPDX-URL: https://spdx.org/licenses/GCC-exception-2.0.html SPDX-Licenses: GPL-2.0, GPL-2.0+ Usage-Guidance: The "GCC Runtime Library exception 2.0" is used together with one of the above SPDX-Licenses for code imported from the GCC runtime library. To use this exception add it with the keyword WITH to one of the identifiers in the SPDX-Licenses tag: SPDX-License-Identifier: <SPDX-License> WITH GCC-exception-2.0 Exception-Text: Full exception text ææSPDX许å¯è¯æ è¯ç¬¦åä¾å¤é½å¿ é¡»å¨LICENSESåç®å½ä¸å ·æç¸åºçæ件ãè¿æ¯å 许 å·¥å ·éªè¯ï¼ä¾å¦checkpatch.plï¼ä»¥ååå¤å¥½ä»æºè¯»ååæå许å¯è¯æå¿ éç, è¿æ¯ åç§FOSSç»ç»æ¨èçï¼ä¾å¦ `FSFE REUSE initiative <https://reuse.software/>`_. _`模å许å¯` ----------------- å¯å è½½å æ ¸æ¨¡åè¿éè¦MODULE_LICENSEï¼ï¼æ è®°ãæ¤æ è®°æ¢ä¸æ¿ä»£æ£ç¡®çæºä»£ç 许å¯è¯ä¿¡æ¯ï¼SPDX-License-Identifierï¼ï¼ä¹ä¸ä»¥ä»»ä½æ¹å¼è¡¨ç¤ºæç¡®å®æä¾æ¨¡å æºä»£ç çç¡®å许å¯è¯ã æ¤æ è®°çå¯ä¸ç®çæ¯æä¾è¶³å¤çä¿¡æ¯ï¼è¯¥æ¨¡åæ¯å¦æ¯èªç±è½¯ä»¶æè æ¯å æ ¸æ¨¡åå è½½å¨åç¨æ·ç©ºé´å·¥å ·çä¸æ模åã MODULE_LICENSEï¼ï¼çææ许å¯è¯å符串æ¯: ============================= ============================================= "GPL" 模åæ¯æ ¹æ®GPLçæ¬2许å¯çãè¿å¹¶ä¸è¡¨ç¤ºä» éäº GPL-2.0æGPL-2.0ææ´é«çæ¬ä¹é´çä»»ä½åºå«ã ææ£ç¡®è®¸å¯è¯ä¿¡æ¯åªè½éè¿ç¸åºæºæ件ä¸ç许å¯è¯ ä¿¡æ¯æ¥ç¡®å® "GPL v2" å"GPL"ç¸åï¼å®çåå¨æ¯å 为åå²åå ã "GPL and additional rights" 表示模åæºå¨GPL v2åä½åMIT许å¯ä¸åé许å¯ç åå²åä½ã请ä¸è¦å¨æ°ä»£ç ä¸ä½¿ç¨ã "Dual MIT/GPL" 表达该模åå¨GPL v2åä½æMIT许å¯è¯éæ©ä¸åé 许å¯çæ£ç¡®æ¹å¼ã "Dual BSD/GPL" 该模åæ ¹æ®GPL v2åä½æBSD许å¯è¯éæ©è¿è¡åé 许å¯ã BSD许å¯è¯çç¡®ååä½åªè½éè¿ç¸åºæºæ件 ä¸ç许å¯è¯ä¿¡æ¯æ¥ç¡®å®ã "Dual MPL/GPL" 该模åæ ¹æ®GPL v2åä½æMozilla Public License ï¼MPLï¼é项è¿è¡åé许å¯ã MPL许å¯è¯çç¡®ååä½ åªè½éè¿ç¸åºçæºæ件ä¸ç许å¯è¯ä¿¡æ¯æ¥ç¡®å®ã "Proprietary" 该模åå±äºä¸æ许å¯ãæ¤åç¬¦ä¸²ä» ç¨äºä¸æçç¬¬ä¸ æ¹æ¨¡åï¼ä¸è½ç¨äºå¨å æ ¸æ ä¸å ·ææºä»£ç ç模åã 以è¿ç§æ¹å¼æ è®°ç模åå¨å è½½æ¶ä¼ä½¿ç¨'P'æ 记污 æå æ ¸ï¼å¹¶ä¸å æ ¸æ¨¡åå è½½å¨æç»å°è¿äºæ¨¡åé¾æ¥ å°ä½¿ç¨EXPORT_SYMBOL_GPLï¼ï¼å¯¼åºç符å·ã ============================= =============================================