ELCEurope2018GengyourpatchesintomainlineLinuxWhatnottodo(andafewthingsyoucouldtryinstead)MarcZyngierOctober22,20182018ArmLimitedOpeningcreditsBeenmessingwiththeLinuxkernelsince1993PleaseblameStéphaneEranian.
.
.
Firstpatchesmergedin1996(mddriver)Don'temailmeifyourdiskarraygetscorrupted.
.
.
Ooadedmaintainershipin1997WithARMsince2010Tryingtobridgearchitecture,hardware,andobviouslyLinuxLookingaerKVM/armtogetherwithChristoerDallIRQsubsystemtogetherwithThomasGleixner22018ArmLimitedDisclaimerThisisn'tamaintainerrant!
ThistalkisforEVERYONE!
DoesnotonlyapplytorstmecontributorsThereissomethingforlongmehackersaswell!
NotallmaintainerswillagreewithmeIfyougetamedfordoinganyofthis,sendthemmyway!
32018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored"42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored""Ihavepostedthesepatches4mes,andtheyaresllnotmerged"42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored""Ihavepostedthesepatches4mes,andtheyaresllnotmerged""I'vecopiedthiscodefromamainlinedriver,andyou'retellingmeitisn'tright"42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored""Ihavepostedthesepatches4mes,andtheyaresllnotmerged""I'vecopiedthiscodefromamainlinedriver,andyou'retellingmeitisn'tright""Ionlywantthiscodemerged,Idon'thavethemetodoallthisextrawork"42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored""Ihavepostedthesepatches4mes,andtheyaresllnotmerged""I'vecopiedthiscodefromamainlinedriver,andyou'retellingmeitisn'tright""Ionlywantthiscodemerged,Idon'thavethemetodoallthisextrawork""ButI'mgivingyouthiscodeforfree,whyaren'tyoujusttakingit"42018ArmLimitedRecurrentthemesThereisabitofadisconnectbetweencontributorsandmaintainers:"Mypatchesarebeingignored""Ihavepostedthesepatches4mes,andtheyaresllnotmerged""I'vecopiedthiscodefromamainlinedriver,andyou'retellingmeitisn'tright""Ionlywantthiscodemerged,Idon'thavethemetodoallthisextrawork""ButI'mgivingyouthiscodeforfree,whyaren'tyoujusttakingit""Idon'thavethemetounderstandthis,justtellmewhatIshouldwrite"42018ArmLimitedThecharacters52018ArmLimitedTheContributorSubmitsachangetothemainlinekernelsourceIntendstogetitmergedeventuallyCanbeanewfeatureabugxcodecleanupComplexityofthechangesrangesfromtrivialtobrain-melngThecontributorisoentheonewhounderstandstheproblembest62018ArmLimitedTheReviewerCanbedisnctfromthemaintainerOenothercontributorsSpreadstheload,sothatmaintainersdoscaleProbablytheleastrecognised,andyetoneofthemostimportantcharactersinthisstory72018ArmLimitedTheMaintainerThemaintainersareresponsibleforsomepieceofcodeinthekernel:nottobreaktobesecurereadable,understandableUlmatelytheoneswhoputtheirneckonthelineSpendanawfullotofmereviewingotherpeople'scodeOenthetargetofhundredsofemailsaday82018ArmLimitedMovaonsThesecharactershavequiteafewthingsincommon:Meengatasinglepointofcontenon:thecodeTryingtosolvedicultproblemsIndividualresponsibility,personalinvestmentVeryoennottheirmainjobQuiteoenacontributorgrowsintoareviewer,andthenamaintainer92018ArmLimitedTheplot102018ArmLimitedThekernelsubmissionworkowYouhavewrienpatchesforawickedidea:PostapatchseriesGetitreviewedRespondtocommentsRinse,repeatLookssimple,butthereisalotbehindthis.
112018ArmLimitedThekernelsubmissionworkowYouhavewrienpatchesforawickedidea:PostapatchseriesGetitreviewedRespondtocommentsRinse,repeatLookssimple,butthereisalotbehindthis.
Whatisthat"patchseries"thingWhodoIsendittoHowdoIgetitreviewedIdon'tunderstandthesecommentsandotherrequests.
.
.
112018ArmLimitedThekernelsubmissionworkowYouhavewrienpatchesforawickedidea:PostapatchseriesGetitreviewedRespondtocommentsRinse,repeatLookssimple,butthereisalotbehindthis.
Whatisthat"patchseries"thingWhodoIsendittoHowdoIgetitreviewedIdon'tunderstandthesecommentsandotherrequestsCanbeoverwhelming112018ArmLimitedWhatisapatchseriesItisanorderedsetofpatchesItisconceptuallyasinglechangeSplitintomulplepatchesSplingpatchesisahardtopicNothinginthekernelbreaksatanypointinthemiddleoftheseriesWehavealimitedcapacitytoprocesshugechangesinonego122018ArmLimitedWhatdoesapatchserieslooklikeEachpatchhasatleandaclearcommitmessageEachpatchisnumberedx/n(patchnumberxoutofn)Wherexisunique,nisconstantacrosstheseries,andx<=nIthasauniqueversionnumberforthewholeseriesDonotpostaserieswiththesameversionnumbertwice!
Ithasacoverleer,numbered0/nUsuallyonlyifthereismorethanasinglepatchThecoverleerdescribethegoaloftheseriesandcontainsachangelogItcontainsadi-statofthewholeseriesAllthepatchesintheseriesareinreplytothecoverleer132018ArmLimitedWhytheserequirementsFromamaintainerorreviewerpointofview,theserequirementsarecrucial:Ordered:AllowsthereviewertoseeaprogressioninthedesignNeededforbiseconLogicalchanges:MulplethingschangingatoncemakethingshardtoreviewPatchnumbering:AmImissinganypatchinthisseriesHelpswiththeordering/threadinginanemailclientVersionnumbering:IsthissomethingnewOrhasitbeenreviewedalreadyDon'treplywithasinglepatchwithanewversionnumberCoverleer:SoyouknowwhatchangedfromonerevisiontoanotherMakesurealltherecipientsoftheseriesreceivethecoverleerAchancetohavingaconversaonwiththemaintainers142018ArmLimitedPatchseries:Don'tdothatIfyou'reabouttosendsomethingthatmayenduplookinglikethis:(Mon)18:58[Anonymous]RESEND[PATCHv510/12]arm64:vdso:replacegettimeofday.
Swithglobalvgettimeofday.
C(Mon)18:58[Anonymous]RESEND[PATCHv31/3]arm64:compat:Splitthesigreturntrampolinesandkuserhelpers(Csources)(Mon)18:58[Anonymous]RESEND[PATCHv32/3]arm64:compat:Splitthesigreturntrampolinesandkuserhelpers(assembler.
.
.
(Mon)18:58[Anonymous]RESEND[PATCHv33/3]arm64:compat:AddCONFIG_KUSER_HELPERS(Mon)18:58[Anonymous]RESEND[PATCH]arm64:compat:Exposeoffsettoregistersinsigframes(Mon)18:58[Anonymous]RESEND[PATCHv26/6]arm64:WireupandexposethenewcompatvDSO.
.
.
pleasedon't.
TryingtomakesenseofthisseriesisjusttoohardProbablymissingonsomeverygoodcodeThisisanetlossforthekernel152018ArmLimitedUsethetools,Lukegitisreallytheonlytoolyouneedandthereisnolifeworthlivingoutsideofgit.
.
.
AlthoughyoucanusesometoolontopofgititselfButreally,youdon'tneedthatDonotsendpatchseriesbyhand.
Ever.
One-oconguraon:ConguregitasanemailclientSetsendmail.
tocover=1,sendmail.
cccover=1in~/.
gitconfigForeachseriesyouwanttosend:Idenfytherecipientsforthisseries.
Usescripts/get_maintainers.
plgitformat-patch-opatches/blah-v3--cover-letterv4.
19.
.
HEADEditpatches/blah/v3-0000-cover-letter.
patch,addingtherecipientsinyourcoverleergitsend-email--dry-runpatches/blah/v3-*patchIfitlooksgood,dropthe--dry-runandletitroll162018ArmLimitedUsingemailPleaseusethecanonicalemailequeewhenposngorresponding:Plaintextemailonly,noHTMLReplyinline,nottop-posngAvoidaachementsifatallpossibleNosillydisclaimer(thisisapublicmailinglist!
)CcpeoplewhenitmaersKeeptheCclistshortTrimtheemailyou'rerespondingtotheessenalcontext172018ArmLimitedDigression:whyemail"Whydoyouusethissillyoutdatedtechnologyinsteadof[web-thing-of-the-week]"Well,emailis:Mul-plaormArchivedAvailableoineNotinteracveDistributedEasytointegratewithgitandCIGengridofemailwouldrequireanewsystemtosasfytheseproperes.
Ofcourse,quiteafeworganisaoncannotdoemailproperly.
.
.
That'savalidconcernAlotofpeopleareusingtheirpersonalemailforthisELCtalkideafornextyear:SMTPinaXXXXhoslecorporateenvironment182018ArmLimitedOfreviewersandbandwidthYou'vepostedapatchseriestwodaysagoandquicklyreceivedsomecommentsYou'vequicklyaddressedthose,collectedalltheAcksandreviewtags.
.
.
andnoweagerpostanewversionNowtakeadeepbreath.
Giveachancetootherreviewerstocatchupwithyourwork.
Posngtoooenisusuallycounter-producveOnlyresultsinaDoSonthereviewer(youdon'twantthat)Allowaboutaweekbetweeneachversion,unlessaskedforanimmediaterespinRememberhowlongittookyoutowritethesepatchesReviewingthemwon'tbeanyquicker192018ArmLimitedScreenplay202018ArmLimitedThemaintainer/reviewerworkowIsitsomethingI'minterestedinormaintainDoesthepatchseriesmakesenseIsthereanyreportedfailureFixorfeaturePriorisaonEachmaintainerorreviewerhasspecicrequirementsNosuchthingasOneSieFitsAll212018ArmLimitedThemaintainer/reviewerworkowIsitsomethingI'minterestedinormaintainDoesthepatchseriesmakesenseIsthereanyreportedfailureFixorfeaturePriorisaonEachmaintainerorreviewerhasspecicrequirementsNosuchthingasOneSieFitsAllButthereissomethingthatinuencestheabove:TrustThisishowwerecognisecontributorsandreviewersMostoenpeoplewhogotheextramileWhenareviewerormaintainerasksforsomeextraworkonapatchseriesItisnottoannoythecontributorItistoimprovetheoverallqualityofthekernelitselfEventuallytobuildtrustbetweenthetwopares212018ArmLimitedWhytrustThisishowtheoverallpatchmergingmodelworks.
Thereistrustbetween:Linusandthetop-levelmaintainerstoplevelmaintainersandtheirsub-maintainersco-maintainersofasinglesubsystemIntheend,thistrustisjustasimportantasthecode.
Asowareprojectthatdoesn'tencouragecontribuonsdiesOneofmaintainers'roleistoretainthebestcontributorsWealwaysneednewreviewersandco-maintainersThebestcontribuonsbenetthelargestpartofthecommunityThisrequiresinvolvementofallpares222018ArmLimitedBuildingtrustAmaintainerorreviewercanaskyoutodosomeaddionalwork:ProvideabeerinfrastructureRefactorcodetolimitduplicaonMovebitsofafeaturetocorecodeTrytostepawayfromyourowncodeforawhile.
.
.
SeehowthisrequesttsintotheoverallkernelIftherequestisunclear,askforclaricaon!
Ifyouthinkthisisn'tjused,trytocomeupwithyourownproposalThemaintainerisnotalwaysright,givethemanalternaveperspecveBecomethetrustedmaintainerofyourowncode!
232018ArmLimitedDigression:Drive-bypatchingOne-ocontribuonsContributornevertobeseenagainSomemesthekernelequivalentof"y-pping"Seetheabove"usttakeitalready"WedonotwanttodiscouragethisAnumberofbugxescomefromthoseone-osSomeotherarejustabunchofunmaintainablechangesWe'dalsoliketoconvincethesepeopletosckaround.
.
.
Aerall,weallstartedwiththisrstpatch.
.
.
ItisunclearhowwecanincenvisethesecontributorstoLookforanotherissuetoxHaveamoreconnuedengagementwiththekernelcommunity242018ArmLimitedBecomingareviewerOneofbestwaytoimproveyourkernel-fooistoreviewpatchesPicksomethingyou'reinterestedinYoudon'thavetobeanexpertinthedomainYoujustneedtobeabletofollowthecodeIfsomethingseemsunclear,askquesons!
Ifyouspotaproblem,sayso!
Ifyou'resasedwiththewaythecodelooks:Oponallyprovidea"Reviewed-by"Rememberthatyou'rereviewing"tothebestofyourability"Evenifyou'renotprovidingatag,yourinputisvaluable252018ArmLimitedBeyourrstreviewerBeforeyou'reabouttosendapatchseries:ReadyourownpatchesImeanit!
Really!
ThisisthebestwaytocatchbasicmistakesPutyourselfinthereviewer'sshoesDoesthiscodemakesenseIsitsplitinacoherentwayIsitcommented,documentedwellenoughHaveyoutakenallthereviewitemsintoaccountHaveyoucollectedalltheAcked-by:andReviewed-by:tagsIfyou'veanswered"yes"toalltheabove,shipit!
262018ArmLimitedClosingcommentsContribungtotheLinuxkernelisbothtoughandrewardingWearealltryingtoworktogetheronchangingsomepartofacode-baseUnderstandingeachother'spointofviewiskey–butcanbereallyhardBuildingaleveloftrustandunderstandingmakeseverythingeasierWehavetoolsandprocessesforgoodreasons–wearenotjusttryingtobedicult.
Honestly.
Askmeanythingifyou'reindoubt.
Pleasetrustmetobefriendly.
272018ArmLimitedThankyouTheArmtrademarksfeaturedinthispresentaonareregisteredtrademarksortrademarksofArmLimited(oritssubsidiaries)intheUSand/orelsewhere.
Allrightsreserved.
Allothermarksfeaturedmaybetrademarksoftheirrespecveowners.
www.
arm.
com/company/policies/trademarks2018ArmLimited
iON Cloud怎么样?iON Cloud升级了新加坡CN2 VPS的带宽和流量最低配的原先带宽5M现在升级为10M,流量也从原先的150G升级为250G。注意,流量也仅计算出站方向。iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠...
目前,我们都在用哪个FTP软件?喜欢用的是WinSCP,是一款免费的FTP/SFTP软件。今天在帮助一个网友远程解决问题的时候看到他用的是FlashFXP FTP工具,这个工具以前我也用过,不过正版是需要付费的,但是网上有很多的绿色版本和破解版本。考虑到安全的问题,个人不建议选择破解版。但是这款软件还是比较好用的。今天主要是遇到他的虚拟主机无法通过FTP连接主机,这里我就帮忙看看到底是什么问题。一...
麻花云怎么样?麻花云公司成立于2007年,当前主打产品为安徽移动BGP线路,数据中心连入移动骨干网。提供5M,10M大带宽云主机,香港云服务器产品,数据中心为香港将军澳机房,香港宽频机房 cn2-GIA优质线路、采用HYPER-V,KVM虚拟技术架构一、麻花云官网点击直达麻花云官方网站合肥网联网络科技有限公司优惠码: 专属优惠码:F1B07B 享受85折优惠。最新活动 :双11 云上嗨购 香港云主...
www.ccc64.com为你推荐
网红名字被抢注想用的微博名被人抢注了 而且是个死号 没发博没粉丝 该怎么办mathplayer如何学好理科lunwenjiancepaperrater论文检测准确吗rawtoolsU盘显示是RAW格式怎么办长尾关键词挖掘工具大家是怎么挖掘长尾关键词的?m.2828dy.com电影虫www.dyctv.com这个电影站能下载电影吗?m.2828dy.combabady为啥打不开了,大家帮我提供几个看电影的网址广告法中华人民共和国广告法中,有哪些广告不得发布?www.hyyan.comdota屠夫怎么玩?从初期到后期的装备是什么?19ise.com欲火难耐看什么电影 19部性感至极的佳片
租服务器价格 greengeeks 息壤备案 台湾服务器 全球付 linode ix主机 godaddy续费优惠码 godaddy http500内部服务器错误 北京主机 免费smtp服务器 有奖调查 idc资讯 域名评估 昆明蜗牛家 新睿云 空间购买 便宜空间 php服务器 更多