1Chinese translated version of Documentation/SubmittingPatches 2 3If you have any comment or update to the content, please contact the 4original document maintainer directly. However, if you have a problem 5communicating in English you can also ask the Chinese maintainer for 6help. Contact the Chinese maintainer if this translation is outdated 7or if there is a problem with the translation. 8 9Chinese maintainer: TripleX Chung <triplex@zh-kernel.org> 10--------------------------------------------------------------------- 11Documentation/SubmittingPatches çä¸æç¿»è¯ 12 13妿æ³è¯è®ºææ´æ°æ¬æçå 容ï¼è¯·ç´æ¥èç³»åææ¡£çç»´æ¤è ãå¦æä½ ä½¿ç¨è±æ 14äº¤æµæå°é¾çè¯ï¼ä¹å¯ä»¥å䏿çç»´æ¤è æ±å©ã妿æ¬ç¿»è¯æ´æ°ä¸åæ¶æè ç¿» 15è¯åå¨é®é¢ï¼è¯·èç³»ä¸æçç»´æ¤è ã 16 17䏿çç»´æ¤è ï¼ éå® TripleX Chung <triplex@zh-kernel.org> 18䏿çç¿»è¯è ï¼ éå® TripleX Chung <triplex@zh-kernel.org> 19ä¸æçæ ¡è¯è ï¼ æé³ Li Yang <leo@zh-kernel.org> 20 çèª Wang Cong <xiyou.wangcong@gmail.com> 21 22以ä¸ä¸ºæ£æ 23--------------------------------------------------------------------- 24 25 å¦ä½è®©ä½ çæ¹å¨è¿å ¥å æ ¸ 26 æè 27 è·å¾äº²ç±ç Linus Torvalds çå ³æ³¨åå¤ç 28---------------------------------- 29 30å¯¹äºæ³è¦å°æ¹å¨æäº¤å° Linux å æ ¸ç个人æè å ¬å¸æ¥è¯´ï¼å¦æä¸çæâè§ç©âï¼ 31æäº¤çæµç¨ä¼è®©äººçæ§ãæ¬ææ¡£æ¶éäºä¸ç³»å建议ï¼è¿äºå»ºè®®å¯ä»¥å¤§å¤§çæé«ä½ 32çæ¹å¨è¢«æ¥åçæºä¼ã 33é 读 Documentation/SubmitChecklist æ¥è·å¾å¨æäº¤ä»£ç åéè¦æ£æ¥ç项ç®çå 34表ãå¦æä½ å¨æäº¤ä¸ä¸ªé©±å¨ç¨åºï¼é£ä¹åæ¶é 读ä¸ä¸ 35Documentation/SubmittingDrivers ã 36 37 38-------------------------- 39第ä¸è - å建并åéä½ çæ¹å¨ 40-------------------------- 41 421) "diff -up" 43----------- 44 45ä½¿ç¨ "diff -up" æè "diff -uprN" æ¥å建补ä¸ã 46 47ææå æ ¸çæ¹å¨ï¼é½æ¯ä»¥è¡¥ä¸çå½¢å¼åç°çï¼è¡¥ä¸ç± diff(1) çæãå建补ä¸ç 48æ¶åï¼è¦ç¡®è®¤å®æ¯ä»¥ "unified diff" æ ¼å¼å建çï¼è¿ç§æ ¼å¼ç± diff(1) ç '-u' 49åæ°çæãèä¸ï¼è¯·ä½¿ç¨ '-p' åæ°ï¼é£æ ·ä¼æ¾ç¤ºæ¯ä¸ªæ¹å¨æå¨çC彿°ï¼ä½¿å¾ 50产ççè¡¥ä¸å®¹æè¯»å¾å¤ãè¡¥ä¸åºè¯¥åºäºå æ ¸æºä»£ç æ çæ ¹ç®å½ï¼è䏿¯éè¾¹çä»» 51ä½åç®å½ã 52为ä¸ä¸ªåç¬çæä»¶å建补ä¸ï¼ä¸è¬æ¥è¯´è¿æ ·åå°±å¤äºï¼ 53 54 SRCTREE= linux-2.6 55 MYFILE= drivers/net/mydriver.c 56 57 cd $SRCTREE 58 cp $MYFILE $MYFILE.orig 59 vi $MYFILE # make your change 60 cd .. 61 diff -up $SRCTREE/$MYFILE{.orig,} > /tmp/patch 62 63为å¤ä¸ªæä»¶å建补ä¸ï¼ä½ å¯ä»¥è§£å¼ä¸ä¸ªæ²¡æä¿®æ¹è¿çå æ ¸æºä»£ç æ ï¼ç¶ååä½ èª 64å·±çä»£ç æ ä¹é´å diff ãä¾å¦ï¼ 65 66 MYSRC= /devel/linux-2.6 67 68 tar xvfz linux-2.6.12.tar.gz 69 mv linux-2.6.12 linux-2.6.12-vanilla 70 diff -uprN -X linux-2.6.12-vanilla/Documentation/dontdiff \ 71 linux-2.6.12-vanilla $MYSRC > /tmp/patch 72 73"dontdiff" æ¯å æ ¸å¨ç¼è¯çæ¶å产ççæä»¶çå表ï¼å表ä¸çæä»¶å¨ diff(1) 74产ççè¡¥ä¸éä¼è¢«è·³è¿ã"dontdiff" æä»¶è¢«å å«å¨2.6.12åä¹åçæ¬çå æ ¸æºä»£ 75ç æ ä¸ãå¯¹äºæ´æ©çå æ ¸çæ¬ï¼ä½ å¯ä»¥ä» 76<http://www.xenotime.net/linux/doc/dontdiff> è·åå®ã 77ç¡®å®ä½ çè¡¥ä¸é没æå å«ä»»ä½ä¸å±äºè¿æ¬¡è¡¥ä¸æäº¤çé¢å¤æä»¶ãè®°å¾å¨ç¨diff(1) 78çæè¡¥ä¸ä¹åï¼å®¡é 䏿¬¡è¡¥ä¸ï¼ä»¥ç¡®ä¿åç¡®ã 79å¦æä½ çæ¹å¨å¾æ£ä¹±ï¼ä½ åºè¯¥ç ç©¶ä¸ä¸å¦ä½å°è¡¥ä¸å岿ç¬ç«çé¨åï¼å°æ¹å¨å 80岿ä¸ç³»ååä¹é»è¾çæ¥éª¤ãè¿æ ·æ´å®¹æè®©å ¶ä»å æ ¸å¼åè å®¡æ ¸ï¼å¦æä½ æ³ä½ ç 81è¡¥ä¸è¢«æ¥åï¼è¿æ¯å¾éè¦çãä¸é¢è¿äºèæ¬è½å¤å¸®å©ä½ åè¿ä»¶äºæ ï¼ 82Quilt: 83http://savannah.nongnu.org/projects/quilt 84 85Andrew Morton çè¡¥ä¸èæ¬: 86http://www.zip.com.au/~akpm/linux/patches/ 87ä½ä¸ºè¿äºèæ¬çæ¿ä»£ï¼quilt æ¯å¼å¾æ¨èçè¡¥ä¸ç®¡çå·¥å ·(çä¸é¢ç龿¥)ã 88 892)æè¿°ä½ çæ¹å¨ã 90æè¿°ä½ çæ¹å¨å å«çææ¯ç»èã 91 92è¦å¤å ·ä½å°±åå¤å ·ä½ãæç³ç³çæè¿°å¯è½æ¯åä¸é¢è¿äºè¯å¥ï¼âæ´æ°äºæé©±å¨ç¨ 93åºâï¼âä¿®æ£äºæé©±å¨ç¨åºçbugâï¼æè âè¿ä¸ªè¡¥ä¸å å«äºæåç³»ç»çä¿®æ¹ï¼è¯· 94使ç¨ãâ 95 96å¦æä½ çæè¿°å¼å§åé¿ï¼è¿è¡¨ç¤ºä½ ä¹è®¸éè¦æåä½ çè¡¥ä¸äºï¼è¯·ç第3å°èï¼ 97ç»§ç»ã 98 993)æåä½ çæ¹å¨ 100 101å°æ¹å¨æåï¼é»è¾ç±»ä¼¼çæ¾å°åä¸ä¸ªè¡¥ä¸æä»¶éã 102 103ä¾å¦ï¼å¦æä½ çæ¹å¨éåæ¶æbugä¿®æ£åæ§è½ä¼åï¼é£ä¹æè¿äºæ¹å¨æåå°ä¸¤ä¸ªæ 104è æ´å¤çè¡¥ä¸æä»¶ä¸ãå¦æä½ çæ¹å¨å å«å¯¹APIçä¿®æ¹ï¼å¹¶ä¸ä¿®æ¹äºé©±å¨ç¨åºæ¥é 105åºè¿äºæ°çAPIï¼é£ä¹æè¿äºä¿®æ¹åæä¸¤ä¸ªè¡¥ä¸ã 106 107å¦ä¸æ¹é¢ï¼å¦æä½ å°ä¸ä¸ªåç¬çæ¹å¨åæå¤ä¸ªè¡¥ä¸æä»¶ï¼é£ä¹å°å®ä»¬åå¹¶æä¸ä¸ª 108åç¬çè¡¥ä¸æä»¶ãè¿æ ·ä¸ä¸ªé»è¾ä¸åç¬çæ¹å¨åªè¢«å å«å¨ä¸ä¸ªè¡¥ä¸æä»¶éã 109 110妿æä¸ä¸ªè¡¥ä¸ä¾èµå¦å¤ä¸ä¸ªè¡¥ä¸æ¥å®æå®çæ¹å¨ï¼é£æ²¡é®é¢ãç®åçå¨ä½ çè¡¥ 111ä¸æè¿°éæåºâè¿ä¸ªè¡¥ä¸ä¾èµæè¡¥ä¸â就好äºã 112 113å¦æä½ ä¸è½å°è¡¥ä¸æµç¼©ææ´å°çæä»¶ï¼é£ä¹æ¯æ¬¡å¤§çº¦åéåº15个ï¼ç¶åçå¾ å®¡æ¥ 114åæ´åã 115 1164)éæ© e-mail çæ¶ä»¶äºº 117 118çä¸é MAINTAINERS æä»¶åæºä»£ç ï¼ççä½ æçæ¹å¨æå¨çå æ ¸åç³»ç»ææ²¡ææ 119å®çç»´æ¤è ã妿æï¼ç»ä»ä»¬åe-mailã 120 121å¦ææ²¡ææ¾å°ç»´æ¤è ï¼æè ç»´æ¤è 没æåé¦ï¼å°ä½ çè¡¥ä¸åéå°å æ ¸å¼åè ä¸»é® 122ä»¶å表 linux-kernel@vger.kernel.orgã大é¨åçå æ ¸å¼åè é½è·è¸ªè¿ä¸ªé®ä»¶å 123表ï¼å¯ä»¥è¯ä»·ä½ çæ¹å¨ã 124 125æ¯æ¬¡ä¸è¦åéè¶ è¿15个补ä¸å° vger é®ä»¶å表ï¼ï¼ï¼ 126 127Linus Torvalds æ¯å³å®æ¹å¨è½å¦è¿å ¥ Linux å æ ¸çæç»è£å³è ãä»ç e-mail 128å°åæ¯ <torvalds@linux-foundation.org> ã仿¶å°ç e-mail å¾å¤ï¼æä»¥ä¸è¬ 129çè¯´ï¼æå¥½å«ç»ä»å e-mailã 130 131é£äºä¿®æ£bugï¼âæ¾èæè§âçä¿®æ¹æè æ¯ç±»ä¼¼çåªéè¦å¾å°è®¨è®ºçè¡¥ä¸å¯ä»¥ç´æ¥ 132åéæè CCç»Linusãé£äºéè¦è®¨è®ºæè 没æå¾æ¸ æ¥ç好å¤çè¡¥ä¸ï¼ä¸è¬å åéå° 133linux-kernelé®ä»¶å表ãåªæå½è¡¥ä¸è¢«è®¨è®ºå¾å·®ä¸å¤äºï¼ææäº¤ç»Linusã 134 1355)éæ©CC( e-mail æé)å表 136 137é¤éä½ æçç±ä¸è¿æ ·åï¼å¦åCC linux-kernel@vger.kernel.orgã 138 139é¤äº Linus ä¹å¤ï¼å ¶ä»å æ ¸å¼åè ä¹éè¦æ³¨æå°ä½ çæ¹å¨ï¼è¿æ ·ä»ä»¬æè½è¯è®ºä½ 140çæ¹å¨å¹¶æä¾ä»£ç 审æ¥å建议ãlinux-kernel æ¯ Linux å æ ¸å¼åè 主é®ä»¶å表 141ãå ¶å®çé®ä»¶å表为ç¹å®çåç³»ç»æä¾æå¡ï¼æ¯å¦ USBï¼framebuffer 设å¤ï¼è 142ææä»¶ç³»ç»ï¼SCSI åç³»ç»ï¼ççãæ¥ç MAINTAINERS æä»¶æ¥è·å¾åä½ çæ¹å¨æ 143å ³çé®ä»¶å表ã 144 145Majordomo lists of VGER.KERNEL.ORG at: 146 <http://vger.kernel.org/vger-lists.html> 147 148妿æ¹å¨å½±åäºç¨æ·ç©ºé´åå æ ¸ä¹é´çæ¥å£ï¼è¯·ç» MAN-PAGES çç»´æ¤è ï¼åå¨ 149MAITAINERS æä»¶éçï¼åéä¸ä¸ªæå页ï¼man-pagesï¼è¡¥ä¸ï¼æè è³å°éç¥ä¸ä¸æ¹ 150åï¼è®©ä¸äºä¿¡æ¯æéå¾è¿å ¥æå页ã 151 152å³ä½¿å¨ç¬¬åæ¥çæ¶åï¼ç»´æ¤è 没æä½åºååºï¼ä¹è¦ç¡®è®¤å¨ä¿®æ¹ä»ä»¬ç代ç çæ¶å 153ï¼ä¸ç´å°ç»´æ¤è æ·è´å°CCå表ä¸ã 154 155对äºå°çè¡¥ä¸ï¼ä½ ä¹è®¸ä¼CCå° Adrian Bunk 管ççæéçç¢è¡¥ä¸çé®ä»¶å表 156(Trivial Patch Monkey)trivial@kernel.orgï¼é£éä¸é¨æ¶éçç¢çè¡¥ä¸ãä¸é¢è¿æ · 157çè¡¥ä¸ä¼è¢«çä½âçç¢çâè¡¥ä¸ï¼ 158 ææ¡£çæ¼åä¿®æ£ã 159 ä¿®æ£ä¼å½±åå° grep(1) çæ¼åã 160 è¦åä¿¡æ¯ä¿®æ£(é¢ç¹çæå°æ ç¨çè¦åæ¯ä¸å¥½çã) 161 ç¼è¯é误修æ£ï¼ä»£ç é»è¾çç¡®æ¯å¯¹çï¼åªæ¯ç¼è¯æé®é¢ãï¼ 162 è¿è¡æ¶ä¿®æ£ï¼åªè¦ççä¿®æ£äºé误ãï¼ 163 ç§»é¤ä½¿ç¨äºè¢«åºå¼ç彿°/å®ç代ç (ä¾å¦ check_regionã) 164 èç³»æ¹å¼åææ¡£ä¿®æ£ã 165 ç¨å¯ç§»æ¤çä»£ç æ¿æ¢ä¸å¯ç§»æ¤ç代ç ï¼å³ä½¿å¨ä½ç³»ç»æç¸å ³ç代ç ä¸ï¼æ¢ç¶æ 166 人æ·è´ï¼åªè¦å®æ¯çç¢çï¼ 167 任使件çä½è /ç»´æ¤è 对该æä»¶çæ¹å¨ï¼ä¾å¦ patch monkey å¨éä¼ æ¨¡å¼ä¸ï¼ 168 169URL: <http://www.kernel.org/pub/linux/kernel/people/bunk/trivial/> 170 171(è¯æ³¨ï¼å ³äºâçç¢è¡¥ä¸âçä¸äºè¯´æï¼å 为åæçè¿ä¸é¨åå徿¯è¾ç®åï¼æä»¥ä¸å¾ä¸ 172è¿ä¾åä¸ä¸è¯æ³¨ã"trivial"è¿ä¸ªè±æåè¯çæ¬ææ¯âçç¢çï¼ä¸éè¦çãâ使¯å¨è¿é 173æç¨å¾®æä¸äºååï¼ä¾å¦å¯¹ä¸äºææ¾çNULLæéçä¿®æ£ï¼å±äºè¿è¡æ¶ä¿®æ£ï¼ä¼è¢«å½ç±» 174å°çç¢è¡¥ä¸éãè½ç¶NULLæéçä¿®æ£å¾éè¦ï¼ä½æ¯è¿æ ·çä¿®æ£å¾å¾å¾å°èä¸å¾å®¹æå¾å° 175æ£éªï¼æä»¥ä¹è¢«å½å ¥çç¢è¡¥ä¸ãçç¢è¡¥ä¸æ´ç²¾ç¡®çå½ç±»åºè¯¥æ¯ 176âsimple, localized & easy to verifyâï¼ä¹å°±æ¯è¯´ç®åçï¼å±é¨çåæäºæ£éªçã 177trivial@kernel.orgé®ä»¶å表çç®çæ¯éå¯¹è¿æ ·çè¡¥ä¸ï¼ä¸ºæäº¤è æä¾ä¸ä¸ªä¸å¿ï¼æ¥ 178éä½æäº¤ç鍿§ã) 179 1806)没æ MIME ç¼ç ï¼æ²¡æé¾æ¥ï¼æ²¡æåç¼©ï¼æ²¡æéä»¶ï¼åªæçº¯ææ¬ã 181 182Linus åå ¶ä»çå æ ¸å¼åè éè¦é 读åè¯è®ºä½ æäº¤çæ¹å¨ã对äºå æ ¸å¼åè æ¥è¯´ 183ï¼å¯ä»¥âå¼ç¨âä½ çæ¹å¨å¾éè¦ï¼ä½¿ç¨ä¸è¬ç e-mail å·¥å ·ï¼ä»ä»¬å°±å¯ä»¥å¨ä½ ç 184代ç çä»»ä½ä½ç½®æ·»å è¯è®ºã 185 186å 为è¿ä¸ªåå ï¼ææçæäº¤çè¡¥ä¸é½æ¯ e-mail ä¸âå åµâçã 187è¦åï¼å¦æä½ 使ç¨åªå-ç²è´´ä½ çè¡¥ä¸ï¼å°å¿ä½ çç¼è¾å¨çèªå¨æ¢è¡åè½ç ´åä½ ç 188è¡¥ä¸ã 189 190ä¸è¦å°è¡¥ä¸ä½ä¸º MIME ç¼ç çéä»¶ï¼ä¸ç®¡æ¯å¦å缩ãå¾å¤æµè¡ç e-mail è½¯ä»¶ä¸ 191æ¯ä»»ä½æ¶åé½å° MIME ç¼ç çéä»¶å½ä½çº¯ææ¬åéçï¼è¿ä¼ä½¿å¾å«äººæ æ³å¨ä½ ç 192代ç ä¸å è¯è®ºãå¦å¤ï¼MIME ç¼ç çéä»¶ä¼è®© Linus å¤è±ä¸ç¹æ¶é´æ¥å¤çï¼è¿å°± 193éä½äºä½ çæ¹å¨è¢«æ¥åçå¯è½æ§ã 194 195è¦åï¼ä¸äºé®ä»¶è½¯ä»¶ï¼æ¯å¦ Mozilla ä¼å°ä½ çä¿¡æ¯ä»¥å¦ä¸æ ¼å¼åéï¼ 196---- é®ä»¶å¤´ ---- 197Content-Type: text/plain; charset=us-ascii; format=flowed 198---- é®ä»¶å¤´ ---- 199é®é¢å¨äº âformat=flowedâ ä¼è®©æ¥æ¶ç«¯çæäºé®ä»¶è½¯ä»¶å°é®ä»¶ä¸çå¶è¡¨ç¬¦æ¿æ¢ 200æç©ºæ ¼ä»¥ååä¸äºç±»ä¼¼çæ¿æ¢ãè¿æ ·ï¼ä½ åéçæ¶åçèµ·æ¥æ²¡é®é¢çè¡¥ä¸å°±è¢«ç ´ 201åäºã 202 203è¦ä¿®æ£è¿ä¸ªé®é¢ï¼åªéè¦å°ä½ ç mozilla ç defaults/pref/mailnews.js æä»¶ 204éç 205pref("mailnews.send_plaintext_flowed", false); // RFC 2646======= 206ä¿®æ¹æ 207pref("mailnews.display.disable_format_flowed_support", true); 208å°±å¯ä»¥äºã 209 2107) e-mail çå¤§å° 211 212ç» Linus åéè¡¥ä¸çæ¶åï¼æ°¸è¿æç §ç¬¬6å°è说çåã 213 214å¤§çæ¹å¨å¯¹é®ä»¶å表ä¸åéï¼å¯¹æäºç»´æ¤è ä¹ä¸åéãå¦æä½ çè¡¥ä¸ï¼å¨ä¸å缩 215çæ åµä¸ï¼è¶ è¿äº40kBï¼é£ä¹ä½ æå¥½å°è¡¥ä¸æ¾å¨ä¸ä¸ªè½éè¿ internet 访é®çæ 216å¡å¨ä¸ï¼ç¶åç¨æåä½ çè¡¥ä¸ç URL æ¿ä»£ã 217 2188) æåºä½ çå æ ¸çæ¬ 219 220卿 é¢åå¨è¡¥ä¸çæè¿°ä¸ï¼æåºè¡¥ä¸å¯¹åºçå æ ¸ççæ¬ï¼æ¯å¾éè¦çã 221 222å¦æè¡¥ä¸ä¸è½å¹²åç卿æ°çæ¬çå æ ¸ä¸æä¸ï¼Linus æ¯ä¸ä¼æ¥åå®çã 223 2249) ä¸è¦æ°é¦ï¼ç»§ç»æäº¤ã 225 226å½ä½ æäº¤äºæ¹å¨ä»¥åï¼èå¿å°çå¾ ã妿 Linus 忬¢ä½ çæ¹å¨å¹¶ä¸åæå®ï¼é£ä¹ 227å®å°å¨ä¸ä¸ä¸ªå æ ¸åå¸çæ¬ä¸åºç°ã 228 229ç¶èï¼å¦æä½ çæ¹å¨æ²¡æåºç°å¨ä¸ä¸ä¸ªçæ¬çå æ ¸ä¸ï¼å¯è½æè¥å¹²åå ãåå°é£ 230äºåå ï¼ä¿®æ£é误ï¼éæ°æäº¤æ´æ°åçæ¹å¨ï¼æ¯ä½ èªå·±çå·¥ä½ã 231 232Linusä¸ç»åºä»»ä½è¯è®ºå°±â丢å¼âä½ çè¡¥ä¸æ¯å¸¸è§çäºæ ãå¨ç³»ç»ä¸è¿æ ·çäºæ å¾ 233平常ã妿仿²¡ææ¥åä½ çè¡¥ä¸ï¼ä¹è®¸æ¯ç±äºä»¥ä¸åæ¬ï¼ 234* ä½ çè¡¥ä¸ä¸è½å¨ææ°çæ¬çå æ ¸ä¸å¹²åçæä¸ã 235* ä½ çè¡¥ä¸å¨ linux-kernel é®ä»¶åè¡¨ä¸æ²¡æå¾å°å åç讨论ã 236* 飿 ¼é®é¢ï¼åç §ç¬¬2å°èï¼ 237* é®ä»¶æ ¼å¼é®é¢ï¼é读æ¬èï¼ 238* ä½ çæ¹å¨æææ¯é®é¢ã 239* 仿¶å°äºæå¨ç e-mailï¼èä½ ç卿··ä¹±ä¸ä¸¢å¤±äºã 240* ä½ è®©äººä¸ºé¾ã 241 242æçé®çæ¶åï¼å¨ linux-kernel é®ä»¶å表ä¸è¯·æ±è¯è®ºã 243 24410) 卿 é¢ä¸å ä¸ PATCH çåæ · 245 246Linus å linux-kernel é®ä»¶å表ç e-mail æµéé½å¾é«ï¼ä¸ä¸ªé常ççº¦å®æ¯æ 247é¢è¡ä»¥ [PATCH] å¼å¤´ãè¿æ ·å¯ä»¥è®© Linus åå ¶ä»å æ ¸å¼å人åå¯ä»¥ä» e-mail 248ç讨论ä¸å¾è½»æçå°è¡¥ä¸åè¾¨åºæ¥ã 249 25011ï¼ä¸ºä½ çå·¥ä½ç¾å 251 252为äºå 强对è°åäºä½äºç追踪ï¼å°¤å ¶æ¯å¯¹é£äºéè¿å¥½å å±çç»´æ¤è çè¡¥ä¸ï¼æä»¬ 253建议å¨åéåºå»çè¡¥ä¸ä¸å ä¸ä¸ª âsign-offâ çè¿ç¨ã 254 255"sign-off" æ¯å¨è¡¥ä¸ç注éçæåçç®åçä¸è¡æåï¼è®¤è¯ä½ ç¼åäºå®æè å ¶ä» 256人ææåå°å®ä½ä¸ºå¼æ¾æºä»£ç çè¡¥ä¸ä¼ éãè§åå¾ç®åï¼å¦æä½ è½è®¤è¯å¦ä¸ä¿¡æ¯ 257ï¼ 258 å¼åè æ¥æºè¯ä¹¦ 1.1 259 å¯¹äºæ¬é¡¹ç®çè´¡ç®ï¼æè®¤è¯å¦ä¸ä¿¡æ¯ï¼ 260 ï¼aï¼è¿äºè´¡ç®æ¯å®å ¨æè é¨åçç±æåå»ºï¼æææå©ä»¥æä»¶ä¸æåº 261 ç弿¾æºä»£ç 许å¯è¯æäº¤å®ï¼æè 262 ï¼bï¼è¿äºè´¡ç®åºäºä»¥åçå·¥ä½ï¼æ®ææç¥ï¼è¿äºä»¥åçå·¥ä½åæ°å½ç弿¾ 263 æºä»£ç 许å¯è¯ä¿æ¤ï¼èä¸ï¼æ ¹æ®è®¸å¯è¯ï¼ææææäº¤ä¿®æ¹åçè´¡ç®ï¼ 264 æ 论æ¯å®å ¨è¿æ¯é¨åç±æåé ï¼è¿äºè´¡ç®é½ä½¿ç¨åä¸ä¸ªå¼æ¾æºä»£ç 许å¯è¯ 265 ï¼é¤éæè¢«å 许ç¨å ¶å®ç许å¯è¯ï¼ï¼æ£å¦æä»¶ä¸æåºçï¼æè 266 ï¼cï¼è¿äºè´¡ç®ç±è®¤è¯ï¼aï¼ï¼ï¼bï¼æè ï¼cï¼çäººç´æ¥æä¾ç»æï¼è 267 ä¸ææ²¡æä¿®æ¹å®ã 268 ï¼dï¼æç解并åæè¿ä¸ªé¡¹ç®åè´¡ç®æ¯å ¬å¼çï¼è´¡ç®çè®°å½ï¼å æ¬æ 269 ä¸èµ·æäº¤ç个人记å½ï¼å æ¬ sign-off ï¼è¢«æ°¸ä¹ ç»´æ¤å¹¶ä¸å¯ä»¥åè¿ä¸ªé¡¹ç® 270 æè 弿¾æºä»£ç ç许å¯è¯åæ¥å°ååè¡ã 271 é£ä¹å å ¥è¿æ ·ä¸è¡ï¼ 272 Signed-off-by: Random J Developer <random@developer.example.org> 273 274使ç¨ä½ ççåï¼æ±æï¼ä¸è½ä½¿ç¨ååæè å¿åãï¼ 275 276æäººå¨æåå 䏿 ç¾ãç°å¨è¿äºä¸è¥¿ä¼è¢«å¿½ç¥ï¼ä½æ¯ä½ å¯ä»¥è¿æ ·åï¼æ¥æ è®°å ¬å¸ 277å é¨çè¿ç¨ï¼æè åªæ¯æåºå ³äº sign-off çä¸äºç¹æ®ç»èã 278 27912ï¼æ åè¡¥ä¸æ ¼å¼ 280 281æ åçè¡¥ä¸ï¼æ é¢è¡æ¯ï¼ 282 Subject: [PATCH 001/123] åç³»ç»:ä¸å¥è¯æ¦è¿° 283 284æ åè¡¥ä¸çä¿¡ä½åå¨å¦ä¸é¨åï¼ 285 286 - ä¸ä¸ª "from" è¡æåºè¡¥ä¸ä½è ã 287 288 - ä¸ä¸ªç©ºè¡ 289 290 - 说æç主ä½ï¼è¿äºè¯´ææåä¼è¢«æ·è´å°æè¿°è¯¥è¡¥ä¸çæ°¸ä¹ æ¹å¨è®°å½éã 291 292 - ä¸ä¸ªç±"---"ææçæ è®°è¡ 293 294 - ä¸å鿾尿¹å¨è®°å½éçé¢å¤ç注解ã 295 296 - è¡¥ä¸æ¬èº«ï¼diff è¾åºï¼ 297 298æ é¢è¡çæ ¼å¼ï¼ä½¿å¾å¯¹æ é¢è¡æåæ¯åºæåºé常ç容æ - å¾å¤ e-mail 客æ·ç«¯é½ 299å¯ä»¥æ¯æ - å 为åºåå·æ¯ç¨é¶å¡«å çï¼æä»¥ææ°åæåºåæåæ¯æåºæ¯ä¸æ ·çã 300 301e-mail æ é¢ä¸çâåç³»ç»âæ è¯åªä¸ªå æ ¸åç³»ç»å°è¢«æè¡¥ä¸ã 302 303e-mail æ é¢ä¸çâä¸å¥è¯æ¦è¿°âæ¼è¦çæè¿° e-mail ä¸çè¡¥ä¸ãâä¸å¥è¯æ¦è¿°â 304ä¸åºè¯¥æ¯ä¸ä¸ªæä»¶åã对äºä¸ä¸ªè¡¥ä¸ç³»åï¼âè¡¥ä¸ç³»åâæä¸ç³»åçå¤ä¸ªç¸å ³è¡¥ 305ä¸ï¼ï¼ä¸è¦å¯¹æ¯ä¸ªè¡¥ä¸é½ä½¿ç¨åæ ·çâä¸å¥è¯æ¦è¿°âã 306 307è®°ä½ e-mail çâä¸å¥è¯æ¦è¿°âä¼æä¸ºè¯¥è¡¥ä¸çå ¨å±å¯ä¸æ è¯ãå®ä¼èå»¶å° git 308çæ¹å¨è®°å½éãç¶åâä¸å¥è¯æ¦è¿°âä¼è¢«ç¨å¨å¼åè ç讨论éï¼ç¨æ¥æä»£è¿ä¸ªè¡¥ 309ä¸ãç¨æ·å°å¸æéè¿ google æ¥æç´¢"ä¸å¥è¯æ¦è¿°"æ¥æ¾å°é£äºè®¨è®ºè¿ä¸ªè¡¥ä¸çæ 310ç« ã 311 312ä¸äºæ é¢çä¾åï¼ 313 314 Subject: [patch 2/5] ext2: improve scalability of bitmap searching 315 Subject: [PATCHv2 001/207] x86: fix eflags tracking 316 317"from" è¡æ¯ä¿¡ä½éçæä¸é¢ä¸è¡ï¼å ·æå¦ä¸æ ¼å¼ï¼ 318 From: Original Author <author@example.com> 319 320"from" è¡ææå¨æ°¸ä¹ æ¹å¨æ¥å¿éï¼è°ä¼è¢«ç¡®è®¤ä¸ºä½è ãå¦ææ²¡æ "from" è¡ï¼é£ 321ä¹é®ä»¶å¤´éç "From: " è¡ä¼è¢«ç¨æ¥å³å®æ¹å¨æ¥å¿ä¸çä½è ã 322 323说æç主é¢å°ä¼è¢«æäº¤å°æ°¸ä¹ çæºä»£ç æ¹å¨æ¥å¿éï¼å æ¤å¯¹é£äºæ©å·²ç»ä¸è®°å¾å 324è¿ä¸ªè¡¥ä¸ç¸å ³ç讨论ç»èçæè½åçè¯»è æ¥è¯´ï¼æ¯ææä¹çã 325 326"---" æ è®°è¡å¯¹äºè¡¥ä¸å¤çå·¥å ·è¦æ¾å°åªéæ¯æ¹å¨æ¥å¿ä¿¡æ¯çç»æï¼æ¯ä¸å¯ç¼ºå° 327çã 328 329å¯¹äº "---" æ è®°ä¹åçé¢å¤æ³¨è§£ï¼ä¸ä¸ªå¥½çç¨éå°±æ¯ç¨æ¥å diffstatï¼ç¨æ¥æ¾ 330示修æ¹äºä»ä¹æä»¶åæ¯ä¸ªæä»¶é½å¢å åå é¤äºå¤å°è¡ãdiffstat å¯¹äºæ¯è¾å¤§çè¡¥ 331ä¸ç¹å«æç¨ãå ¶ä½é£äºåªæ¯åæ¶å»æè å¼åè ç¸å ³ç注解ï¼ä¸å鿾尿°¸ä¹ çæ¹ 332卿¥å¿éçï¼ä¹åºè¯¥æ¾è¿éã 333ä½¿ç¨ diffstatçé项 "-p 1 -w 70" è¿æ ·æä»¶åå°±ä¼ä»å æ ¸æºä»£ç æ çç®å½å¼å§ 334ï¼ä¸ä¼å ç¨å¤ªå®½ç空é´ï¼å¾å®¹æéå80åç宽度ï¼ä¹è®¸ä¼æä¸äºç¼©è¿ãï¼ 335 336å¨åé¢çåèèµæä¸è½çå°éå½çè¡¥ä¸æ ¼å¼çæ´å¤ç»èã 337 338------------------------------- 339第äºè æç¤ºï¼å»ºè®®åè¯çª 340------------------------------- 341 342æ¬èå å«å¾å¤åæäº¤å°å æ ¸çä»£ç æå ³çé常ç"è§å"ãäºæ æ°¸è¿æä¾å¤...使¯ 343ä½ å¿ é¡»ççæå¥½ççç±è¿æ ·åãä½ å¯ä»¥ææ¬èå«åLinusçè®¡ç®æºç§å¦å ¥é¨è¯¾ã 344 3451) 读 Document/CodingStyle 346 347Nuff 说è¿ï¼å¦æä½ ç代ç åè¿ä¸ªå离太å¤ï¼é£ä¹å®æå¯è½ä¼è¢«æç»ï¼æ²¡ææ´å¤ç 348审æ¥ï¼æ²¡ææ´å¤çè¯ä»·ã 349 3502) #ifdef æ¯ä¸éç 351æ··æäº ifdef ç代ç é¾ä»¥é 读åç»´æ¤ãå«è¿æ ·åãä½ä¸ºæ¿ä»£ï¼å°ä½ ç ifdef æ¾ 352å¨å¤´æä»¶éï¼ææ¡ä»¶å°å®ä¹ "static inline" 彿°ï¼æè å®ï¼å¨ä»£ç éç¨è¿äºä¸ 353西ã让ç¼è¯å¨æé£äº"空æä½"ä¼åæã 354 355ä¸ä¸ªç®åçä¾åï¼ä¸å¥½ç代ç ï¼ 356 357 dev = alloc_etherdev (sizeof(struct funky_private)); 358 if (!dev) 359 return -ENODEV; 360 #ifdef CONFIG_NET_FUNKINESS 361 init_funky_net(dev); 362 #endif 363 364æ¸ çåçä¾å: 365 366(头æä»¶é) 367 #ifndef CONFIG_NET_FUNKINESS 368 static inline void init_funky_net (struct net_device *d) {} 369 #endif 370 371(ä»£ç æä»¶é) 372 dev = alloc_etherdev (sizeof(struct funky_private)); 373 if (!dev) 374 return -ENODEV; 375 init_funky_net(dev); 376 3773) 'static inline' æ¯å®å¥½ 378 379Static inline 彿°ç¸æ¯å®æ¥è¯´ï¼æ¯å¥½å¾å¤çéæ©ãStatic inline 彿°æä¾äº 380ç±»åå®å ¨ï¼æ²¡æé¿åº¦éå¶ï¼æ²¡ææ ¼å¼éå¶ï¼å¨ gcc ä¸å¼éåå®ä¸æ ·å°ã 381 382å®åªå¨ static inline 彿°ä¸æ¯æä¼çæ¶å[å¨ fast paths éæå¾å°çç¬ç«ç 383æ¡ä¾]ï¼æè ä¸å¯è½ç¨ static inline 彿°çæ¶å[ä¾å¦å符串åé ]ã 384åºè¯¥ç¨ 'static inline' è䏿¯ 'static __inline__', 'extern inline' å 385'extern __inline__' ã 386 3874) ä¸è¦è¿åº¦è®¾è®¡ 388 389ä¸è¦è¯å¾é¢è®¡æ¨¡ç³çæªæ¥äºæ ï¼è¿äºäºæ ä¹è®¸æç¨ä¹è®¸æ²¡æç¨ï¼"è®©äºæ å°½å¯è½ç 390ç®åï¼è䏿¯æ´ç®å"ã 391 392---------------- 393第ä¸è åèæç® 394---------------- 395 396Andrew Morton, "The perfect patch" (tpp). 397 <http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt> 398 399Jeff Garzik, "Linux kernel patch submission format". 400 <http://linux.yyz.us/patch-format.html> 401 402Greg Kroah-Hartman, "How to piss off a kernel subsystem maintainer". 403 <http://www.kroah.com/log/2005/03/31/> 404 <http://www.kroah.com/log/2005/07/08/> 405 <http://www.kroah.com/log/2005/10/19/> 406 <http://www.kroah.com/log/2006/01/11/> 407 408NO!!!! No more huge patch bombs to linux-kernel@vger.kernel.org people! 409 <http://marc.theaimsgroup.com/?l=linux-kernel&m=112112749912944&w=2> 410 411Kernel Documentation/CodingStyle: 412 <http://sosdg.org/~coywolf/lxr/source/Documentation/CodingStyle> 413 414Linus Torvalds's mail on the canonical patch format: 415 <http://lkml.org/lkml/2005/4/7/183> 416-- 417

