diff for duplicates of <201503161106270545805@139.com> diff --git a/N1/1.1.hdr b/N1/1.1.hdr new file mode 100644 index 0000000..45d76fc --- /dev/null +++ b/N1/1.1.hdr @@ -0,0 +1,3 @@ +Content-Type: text/plain; + charset="utf-8" +Content-Transfer-Encoding: base64 diff --git a/a/1.txt b/N1/1.1.txt similarity index 94% rename from a/1.txt rename to N1/1.1.txt index 218f16a..434e13e 100644 --- a/a/1.txt +++ b/N1/1.1.txt @@ -7,7 +7,7 @@ I noticed that this way I use in the patch is not very graceful. I will try to -yuweizheng at 139.com +yuweizheng@139.com From: Felix Fietkau Date: 2015-02-19 16:09 @@ -51,6 +51,3 @@ received), while the scheduler ensures that it doesn't interfere with other critical work on the CPU. - Felix --------------- next part -------------- -An HTML attachment was scrubbed... -URL: http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20150316/aab41d90/attachment-0001.htm diff --git a/N1/1.2.bin b/N1/1.2.bin new file mode 100644 index 0000000..bcd402f --- /dev/null +++ b/N1/1.2.bin @@ -0,0 +1,383 @@ +<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }p { margin-top: 0px; margin-bottom: 0px; }body { font-size: 10.5pt; font-family: 微软é é»; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body> +<div><span></span><!--[if gte mso 9]><xml> + <o:OfficeDocumentSettings> + <o:AllowPNG></o:AllowPNG> + </o:OfficeDocumentSettings> +</xml><![endif]--> +<!--[if gte mso 9]><xml> + <w:WordDocument> + <w:View>Normal</w:View> + <w:Zoom>0</w:Zoom> + <w:TrackMoves></w:TrackMoves> + <w:TrackFormatting></w:TrackFormatting> + <w:PunctuationKerning></w:PunctuationKerning> + <w:ValidateAgainstSchemas></w:ValidateAgainstSchemas> + <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> + <w:IgnoreMixedContent>false</w:IgnoreMixedContent> + <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> + <w:DoNotPromoteQF></w:DoNotPromoteQF> + <w:LidThemeOther>EN-US</w:LidThemeOther> + <w:LidThemeAsian>ZH-CN</w:LidThemeAsian> + <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> + <w:Compatibility> + <w:BreakWrappedTables></w:BreakWrappedTables> + <w:SnapToGridInCell></w:SnapToGridInCell> + <w:WrapTextWithPunct></w:WrapTextWithPunct> + <w:UseAsianBreakRules></w:UseAsianBreakRules> + <w:DontGrowAutofit></w:DontGrowAutofit> + <w:SplitPgBreakAndParaMark></w:SplitPgBreakAndParaMark> + <w:EnableOpenTypeKerning></w:EnableOpenTypeKerning> + <w:DontFlipMirrorIndents></w:DontFlipMirrorIndents> + <w:OverrideTableStyleHps></w:OverrideTableStyleHps> + <w:UseFELayout></w:UseFELayout> + </w:Compatibility> + <m:mathPr> + <m:mathFont m:val="Cambria Math"></m:mathFont> + <m:brkBin m:val="before"></m:brkBin> + <m:brkBinSub m:val="--"></m:brkBinSub> + <m:smallFrac m:val="off"></m:smallFrac> + <m:dispDef></m:dispDef> + <m:lMargin m:val="0"></m:lMargin> + <m:rMargin m:val="0"></m:rMargin> + <m:defJc m:val="centerGroup"></m:defJc> + <m:wrapIndent m:val="1440"></m:wrapIndent> + <m:intLim m:val="subSup"></m:intLim> + <m:naryLim m:val="undOvr"></m:naryLim> + </m:mathPr></w:WordDocument> +</xml><![endif]--><!--[if gte mso 9]><xml> + <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" + DefSemiHidden="true" DefQFormat="false" DefPriority="99" + LatentStyleCount="267"> + <w:LsdException Locked="false" Priority="0" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Normal"></w:LsdException> + <w:LsdException Locked="false" Priority="9" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="heading 1"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"></w:LsdException> + <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 1"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 2"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 3"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 4"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 5"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 6"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 7"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 8"></w:LsdException> + <w:LsdException Locked="false" Priority="39" Name="toc 9"></w:LsdException> + <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"></w:LsdException> + <w:LsdException Locked="false" Priority="10" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Title"></w:LsdException> + <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"></w:LsdException> + <w:LsdException Locked="false" Priority="11" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Subtitle"></w:LsdException> + <w:LsdException Locked="false" Priority="22" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Strong"></w:LsdException> + <w:LsdException Locked="false" Priority="20" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Emphasis"></w:LsdException> + <w:LsdException Locked="false" Priority="59" SemiHidden="false" + UnhideWhenUsed="false" Name="Table Grid"></w:LsdException> + <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"></w:LsdException> + <w:LsdException Locked="false" Priority="1" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="No Spacing"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 1"></w:LsdException> + <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"></w:LsdException> + <w:LsdException Locked="false" Priority="34" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"></w:LsdException> + <w:LsdException Locked="false" Priority="29" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Quote"></w:LsdException> + <w:LsdException Locked="false" Priority="30" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 1"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 2"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 3"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 4"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 5"></w:LsdException> + <w:LsdException Locked="false" Priority="60" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Shading Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="61" SemiHidden="false" + UnhideWhenUsed="false" Name="Light List Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="62" SemiHidden="false" + UnhideWhenUsed="false" Name="Light Grid Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="63" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="64" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="65" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 1 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="66" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium List 2 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="67" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="68" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="69" SemiHidden="false" + UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="70" SemiHidden="false" + UnhideWhenUsed="false" Name="Dark List Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="71" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Shading Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="72" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful List Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="73" SemiHidden="false" + UnhideWhenUsed="false" Name="Colorful Grid Accent 6"></w:LsdException> + <w:LsdException Locked="false" Priority="19" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"></w:LsdException> + <w:LsdException Locked="false" Priority="21" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"></w:LsdException> + <w:LsdException Locked="false" Priority="31" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"></w:LsdException> + <w:LsdException Locked="false" Priority="32" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"></w:LsdException> + <w:LsdException Locked="false" Priority="33" SemiHidden="false" + UnhideWhenUsed="false" QFormat="true" Name="Book Title"></w:LsdException> + <w:LsdException Locked="false" Priority="37" Name="Bibliography"></w:LsdException> + <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"></w:LsdException> + </w:LatentStyles> +</xml><![endif]--> +<!--[if gte mso 10]> +<style> + /* Style Definitions */ + table.MsoNormalTable + {mso-style-name:æ®éè¡¨æ ¼; + mso-tstyle-rowband-size:0; + mso-tstyle-colband-size:0; + mso-style-noshow:yes; + mso-style-priority:99; + mso-style-parent:""; + mso-padding-alt:0cm 5.4pt 0cm 5.4pt; + mso-para-margin-top:0cm; + mso-para-margin-right:0cm; + mso-para-margin-bottom:10.0pt; + mso-para-margin-left:0cm; + line-height:115%; + mso-pagination:widow-orphan; + font-size:11.0pt; + font-family:"Calibri","sans-serif"; + mso-ascii-font-family:Calibri; + mso-ascii-theme-font:minor-latin; + mso-hansi-font-family:Calibri; + mso-hansi-theme-font:minor-latin;} +</style> +<![endif]--> +<!--StartFragment--> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;">I'm sorry that we have a lot of issues after the Chinese +traditional spring festival. <o:p></o:p></p> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;">Now I can start follow this patch. <o:p></o:p></p> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;"><o:p> </o:p></p> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;">The workqueue will delay the urb submit while the CPU have +no resource to process the wireless packet buffered in the rx_buf. In the +situation, the original driver always submit URBS , this may make more resource be consumed. Furthermore, +the tasklet is in a deadloop, and a soft lockup maybe detect. <o:p></o:p></p> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;"><o:p> </o:p></p> +<p class="MsoPlainText" style="margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;">I noticed that this way I use in the patch is not very graceful. + I will try to combine the delayed submit +code to the original rx_tasklet. <o:p></o:p></p> +<!--EndFragment--></div> +<div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left"> +<div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div>yuweizheng@139.com</div></div></span></div> +<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:nbd@openwrt.org">Felix Fietkau</a></div><div><b>Date:</b> 2015-02-19 16:09</div><div><b>To:</b> <a href="mailto:yuweizheng@139.com">Yuwei Zheng</a>; <a href="mailto:linux-kernel@vger.kernel.org">linux-kernel</a>; <a href="mailto:ath9k-devel@lists.ath9k.org">ath9k-devel</a>; <a href="mailto:linux-wireless@vger.kernel.org">linux-wireless</a>; <a href="mailto:kvalo@codeaurora.org">kvalo</a>; <a href="mailto:ath9k-devel@qca.qualcomm.com">ath9k-devel</a></div><div><b>CC:</b> <a href="mailto:netdev@vger.kernel.org">netdev</a>; <a href="mailto:zhengyuwei@360.cn">zhengyuwei</a></div><div><b>Subject:</b> Re: [PATCHv2] ath9k_htc: add adaptive usb receive flow control to repair soft lockup with monitor mode</div></div></div><div><div>On 2015-02-10 11:34, Yuwei Zheng wrote:</div> +<div>> The ath9k_hif_usb_rx_cb function excute on the interrupt context, and ath9k_rx_tasklet excute</div> +<div>> on the soft irq context. In other words, the ath9k_hif_usb_rx_cb have more chance to excute than</div> +<div>> ath9k_rx_tasklet. So in the worst condition, the rx.rxbuf receive list is always full,</div> +<div>> and the do {}while(true) loop will not be break. The kernel get a soft lockup panic. </div> +<div>> </div> +<div>> [59011.007210] BUG: soft lockup - CPU#0 stuck for 23s!</div> +<div>> [kworker/0:0:30609]</div> +<div>> [59011.030560] BUG: scheduling while atomic: kworker/0:0/30609/0x40010100</div> +<div>> [59013.804486] BUG: scheduling while atomic: kworker/0:0/30609/0x40010100</div> +<div>> [59013.858522] Kernel panic - not syncing: softlockup: hung tasks</div> +<div>> </div> +<div>> [59014.038891] Exception stack(0xdf4bbc38 to 0xdf4bbc80)</div> +<div>> [59014.046834] bc20: de57b950 60000113</div> +<div>> [59014.059579] bc40: 00000000 bb32bb32 60000113 de57b948 de57b500 dc7bb440 df4bbcd0 00000000</div> +<div>> [59014.072337] bc60: de57b950 60000113 df4bbcd0 df4bbc80 c04c259d c04c25a0 60000133 ffffffff</div> +<div>> [59014.085233] [<c04c28db>] (__irq_svc+0x3b/0x5c) from [<c04c25a0>] (_raw_spin_unlock_irqrestore+0xc/0x10)</div> +<div>> [59014.100437] [<c04c25a0>] (_raw_spin_unlock_irqrestore+0xc/0x10) from [<bf9c2089>] (ath9k_rx_tasklet+0x290/0x490 [ath9k_htc])</div> +<div>> [59014.118267] [<bf9c2089>] (ath9k_rx_tasklet+0x290/0x490 [ath9k_htc]) from [<c0036d23>] (tasklet_action+0x3b/0x98)</div> +<div>> [59014.134132] [<c0036d23>] (tasklet_action+0x3b/0x98) from [<c0036709>] (__do_softirq+0x99/0x16c)</div> +<div>> [59014.147784] [<c0036709>] (__do_softirq+0x99/0x16c) from [<c00369f7>] (irq_exit+0x5b/0x5c)</div> +<div>> [59014.160653] [<c00369f7>] (irq_exit+0x5b/0x5c) from [<c000cfc3>] (handle_IRQ+0x37/0x78)</div> +<div>> [59014.173124] [<c000cfc3>] (handle_IRQ+0x37/0x78) from [<c00085df>] (omap3_intc_handle_irq+0x5f/0x68)</div> +<div>> [59014.187225] [<c00085df>] (omap3_intc_handle_irq+0x5f/0x68) from [<c04c28db>](__irq_svc+0x3b/0x5c)</div> +<div>> </div> +<div>> This bug can be see with low performance board, such as uniprocessor beagle bone board. Add some debug </div> +<div>> message in the ath9k_hif_usb_rx_cb function may trigger this bug quickly.</div> +<div>> </div> +<div>> Signed-off-by: Yuwei Zheng <yuweizheng@139.com></div> +<div>This approach of interaction between tasklet and workqueue processing</div> +<div>seems quite complex to me. Wouldn't it be simpler and better to simply</div> +<div>always run the rx processing code in workqueue context?</div> +<div>That way it can go on processing forever (as long as there is data to be</div> +<div>received), while the scheduler ensures that it doesn't interfere with</div> +<div>other critical work on the CPU.</div> +<div> </div> +<div>- Felix</div> +</div></blockquote> +</body></html> diff --git a/N1/1.2.hdr b/N1/1.2.hdr new file mode 100644 index 0000000..03e4d4a --- /dev/null +++ b/N1/1.2.hdr @@ -0,0 +1,3 @@ +Content-Type: text/html; + charset="utf-8" +Content-Transfer-Encoding: quoted-printable diff --git a/N1/2.hdr b/N1/2.hdr new file mode 100644 index 0000000..4b86001 --- /dev/null +++ b/N1/2.hdr @@ -0,0 +1,4 @@ +Content-Type: text/plain; charset="us-ascii" +MIME-Version: 1.0 +Content-Transfer-Encoding: 7bit +Content-Disposition: inline diff --git a/N1/2.txt b/N1/2.txt new file mode 100644 index 0000000..f40853a --- /dev/null +++ b/N1/2.txt @@ -0,0 +1,4 @@ +_______________________________________________ +ath9k-devel mailing list +ath9k-devel@lists.ath9k.org +https://lists.ath9k.org/mailman/listinfo/ath9k-devel diff --git a/a/content_digest b/N1/content_digest index 64f5a8b..cffd272 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,10 +1,16 @@ "ref\01423528464-8433-1-git-send-email-yuweizheng@139.com\0" "ref\054E59A57.402@openwrt.org\0" - "From\0yuweizheng at 139.com <yuweizheng@139.com>\0" - "Subject\0[ath9k-devel] [PATCHv2] ath9k_htc: add adaptive usb receive flow control to repair soft lockup with monitor mode\0" + "From\0yuweizheng@139.com <yuweizheng@139.com>\0" + "Subject\0Re: [PATCHv2] ath9k_htc: add adaptive usb receive flow control to repair soft lockup with monitor mode\0" "Date\0Mon, 16 Mar 2015 11:06:27 +0800\0" - "To\0ath9k-devel@lists.ath9k.org\0" - "\00:1\0" + "To\0Felix Fietkau <nbd@openwrt.org>" + linux-kernel <linux-kernel@vger.kernel.org> + ath9k-devel <ath9k-devel@lists.ath9k.org> + linux-wireless <linux-wireless@vger.kernel.org> + kvalo <kvalo@codeaurora.org> + " ath9k-devel <ath9k-devel@qca.qualcomm.com>\0" + "Cc\0netdev <netdev@vger.kernel.org>\0" + "\02:1.1\0" "b\0" "I'm sorry that we have a lot of issues after the Chinese traditional spring festival. \n" "Now I can start follow this patch. \n" @@ -15,7 +21,7 @@ "\n" "\n" "\n" - "yuweizheng at 139.com\n" + "yuweizheng@139.com\n" " \n" "From: Felix Fietkau\n" "Date: 2015-02-19 16:09\n" @@ -58,9 +64,397 @@ "received), while the scheduler ensures that it doesn't interfere with\n" "other critical work on the CPU.\n" " \n" - "- Felix\n" - "-------------- next part --------------\n" - "An HTML attachment was scrubbed...\n" - URL: http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20150316/aab41d90/attachment-0001.htm + - Felix + "\02:1.2\0" + "b\0" + "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }p { margin-top: 0px; margin-bottom: 0px; }body { font-size: 10.5pt; font-family: \345\276\256\350\275\257\351\233\205\351\273\221; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body>\r\n" + "<div><span></span><!--[if gte mso 9]><xml>\r\n" + " <o:OfficeDocumentSettings>\r\n" + " <o:AllowPNG></o:AllowPNG>\r\n" + " </o:OfficeDocumentSettings>\r\n" + "</xml><![endif]-->\r\n" + "<!--[if gte mso 9]><xml>\r\n" + " <w:WordDocument>\r\n" + " <w:View>Normal</w:View>\r\n" + " <w:Zoom>0</w:Zoom>\r\n" + " <w:TrackMoves></w:TrackMoves>\r\n" + " <w:TrackFormatting></w:TrackFormatting>\r\n" + " <w:PunctuationKerning></w:PunctuationKerning>\r\n" + " <w:ValidateAgainstSchemas></w:ValidateAgainstSchemas>\r\n" + " <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>\r\n" + " <w:IgnoreMixedContent>false</w:IgnoreMixedContent>\r\n" + " <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>\r\n" + " <w:DoNotPromoteQF></w:DoNotPromoteQF>\r\n" + " <w:LidThemeOther>EN-US</w:LidThemeOther>\r\n" + " <w:LidThemeAsian>ZH-CN</w:LidThemeAsian>\r\n" + " <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>\r\n" + " <w:Compatibility>\r\n" + " <w:BreakWrappedTables></w:BreakWrappedTables>\r\n" + " <w:SnapToGridInCell></w:SnapToGridInCell>\r\n" + " <w:WrapTextWithPunct></w:WrapTextWithPunct>\r\n" + " <w:UseAsianBreakRules></w:UseAsianBreakRules>\r\n" + " <w:DontGrowAutofit></w:DontGrowAutofit>\r\n" + " <w:SplitPgBreakAndParaMark></w:SplitPgBreakAndParaMark>\r\n" + " <w:EnableOpenTypeKerning></w:EnableOpenTypeKerning>\r\n" + " <w:DontFlipMirrorIndents></w:DontFlipMirrorIndents>\r\n" + " <w:OverrideTableStyleHps></w:OverrideTableStyleHps>\r\n" + " <w:UseFELayout></w:UseFELayout>\r\n" + " </w:Compatibility>\r\n" + " <m:mathPr>\r\n" + " <m:mathFont m:val=\"Cambria Math\"></m:mathFont>\r\n" + " <m:brkBin m:val=\"before\"></m:brkBin>\r\n" + " <m:brkBinSub m:val=\"--\"></m:brkBinSub>\r\n" + " <m:smallFrac m:val=\"off\"></m:smallFrac>\r\n" + " <m:dispDef></m:dispDef>\r\n" + " <m:lMargin m:val=\"0\"></m:lMargin>\r\n" + " <m:rMargin m:val=\"0\"></m:rMargin>\r\n" + " <m:defJc m:val=\"centerGroup\"></m:defJc>\r\n" + " <m:wrapIndent m:val=\"1440\"></m:wrapIndent>\r\n" + " <m:intLim m:val=\"subSup\"></m:intLim>\r\n" + " <m:naryLim m:val=\"undOvr\"></m:naryLim>\r\n" + " </m:mathPr></w:WordDocument>\r\n" + "</xml><![endif]--><!--[if gte mso 9]><xml>\r\n" + " <w:LatentStyles DefLockedState=\"false\" DefUnhideWhenUsed=\"true\"\r\n" + " DefSemiHidden=\"true\" DefQFormat=\"false\" DefPriority=\"99\"\r\n" + " LatentStyleCount=\"267\">\r\n" + " <w:LsdException Locked=\"false\" Priority=\"0\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Normal\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"heading 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 7\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 8\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"9\" QFormat=\"true\" Name=\"heading 9\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 7\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 8\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" Name=\"toc 9\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"35\" QFormat=\"true\" Name=\"caption\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"10\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Title\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"1\" Name=\"Default Paragraph Font\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"11\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Subtitle\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"22\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Strong\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"20\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Emphasis\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"59\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Table Grid\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" UnhideWhenUsed=\"false\" Name=\"Placeholder Text\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"1\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"No Spacing\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" UnhideWhenUsed=\"false\" Name=\"Revision\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"34\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"List Paragraph\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"29\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Quote\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"30\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Intense Quote\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 1\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 2\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 3\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 4\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 5\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"60\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Shading Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"61\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light List Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"62\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Light Grid Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"63\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 1 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"64\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Shading 2 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"65\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 1 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"66\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium List 2 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"67\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 1 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"68\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 2 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"69\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Medium Grid 3 Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"70\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Dark List Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"71\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Shading Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"72\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful List Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"73\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" Name=\"Colorful Grid Accent 6\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"19\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Subtle Emphasis\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"21\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Intense Emphasis\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"31\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Subtle Reference\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"32\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Intense Reference\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"33\" SemiHidden=\"false\"\r\n" + " UnhideWhenUsed=\"false\" QFormat=\"true\" Name=\"Book Title\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"37\" Name=\"Bibliography\"></w:LsdException>\r\n" + " <w:LsdException Locked=\"false\" Priority=\"39\" QFormat=\"true\" Name=\"TOC Heading\"></w:LsdException>\r\n" + " </w:LatentStyles>\r\n" + "</xml><![endif]-->\r\n" + "<!--[if gte mso 10]>\r\n" + "<style>\r\n" + " /* Style Definitions */\r\n" + " table.MsoNormalTable\r\n" + "\t{mso-style-name:\346\231\256\351\200\232\350\241\250\346\240\274;\r\n" + "\tmso-tstyle-rowband-size:0;\r\n" + "\tmso-tstyle-colband-size:0;\r\n" + "\tmso-style-noshow:yes;\r\n" + "\tmso-style-priority:99;\r\n" + "\tmso-style-parent:\"\";\r\n" + "\tmso-padding-alt:0cm 5.4pt 0cm 5.4pt;\r\n" + "\tmso-para-margin-top:0cm;\r\n" + "\tmso-para-margin-right:0cm;\r\n" + "\tmso-para-margin-bottom:10.0pt;\r\n" + "\tmso-para-margin-left:0cm;\r\n" + "\tline-height:115%;\r\n" + "\tmso-pagination:widow-orphan;\r\n" + "\tfont-size:11.0pt;\r\n" + "\tfont-family:\"Calibri\",\"sans-serif\";\r\n" + "\tmso-ascii-font-family:Calibri;\r\n" + "\tmso-ascii-theme-font:minor-latin;\r\n" + "\tmso-hansi-font-family:Calibri;\r\n" + "\tmso-hansi-theme-font:minor-latin;}\r\n" + "</style>\r\n" + "<![endif]-->\r\n" + "<!--StartFragment-->\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\">I'm sorry that we have a lot of issues after the Chinese\r\n" + "traditional spring festival. <o:p></o:p></p>\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\">Now I can start follow this patch. <o:p></o:p></p>\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\"><o:p> </o:p></p>\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\">The workqueue will delay the urb submit while the CPU have\r\n" + "no resource to process the wireless packet buffered in the rx_buf. In the\r\n" + "situation, the original driver always submit URBS , this may make more resource be consumed. Furthermore,\r\n" + "the tasklet is in a deadloop, and a soft lockup maybe detect. <o:p></o:p></p>\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\"><o:p> </o:p></p>\r\n" + "<p class=\"MsoPlainText\" style=\"margin: 0cm 0cm 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;\">I noticed that this way I use in the patch is not very graceful.\r\n" + " I will try to combine the delayed submit\r\n" + "code to the original rx_tasklet. <o:p></o:p></p>\r\n" + "<!--EndFragment--></div>\r\n" + "<div><br></div><hr style=\"width: 210px; height: 1px;\" color=\"#b5c4df\" size=\"1\" align=\"left\">\r\n" + "<div><span><div style=\"MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt\"><div>yuweizheng@139.com</div></div></span></div>\r\n" + "<blockquote style=\"margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;\"><div> </div><div style=\"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm\"><div style=\"PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px\"><div><b>From:</b> <a href=\"mailto:nbd@openwrt.org\">Felix Fietkau</a></div><div><b>Date:</b> 2015-02-19 16:09</div><div><b>To:</b> <a href=\"mailto:yuweizheng@139.com\">Yuwei Zheng</a>; <a href=\"mailto:linux-kernel@vger.kernel.org\">linux-kernel</a>; <a href=\"mailto:ath9k-devel@lists.ath9k.org\">ath9k-devel</a>; <a href=\"mailto:linux-wireless@vger.kernel.org\">linux-wireless</a>; <a href=\"mailto:kvalo@codeaurora.org\">kvalo</a>; <a href=\"mailto:ath9k-devel@qca.qualcomm.com\">ath9k-devel</a></div><div><b>CC:</b> <a href=\"mailto:netdev@vger.kernel.org\">netdev</a>; <a href=\"mailto:zhengyuwei@360.cn\">zhengyuwei</a></div><div><b>Subject:</b> Re: [PATCHv2] ath9k_htc: add adaptive usb receive flow control to repair soft lockup with monitor mode</div></div></div><div><div>On 2015-02-10 11:34, Yuwei Zheng wrote:</div>\r\n" + "<div>> The ath9k_hif_usb_rx_cb function excute on the interrupt context, and ath9k_rx_tasklet excute</div>\r\n" + "<div>> on the soft irq context. In other words, the ath9k_hif_usb_rx_cb have more chance to excute than</div>\r\n" + "<div>> ath9k_rx_tasklet. So in the worst condition, the rx.rxbuf receive list is always full,</div>\r\n" + "<div>> and the do {}while(true) loop will not be break. The kernel get a soft lockup panic. </div>\r\n" + "<div>> </div>\r\n" + "<div>> [59011.007210] BUG: soft lockup - CPU#0 stuck for 23s!</div>\r\n" + "<div>> [kworker/0:0:30609]</div>\r\n" + "<div>> [59011.030560] BUG: scheduling while atomic: kworker/0:0/30609/0x40010100</div>\r\n" + "<div>> [59013.804486] BUG: scheduling while atomic: kworker/0:0/30609/0x40010100</div>\r\n" + "<div>> [59013.858522] Kernel panic - not syncing: softlockup: hung tasks</div>\r\n" + "<div>> </div>\r\n" + "<div>> [59014.038891] Exception stack(0xdf4bbc38 to 0xdf4bbc80)</div>\r\n" + "<div>> [59014.046834] bc20: de57b950 60000113</div>\r\n" + "<div>> [59014.059579] bc40: 00000000 bb32bb32 60000113 de57b948 de57b500 dc7bb440 df4bbcd0 00000000</div>\r\n" + "<div>> [59014.072337] bc60: de57b950 60000113 df4bbcd0 df4bbc80 c04c259d c04c25a0 60000133 ffffffff</div>\r\n" + "<div>> [59014.085233] [<c04c28db>] (__irq_svc+0x3b/0x5c) from [<c04c25a0>] (_raw_spin_unlock_irqrestore+0xc/0x10)</div>\r\n" + "<div>> [59014.100437] [<c04c25a0>] (_raw_spin_unlock_irqrestore+0xc/0x10) from [<bf9c2089>] (ath9k_rx_tasklet+0x290/0x490 [ath9k_htc])</div>\r\n" + "<div>> [59014.118267] [<bf9c2089>] (ath9k_rx_tasklet+0x290/0x490 [ath9k_htc]) from [<c0036d23>] (tasklet_action+0x3b/0x98)</div>\r\n" + "<div>> [59014.134132] [<c0036d23>] (tasklet_action+0x3b/0x98) from [<c0036709>] (__do_softirq+0x99/0x16c)</div>\r\n" + "<div>> [59014.147784] [<c0036709>] (__do_softirq+0x99/0x16c) from [<c00369f7>] (irq_exit+0x5b/0x5c)</div>\r\n" + "<div>> [59014.160653] [<c00369f7>] (irq_exit+0x5b/0x5c) from [<c000cfc3>] (handle_IRQ+0x37/0x78)</div>\r\n" + "<div>> [59014.173124] [<c000cfc3>] (handle_IRQ+0x37/0x78) from [<c00085df>] (omap3_intc_handle_irq+0x5f/0x68)</div>\r\n" + "<div>> [59014.187225] [<c00085df>] (omap3_intc_handle_irq+0x5f/0x68) from [<c04c28db>](__irq_svc+0x3b/0x5c)</div>\r\n" + "<div>> </div>\r\n" + "<div>> This bug can be see with low performance board, such as uniprocessor beagle bone board. Add some debug </div>\r\n" + "<div>> message in the ath9k_hif_usb_rx_cb function may trigger this bug quickly.</div>\r\n" + "<div>> </div>\r\n" + "<div>> Signed-off-by: Yuwei Zheng <yuweizheng@139.com></div>\r\n" + "<div>This approach of interaction between tasklet and workqueue processing</div>\r\n" + "<div>seems quite complex to me. Wouldn't it be simpler and better to simply</div>\r\n" + "<div>always run the rx processing code in workqueue context?</div>\r\n" + "<div>That way it can go on processing forever (as long as there is data to be</div>\r\n" + "<div>received), while the scheduler ensures that it doesn't interfere with</div>\r\n" + "<div>other critical work on the CPU.</div>\r\n" + "<div> </div>\r\n" + "<div>- Felix</div>\r\n" + "</div></blockquote>\r\n" + </body></html> + "\01:2\0" + "b\0" + "_______________________________________________\n" + "ath9k-devel mailing list\n" + "ath9k-devel@lists.ath9k.org\n" + https://lists.ath9k.org/mailman/listinfo/ath9k-devel -cfd0f87513a0fe9a15f06e66b2c6fc3a60e5faf6db5e45611eb7ab8f03c7c5c5 +a7099433d993d9652bcb04fc8148f20469042be276f494af8e9a8785ab97db67
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.