久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

嵌入式以太網(wǎng)驅(qū)動開發(fā)實(shí)戰(zhàn):從MAC/PHY調(diào)試到性能優(yōu)化

嵌入式以太網(wǎng)驅(qū)動開發(fā)實(shí)戰(zhàn):從MAC/PHY調(diào)試到性能優(yōu)化 做嵌入式驅(qū)動開發(fā)這些年以太網(wǎng)這個坑算是踩得最深也最有收獲的一個領(lǐng)域。從早期的百兆芯片到現(xiàn)在的千兆、2.5G從簡單的RGMII到復(fù)雜的SGMII再到工業(yè)現(xiàn)場跟各種設(shè)備做以太網(wǎng)通訊幾乎每個項(xiàng)目都能遇到全新的問題。今天這一期我把自己在Ethernet以太網(wǎng)驅(qū)動開發(fā)上積累的經(jīng)驗(yàn)整理出來從底層原理到實(shí)際調(diào)試從性能優(yōu)化到工業(yè)場景踩坑一次性說透。無論你是剛開始接觸網(wǎng)絡(luò)驅(qū)動的新手還是已經(jīng)在MAC和PHY之間掙扎了一段時間的同行這篇內(nèi)容應(yīng)該都能提供一些參考。很多剛?cè)腴T的朋友容易把以太網(wǎng)驅(qū)動理解為“配置寄存器、啟用DMA、收發(fā)包就完事”但實(shí)際上驅(qū)動只是整個網(wǎng)絡(luò)路徑中的一環(huán)。你寫的是網(wǎng)卡驅(qū)動但你的代碼要跟協(xié)議棧、PHY、甚至交換機(jī)、對端設(shè)備發(fā)生關(guān)系。所以我先說清楚以太網(wǎng)驅(qū)動開發(fā)核心是理解數(shù)據(jù)流而不是只會翻datasheet。1. 以太網(wǎng)驅(qū)動開發(fā)的核心思路從MAC到PHY的整體認(rèn)知1.1 網(wǎng)絡(luò)分層視角下的驅(qū)動邊界以太網(wǎng)驅(qū)動處于硬件和協(xié)議棧之間往上對接Linux內(nèi)核的net_device結(jié)構(gòu)體往下直接操作MAC控制器和PHY芯片。驅(qū)動需要處理的是內(nèi)核協(xié)議棧傳來的sk_buff通過DMA發(fā)送到MAC再由PHY轉(zhuǎn)換成物理層信號反過來PHY收到的電信號經(jīng)過MAC還原成幀DMA搬到內(nèi)存再上交協(xié)議棧。我見過很多人調(diào)試網(wǎng)絡(luò)不通第一步就去看寄存器這沒錯但容易迷失方向。更穩(wěn)妥的做法是先確認(rèn)物理層鏈路是否ok——PHY是否完成了自協(xié)商link是否established然后看MAC是否收到了幀再看DMA描述符是否有數(shù)據(jù)。這種從物理層往上層走的排查思路能讓你少走很多彎路。驅(qū)動開發(fā)的第一個關(guān)鍵邊界是搞清楚哪些事情由硬件做哪些由驅(qū)動做。比如CRC校驗(yàn)、幀間隙、MAC地址過濾這些絕大多數(shù)MAC硬件都做了驅(qū)動不需要重復(fù)處理。但有些功能比如VLAN tag插入、TCP分段卸載TSO雖然硬件支持驅(qū)動也要做很多配置和狀態(tài)維護(hù)工作。這里面的“度”沒把握好就會出現(xiàn)莫名其妙的丟包或者性能問題。第二個邊界是PHY管理。PHY芯片的寄存器空間需要通過MDIO總線訪問通常由MAC的MDIO控制器或者獨(dú)立的MDIO硬件完成。驅(qū)動要負(fù)責(zé)PHY的復(fù)位、自協(xié)商觸發(fā)、速度/雙工模式讀取、loopback測試等。很多新人在初始化時只做一次PHY配置后續(xù)不管了結(jié)果遇到熱插拔或者對端設(shè)備切換速率鏈路就僵死。正確的做法是注冊PHY中斷或者輪詢link狀態(tài)實(shí)時響應(yīng)鏈路變化。1.2 速率與介質(zhì)1G/2.5G Ethernet 的PCS/PMA 與 SGMII 到底在說什么我們在選型的時候經(jīng)常會看到“1G/2.5G Ethernet PCS/PMA or SGMII”這樣的描述。很多工程師一看到PCS/PMA就頭大其實(shí)它指的是PHY內(nèi)部的兩個子層。PCSPhysical Coding Sublayer負(fù)責(zé)編碼、加擾、對齊等。千兆以太網(wǎng)用的是8B/10B編碼2.5G以太網(wǎng)在SGMII接口上往往也是基于類似的編碼方式。PMAPhysical Medium Attachment負(fù)責(zé)串并轉(zhuǎn)換、時鐘恢復(fù)和信號調(diào)制。簡單說PCS解決“數(shù)據(jù)怎么變成可以在線上傳輸?shù)拇a流”PMA解決“碼流怎么通過物理線纜發(fā)出去”。而SGMII是一種MAC和PHY之間的接口協(xié)議它本身是一種串行接口類似于SerDes。SGMII可以承載1Gbps或更低的速率而2.5G Ethernet的SGMII通常是2500Mbps有些芯片也支持“USXGMII”這類擴(kuò)展接口。當(dāng)你看到“1G/2.5G Ethernet PCS/PMA or SGMII”指的是PHY支持這些接口模式你需要在驅(qū)動里通過寄存器配置選擇合適的模式。實(shí)際項(xiàng)目里我們用的主控芯片可能內(nèi)置了MAC但缺少PHY或者PHY是外掛的。MAC和PHY之間的接口常見的有RGMII千兆常用的并行接口時鐘125MHz數(shù)據(jù)雙沿采樣引腳多但布線相對簡單。SGMII串行接口引腳少抗干擾強(qiáng)適合高速和板間互聯(lián)。QSGMII4個SGMII復(fù)用一對差分線主要用于交換機(jī)芯片。驅(qū)動開發(fā)時要特別注意SGMII的自協(xié)商機(jī)制。SGMII本身也有自協(xié)商但它不是標(biāo)準(zhǔn)的802.3自協(xié)商而是MAC和PHY之間的速率協(xié)商。驅(qū)動里需要正確配置MAC側(cè)的SGMII自適應(yīng)通常是在MAC寄存器中使能SGMII autoneg同時也要讓PHY側(cè)配合。這個配置如果不對經(jīng)常出現(xiàn)PHY link up但數(shù)據(jù)不通或者M(jìn)AC和PHY速率不一致的情況。有一種比較陰間的現(xiàn)象PHY顯示鏈接速率是1G但MAC那邊配置的是2.5G結(jié)果就是能收到一點(diǎn)數(shù)據(jù)但丟包率極高。排查這種問題需要同時讀取MAC側(cè)的狀態(tài)寄存器通常有l(wèi)ink速度指示和PHY側(cè)的速度寄存器對比兩邊是否一致。這也是我強(qiáng)調(diào)“接口配置必須兩端對齊”的原因。2. 驅(qū)動開發(fā)中的關(guān)鍵環(huán)節(jié)接口、描述符與中斷處理2.1 從RGMII到SGMII的接口選擇與配置選擇RGMII還是SGMII很多時候不是開發(fā)人員能決定的而是硬件工程師根據(jù)板級布局和成本定的。作為驅(qū)動開發(fā)者你需要做的是適配。RGMII的配置要點(diǎn)主要是時鐘延時。RGMII規(guī)范要求數(shù)據(jù)在時鐘的雙沿采樣但實(shí)際布線時數(shù)據(jù)信號和時鐘信號可能存在偏差。于是就有了“tx delay”和“rx delay”的概念。很多MAC和PHY都支持在內(nèi)部插入延時通過寄存器配置。例如你可以設(shè)置MAC側(cè)的TX clock delay或者讓PHY側(cè)提供RX clock delay。這個配置必須在驅(qū)動初始化階段完成而且要跟硬件原理圖對應(yīng)。我遇到過一塊板子初始化PHY后ping不通后來發(fā)現(xiàn)是RGMII的RX延時沒有配置導(dǎo)致MAC在時鐘沿采樣數(shù)據(jù)時采到的都是毛刺。加上delay之后一切正常。所以RGMII調(diào)試時如果你不確定延時配置可以用PHY的loopback模式測試MAC側(cè)的數(shù)據(jù)通路再逐項(xiàng)排查。SGMII的配置相對簡單因?yàn)樗谴胁罘志€不需要考慮并行數(shù)據(jù)的時鐘偏移。但SGMII也有自己的坑協(xié)商失敗。特別是當(dāng)對端設(shè)備是交換機(jī)或者另一個開發(fā)板時如果SGMII配置不是“自協(xié)商固定從模式”可能需要強(qiáng)制設(shè)置速度。我記得有一款PHY默認(rèn)SGMII從模式必須等到對端發(fā)送自協(xié)商配置才能建立鏈路這在有些場景下會導(dǎo)致長時間無法link up。解決方法是把SGMII配置為master模式自己主動發(fā)起協(xié)商。2.2 DMA描述符環(huán)設(shè)計與內(nèi)存屏障無論MAC是內(nèi)置還是外置絕大多數(shù)以太網(wǎng)控制器都使用DMA搬運(yùn)網(wǎng)絡(luò)數(shù)據(jù)避免CPU逐字節(jié)拷貝。DMA描述符環(huán)是整個驅(qū)動的核心數(shù)據(jù)結(jié)構(gòu)它描述了一塊內(nèi)存緩沖區(qū)的位置、長度、狀態(tài)等信息。驅(qū)動需要維護(hù)發(fā)送描述符環(huán)和接收描述符環(huán)。接收描述符環(huán)的初始化尤其重要。你需要為每個描述符分配一個緩沖區(qū)sk_buff的data區(qū)并把物理地址寫入描述符。然后設(shè)置擁有權(quán)位交給硬件。硬件收到數(shù)據(jù)后會填充緩沖區(qū)并把狀態(tài)位更新為“已接收”驅(qū)動在中斷或輪詢中掃描描述符發(fā)現(xiàn)擁有權(quán)變化就知道有數(shù)據(jù)到了。這里有幾個容易犯的錯分配緩沖區(qū)時沒有做cache對齊。網(wǎng)絡(luò)DMA要求緩沖區(qū)物理地址對齊到cache line否則可能出現(xiàn)數(shù)據(jù)不一致。沒有處理“擁有權(quán)”標(biāo)志。有些芯片用描述符的最后一個bit來表示歸屬驅(qū)動在回收描述符時如果寫錯了會覆蓋硬件正在使用的描述符。環(huán)形隊列的索引管理。發(fā)送和接收的索引要明確區(qū)分“硬件當(dāng)前使用的索引”和“驅(qū)動當(dāng)前處理的索引”兩者沒理清就會丟包或者卡死。內(nèi)存屏障也是一個關(guān)鍵點(diǎn)。CPU往描述符寫入狀態(tài)后需要確保寫入順序?qū)MA可見DMA更新狀態(tài)后CPU讀取時也需要屏障。在Linux驅(qū)動中通常使用dma_wmb()和dma_rmb()。有朋友問過我為什么加了mb()還是有問題其實(shí)是因?yàn)閙b()是全屏障性能損耗大而且有些架構(gòu)下語義不完全匹配DMA場景。正確的做法是嚴(yán)格區(qū)分讀寫方向。我在調(diào)試一個eMMC和網(wǎng)絡(luò)DMA互相干擾的項(xiàng)目時發(fā)現(xiàn)描述符狀態(tài)一直讀取不到硬件更新后來檢查發(fā)現(xiàn)是描述符本身被分配到了非DMA安全區(qū)域。所以在分配描述符時一定要用dma_alloc_coherent()或者類似接口保證內(nèi)存不會被cache寫回覆蓋。2.3 中斷與輪詢的取舍以太網(wǎng)驅(qū)動通常有兩種收包模式中斷驅(qū)動和NAPI輪詢。中斷是及時但高吞吐時頻繁中斷會吃掉CPUNAPI是把中斷和輪詢結(jié)合起來用少量中斷配合輪詢批量收包。Linux內(nèi)核默認(rèn)使用NAPI這也是為什么netdev驅(qū)動里都有一個poll回調(diào)。輪詢的實(shí)現(xiàn)并不復(fù)雜在中斷處理函數(shù)里關(guān)閉發(fā)送/接收中斷激活NAPI調(diào)度poll執(zhí)行。poll中循環(huán)處理發(fā)送完成和接收數(shù)據(jù)直到預(yù)算耗盡或者無包可收后重新開啟中斷。這個機(jī)制看著普通但對驅(qū)動性能影響很大。你要合理設(shè)置weight參數(shù)比如100、200或者更大。weight越大單次poll時間越長但CPU占用也高。我通常的做法是根據(jù)實(shí)際吞吐測試結(jié)果調(diào)整以CPU占用不超標(biāo)為前提盡量提高weight。還有個細(xì)節(jié)有些MAC控制器在收包時會自動禁用接收中斷驅(qū)動如果忘了在poll中重新開啟就會出現(xiàn)“網(wǎng)絡(luò)死”的現(xiàn)象。我在自己的驅(qū)動里都是把“重新使能中斷”放在poll函數(shù)的最后并加一個dummy read來保證寄存器寫入順序。3. 實(shí)際調(diào)試從寄存器到數(shù)據(jù)流的排錯實(shí)戰(zhàn)3.1 PHY 初始化與自協(xié)商狀態(tài)機(jī)PHY的初始化不是簡單的reset然后配置寄存器而是要理解PHY的狀態(tài)機(jī)。PHY上電后通常處于ENERGY-DETECT狀態(tài)不斷探測介質(zhì)是否有信號。當(dāng)檢測到對端設(shè)備時進(jìn)入自協(xié)商狀態(tài)交換能力信息最終確定速率和雙工模式。驅(qū)動里需要確保在PHY完成自協(xié)商后再去配置MAC的速率和雙工。如果MAC側(cè)先配置了錯誤的速率即使PHY協(xié)商好了數(shù)據(jù)也發(fā)不出去。常見的做法是使用PHY驅(qū)動的adjust_link回調(diào)在link up時讀取PHY的狀態(tài)然后更新MAC的配置。另外自協(xié)商超時問題很常見。有些PHY的寄存器配置不當(dāng)會導(dǎo)致自協(xié)商失敗或者反復(fù)重啟。調(diào)試時可以先用ethtool -s eth0 autoneg off speed 1000 duplex full強(qiáng)制固定速率確認(rèn)鏈路是否能通再排查自協(xié)商。但要注意強(qiáng)制速率時MAC側(cè)必須同步配置不能只改PHY。3.2 用Wireshark和抓包工具定位問題很多嵌入式工程師看不起抓包覺得嵌入式環(huán)境沒有條件。其實(shí)現(xiàn)在的開發(fā)板大多有兩個網(wǎng)口一個跑業(yè)務(wù)一個做管理或者用交換機(jī)鏡像端口都能方便地抓包。在驅(qū)動調(diào)試階段我強(qiáng)烈建議盡早接上抓包工具。當(dāng)出現(xiàn)“ping不通”的情況先用Wireshark抓包看有沒有請求發(fā)出。如果抓不到任何幀說明數(shù)據(jù)沒有從MAC送出去問題可能在驅(qū)動或硬件如果能抓到請求但收不到應(yīng)答說明請求到了對端對端的應(yīng)答可能沒回來或者我們的MAC沒有收到如果收到了應(yīng)答但協(xié)議棧沒反應(yīng)那可能是MAC地址、VLAN或者校驗(yàn)和的問題。我在調(diào)試一個工業(yè)網(wǎng)關(guān)時發(fā)現(xiàn)設(shè)備能被ping通但TCP連接建立失敗。抓包發(fā)現(xiàn)SYN包發(fā)出后對端回了SYN-ACK但我們的設(shè)備沒再發(fā)ACK而且不停地重傳SYN。進(jìn)一步查發(fā)現(xiàn)TCP校驗(yàn)和計算錯誤。原因是MAC硬件開啟了TCP校驗(yàn)和卸載TX checksum offload但驅(qū)動沒有正確設(shè)置sk_buff的ip_summed標(biāo)志導(dǎo)致硬件計算的校驗(yàn)和覆蓋了協(xié)議棧算好的值結(jié)果反而錯了。把ip_summed設(shè)為CHECKSUM_PARTIAL之后一切正常。3.3 常見問題速查表我整理了一下這幾年遇到的最多的以太網(wǎng)驅(qū)動問題做成表格方便大家對照排查?,F(xiàn)象可能原因排查思路link up但ping不通MAC/PHY速度不一致或RGMII延時錯誤檢查MAC和PHY速度寄存器調(diào)整RX/TX delay測試loopback能收到包但丟包嚴(yán)重DMA描述符不足或緩沖區(qū)被覆蓋檢查描述符環(huán)大小確認(rèn)擁有權(quán)位處理正確多ring緩沖區(qū)傳輸速度只有100MPHY沒有協(xié)商上千兆或線纜/接口問題用ethtool查看自協(xié)商結(jié)果強(qiáng)制千兆測試更換線纜TCP吞吐量極低中斷頻繁或TSO/GRO未開啟開啟NAPI確認(rèn)ethtool -K支持TSO檢查中斷合并設(shè)備長時間運(yùn)行后斷網(wǎng)PHY熱鏈接檢測失效或看門狗超時實(shí)現(xiàn)PHY link狀態(tài)輪詢增加鏈路恢復(fù)流程發(fā)送方向正常接收方向不通接收DMA描述符不完整或接收中斷未使能檢查接收描述符初始化確認(rèn)中斷配置用loopback測試接收路徑無法與特定設(shè)備通訊對端設(shè)備MAC地址過濾或協(xié)議不匹配抓包確認(rèn)對端是否回包檢查MAC地址表檢查VLAN和協(xié)議字段這張表不可能是全的但覆蓋了大部分初級問題。很多時候問題不在驅(qū)動本身而在硬件設(shè)計或者PHY配置所以在排查時要大膽假設(shè)小心驗(yàn)證。4. 工業(yè)場景中的以太網(wǎng)驅(qū)動與焊機(jī)等設(shè)備通訊的經(jīng)驗(yàn)分享4.1 安川焊機(jī)以太網(wǎng)通訊的痛點(diǎn)最近一個項(xiàng)目里我需要讓嵌入式主控通過以太網(wǎng)與安川焊機(jī)通訊實(shí)現(xiàn)焊接參數(shù)下發(fā)和狀態(tài)讀取。這類工業(yè)設(shè)備使用的以太網(wǎng)協(xié)議往往不是標(biāo)準(zhǔn)TCP/IP而是基于Ethernet/IP、Profinet或特定廠商私有協(xié)議。安川焊機(jī)有些型號支持TCP/UDP但通訊報文有特定的格式要求比如首尾字節(jié)固定、CRC校驗(yàn)、數(shù)據(jù)長度固定等。在這里驅(qū)動層面其實(shí)不需要做太多特殊事情因?yàn)門CP/IP協(xié)議棧已經(jīng)替我們搞定了。真正麻煩的是應(yīng)用層的協(xié)議解析和時序控制。但從驅(qū)動開發(fā)角度有兩個點(diǎn)需要特別留意第一工業(yè)設(shè)備的以太網(wǎng)端口通常不響應(yīng)ARP請求或者M(jìn)AC地址過濾嚴(yán)格。如果主控通過MAC地址白名單方式連接設(shè)備那么驅(qū)動可能需要構(gòu)造特殊的ARP包或者干脆不用ARP直接靜態(tài)ARP表項(xiàng)。第二有些工業(yè)設(shè)備會在連接空閑時主動斷開或者發(fā)送特定的“心跳包”。驅(qū)動和協(xié)議棧需要配合在socket層面保持連接。否則你會發(fā)現(xiàn)過一段時間TCP連接還在但數(shù)據(jù)已經(jīng)發(fā)不過去了。另外工業(yè)現(xiàn)場電磁干擾嚴(yán)重網(wǎng)線很容易出現(xiàn)瞬斷。此時PHY的link狀態(tài)會反復(fù)變動。驅(qū)動要能快速感知link down并在link up后自動恢復(fù)。我的做法是用內(nèi)核的PHY狀態(tài)機(jī)注冊phy_start()和phy_stop()流程配合PHY中斷每次link變化都打印日志并通知網(wǎng)絡(luò)協(xié)議棧執(zhí)行重連。4.2 協(xié)議無關(guān)的驅(qū)動設(shè)計思路做嵌入式驅(qū)動有時會被要求適配多種不同的設(shè)備和協(xié)議。比如同樣是焊接控制器有的用標(biāo)準(zhǔn)Modbus TCP有的用私有協(xié)議。驅(qū)動如果做得很死每個協(xié)議都要改一遍就會很痛苦。我的建議是在驅(qū)動層保持“協(xié)議無關(guān)”只負(fù)責(zé)把以太網(wǎng)幀正確地收發(fā)出去所有協(xié)議解析都放到上層應(yīng)用。為此驅(qū)動需要提供干凈的接口比如注冊netdev_ops上層用socket訪問而不是在驅(qū)動里解析業(yè)務(wù)報文。還有一點(diǎn)工業(yè)場景經(jīng)常用到VLAN。比如一臺設(shè)備同時連接辦公網(wǎng)和工業(yè)網(wǎng)VLAN隔離可以防止廣播風(fēng)暴。驅(qū)動要支持VLAN offload和VLAN過濾。Linux內(nèi)核有現(xiàn)成的ndo_vlan_rx_add_vid回調(diào)驅(qū)動只需要在寄存器中配置VLAN ID即可。我在開發(fā)支持多種工業(yè)協(xié)議的主控板時把驅(qū)動的重點(diǎn)放在穩(wěn)定性和可配置性上。比如通過設(shè)備樹參數(shù)配置MAC地址、PHY地址、VLAN ID、速率甚至中斷觸發(fā)方式。這樣同一個驅(qū)動二進(jìn)制就能適配不同的設(shè)備子型號節(jié)省了很多維護(hù)成本。4.3 關(guān)于Apple Mobile Device Ethernet的插曲最近熱搜里有“apple mobile device ethernet下載”這個詞一度讓我很迷惑。后來才明白這其實(shí)是指蘋果設(shè)備比如iPhone、iPad在連接電腦時通過USB拔號網(wǎng)絡(luò)或者以太網(wǎng)適配器模擬出的一個網(wǎng)絡(luò)接口。這個場景在物聯(lián)網(wǎng)開發(fā)里也有價值比如你想用iOS設(shè)備與嵌入式主板通訊可以通過雷電轉(zhuǎn)以太網(wǎng)適配器或者通過USB共享網(wǎng)絡(luò)。從驅(qū)動開發(fā)的視角當(dāng)你把蘋果設(shè)備插入電腦系統(tǒng)會識別出一個“Apple Mobile Device Ethernet”設(shè)備這個設(shè)備本質(zhì)上是一個USB網(wǎng)卡。它的驅(qū)動是蘋果官方提供的在macOS和Windows上都有。對嵌入式開發(fā)者來說相關(guān)經(jīng)驗(yàn)就是你的嵌入式設(shè)備如果支持USB gadget的RNDIS或者ECM協(xié)議也可以被電腦識別為一個虛擬網(wǎng)卡從而進(jìn)行網(wǎng)絡(luò)調(diào)試。但要注意蘋果設(shè)備的以太網(wǎng)接口默認(rèn)可能只支持特定速率和協(xié)議。所以如果你用自研的設(shè)備去跟蘋果設(shè)備通訊最好先確認(rèn)雙方的USB以太網(wǎng)類兼容性特別是驅(qū)動中的描述符配置。這里就不展開細(xì)說了但至少說明以太網(wǎng)驅(qū)動并不局限于物理網(wǎng)口還包含USB虛擬網(wǎng)卡等形態(tài)。5. 驅(qū)動性能優(yōu)化與穩(wěn)定性保障5.1 吞吐量優(yōu)化零拷貝與多隊列當(dāng)你的驅(qū)動能正常收發(fā)數(shù)據(jù)之后性能和穩(wěn)定性就是下一步目標(biāo)。在嵌入式平臺上吞吐量的瓶頸往往不是網(wǎng)絡(luò)帶寬而是內(nèi)存拷貝和中斷開銷。零拷貝是一個繞不開的話題。Linux協(xié)議棧的sk_buff本身支持headroom和frag機(jī)制驅(qū)動在接收數(shù)據(jù)時最好讓DMA直接填充到sk_buff的數(shù)據(jù)區(qū)避免額外拷貝一次。發(fā)送方向則可以利用sendpage或者M(jìn)SG_ZEROCOPY讓協(xié)議棧的數(shù)據(jù)直接進(jìn)入DMA描述符。多隊列RSS/Flow PIR在高吞吐場景下很重要。如果MAC支持多隊列你可以把不同數(shù)據(jù)流的包分配到不同的DMA通道和CPU核心極大提升并發(fā)處理能力。但嵌入式CPU核心數(shù)不多多隊列也可能帶來更多中斷需要根據(jù)實(shí)際情況權(quán)衡。我在一個四核ARM平臺上把單個隊列改成雙隊列并綁定兩個中斷到不同的CPU核心吞吐量提升了約30%。代價是CPU占用率從60%升到了70%但整體吞吐從900Mbps提升到了1.2Gbps基于2.5G網(wǎng)口。所以多隊列不是萬能的但值得嘗試。5.2 電源管理與鏈路檢測嵌入式設(shè)備對功耗敏感網(wǎng)絡(luò)驅(qū)動的電源管理往往容易被忽略。MAC和PHY通常都有低功耗模式但在進(jìn)入低功耗前要確保沒有未完成的DMA傳輸。否則數(shù)據(jù)寫到一半設(shè)備睡眠醒來后描述符狀態(tài)不一致就會導(dǎo)致驅(qū)動卡死。鏈路檢測要盡量不依賴定時器最好用PHY中斷。有些PHY支持活動中斷和link狀態(tài)變化中斷驅(qū)動在link_change回調(diào)中執(zhí)行相應(yīng)操作。如果PHY不支持中斷就只能周期性地讀寄存器但輪詢間隔不能太短建議2秒左右。太短會增加功耗太長則反應(yīng)遲鈍。我遇到過一個項(xiàng)目設(shè)備為了省電在空閑時關(guān)閉PHY但喚醒時總是出現(xiàn)第一次ping不通。后來發(fā)現(xiàn)喚醒后PHY的自協(xié)商需要幾秒而網(wǎng)絡(luò)協(xié)議棧已經(jīng)在喚醒后立刻發(fā)起了ARP請求。解決方法是在驅(qū)動喚醒流程中等待PHY完成自協(xié)商后再上報__LINK_STATE_START或者通過netif_carrier_on()延遲上報link。5.3 長期穩(wěn)定運(yùn)行的注意事項(xiàng)嵌入式設(shè)備往往要求7x24小時運(yùn)行驅(qū)動在這種環(huán)境下最容易出現(xiàn)的問題是內(nèi)存泄漏和描述符耗盡。內(nèi)存泄漏可能來自每個收包分發(fā)的緩沖區(qū)沒有正確釋放。我在檢查一個老代碼時發(fā)現(xiàn)接收路徑中每次丟包都直接調(diào)用dev_kfree_skb_any()但有些分支沒有釋放導(dǎo)致內(nèi)存緩慢增長。這類問題很難查需要借助kmemleak工具或者定期查看/proc/net/skbuff這樣的信息。描述符耗盡也常見。比如發(fā)送路徑中如果上層快速發(fā)送大量小包而驅(qū)動沒有及時回收發(fā)送完成描述符環(huán)形隊列會滿導(dǎo)致NETDEV_TX_BUSY。解決方法是在發(fā)送的時候檢查描述符是否夠用不夠用就停止發(fā)送隊列等完成中斷后重啟隊列。這個邏輯我每次都會認(rèn)真檢查因?yàn)橐粋€簡單的錯誤就會造成死鎖。另外建議給驅(qū)動添加debugfs接口可以手動查看描述符環(huán)狀態(tài)、PHY寄存器、中斷統(tǒng)計。我在正式項(xiàng)目中一定會在debugfs里面放一個“手動觸發(fā)link down再恢復(fù)”的測試入口方便生產(chǎn)測試和現(xiàn)場排查。這不難但對故障定位非常有幫助。結(jié)語最后分享一個我自己的習(xí)慣。每次寫以太網(wǎng)驅(qū)動我都會先把PHY的寄存器表打印出來保存一份完整的狀態(tài)基線。一旦后續(xù)出現(xiàn)通訊問題我可以快速對比寄存器值判斷是PHY配置變了還是硬件鏈路有問題。這個方法幫我解決了不少“莫名其妙”的網(wǎng)絡(luò)故障。如果你也是做嵌入式驅(qū)動開發(fā)的不妨試試。另外記得在驅(qū)動代碼里加足夠多的日志別嫌麻煩關(guān)鍵時刻就是這些日志救了你。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
熟妇激情| 日韩欧洲操屄视频| 天堂九九九九九九九九九| 亚洲色欲天天天堂色欲网女| 91熟女丨91老女人| 亚洲欧美日产国产91毛片| 五月婷在线| 亚洲乱伦图片视频| 国产最火爆久久国产网站网站| 亚洲91综合| 99re不伦| 亚洲情色1区| 福利色色| 婷婷五月天激情网| 日韩乱伦AⅤ| 国产精品午夜AV完会免费| 久久一区二区加油站| 97亚洲一区| 色婷婷五月综合激情中文字幕| 88xx成人精品视频| 亚欧无码线免费观看视频| 97久久超碰日韩精品| 精品96久久| 日韩中文字幕熟妇人妻| 久久久国产精品人妻丝袜| 伊人成人中文字幕久久网| 亚洲制服aⅴ中文字幕| 国产超碰AV在线精品| 九九九999久久久网站| 人人操人人精品影片| 亚洲人妖网| 青青草日本中文字幕| 综合网欧美在线| 欧美躁死她一区二区| 色官网在线| 亚洲国产成人精品久久久国产成人一区二区三.| 美女黄站| 色牛aV| 国产精品久久久 | 亚洲自拍欧美国产首页网曝 | 中文久久| 久久久久亚洲熟妇熟女| 日本免费中文字幕在线| av最新免费中文字幕| 九九九精品| 青青草中文字幕| 99999久久精| 亚洲有薄码区久久在线一区| 日本在线伊人啪啪| 亚洲动态色图| 影音先锋日本一区二区| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 久久免费精品视频免一| 亚洲各类熟们中文字幕| 男人亚洲91首页在线| 欧美夜夜狠| 最新亚洲风情电影| www.男人的天堂| 少妇天堂| 久久黄片国产一区二区| 午夜精品五区| 日本超碰在线国产一区| 精品国产国产AV| 欧美熟女丝袜| 麻豆天天躁天天揉揉AV| 亚洲第2页| 人人看人人摸人人色| 激情综合五月| 欧美色天堂网在线视频| 东北女人性交| 蜜乳AV免费观看| 超碰成人公开| 91扒丝袜综合在线| 天天热精品| 亚洲欧美国产va在线播放频| 久久精品国产96精品亚洲拳交| 91Chinese在线| 天天欧美色| 91麻豆天美国产| 中文字幕1区2区| 欧美日本成人一区二区| 国产激情av女片自拍| 激情综合久久| 日日干夜夜欢| 天天看精品动漫视频一区| 国产精品免费美女视频| 一区,二区,三区网站| 91亚洲狠狠色| 久久riav中文精品| 内射日韩大臀美女| 好涩综合| 十八禁成人网站在线观看| 天天操夜夜操| 免费97视频| 特级特黄一级毛片免费| 欧美熟妇精品黑人巨大一二三区| 精品少妇99| 欧美午夜一区二区三区| 欧美后入视频| 多毛小伙内射老太婆| 久久久久久大| 丝袜亚洲综合| 欧美亚洲国产自久久| 五月天日日操夜夜操| 极品综合| 亚洲第一色页夜| 91亚洲综合在线| 九九色综合| 高清肉丝中文无码| 日本色色色色色视频| 亚洲人在线成线成人| 男人的天堂com| 午夜国产成人福利视频| 激情综合网一盗摄| 无码人妻精品一区二区中文 | 亚洲国产精品无码AV久久久| 成人片视频| 日韩成人精品| 青青草乱入乱欲视频在线观看| 欧成人精品H无码| 射 色综合| 91无码人妻精品一区二区三区蜜桃| 欧亚性爱在线视频| 啊啊啊不要嗯嗯在线观看| 精品人妻1区| 四月丁香婷婷| 久久欲| 久久99草| 男人的天堂一区三区| 欧美黑人91| 免费公开人人操| 丰满人妻一区| 日本中文字幕在线视频| 人妻铁牛TV| 亚洲色图加勒比| 天天草夜夜草高潮片| 丝袜天堂| 人人人人插| 国产成人啪一区二区| 乱伦Av网| 一区二区影视| 亚洲欧洲日产国产综合网| 精品欧美А∨无码黑人大荫蒂 | 91天天| 精品夜夜澡人妻无码| 碰碰97| 蜜臀久久99精品久久久久免费观| 无码自拍SM| 亚洲九九九| 96精品久久久久中文字幕| 免费αⅴ在线观看| 综合网亚洲在线| 伊人成人中文字幕久久网| 三男一女不戴套的A片| 强奸少妇AV导航网| 操逼视频亚洲| yiqicaoav| 久久超碰亚洲人| 国产亚洲精品美女久久久m| 久久久久久久综合,国产| www久久99| 无码人妻1727| 丝袜av一区二区三区| av片在线观看免费播放| 蜜乳av一区二区| 综合五月天| 大香蕉综合久久| 亚洲第一在线视频| 日韩精品在线视频在线观看| 高颜值美女口爆高潮浪叫| 台湾佬激情综合| av最新免费中文字幕| 精品十八在线观看| 欧洲精品人妻| 麻豆黄色五月天| 911av网站免费观看| 91四海无码日韩欧美| 又摸又舔在线观看网站| 日韩欧美亚洲国产日韩| 精品色色| 日韩中文字幕二区| 超碰在线人妻| 伊人久久综合精品欧美| 十八禁视频一区二区| 97 国产精品| 青青草国产盗摄一二三区| 五月婷婷激情综合| 99热| 成人午夜视频免费播放| a一区二区三区乱码在线| 精品国产Av无码久久久伦古装| 亚洲素人网| 人人喜人人妻| 96AV精品| 花野真衣| 97超碰69| 九九天堂| 日本熟妇熟色97一本在线观看| 麻豆啪啪啪视频| 伊人一区二区在线播放| 亚洲本色精品一区二区久久| 国语av狠狠色丁香婷婷综合激情| 98超碰欧美| 99最新日韩偷拍视频| 亚洲国产精品久久久男人的天堂| 人妻一区二区三区| 开心六月色| 九九九九九九综合| 久操视频在线| 97欧美色| 激情综合网亚洲| 男人天堂2019| 国产一国产一级毛片古装| 久久香蕉国产线看观看亚洲女人 | 99色网| 国产一级高清免费观看| 激情综合网亚洲| 国产精品久久久久久亚洲色欲| 黄色无码高清黄色无码网站| 日日夜夜精品| 午夜高清成人在线视频| 熟女视频久久| 色婷婷丁香五月| 天天天天操| 天天爱天天韩国日本牛牛牛牛| 天天做天天爱| 国产成人精品午夜福利| 中文字幕av一区二区三区人妻少妇| 亚洲色图国产另类| 一二三四区电影| 性欧美| 91亚洲电影| 成人一二| 乱伦av麻豆| 户外裸露刺激视频第一区| 国产成人无码网站在线视频| 亚州色图第三区| 台湾大香蕉99热| 国产欧美成人精品| 91精品国产91久久久久久久久久久久| 色色色五月婷婷| 动漫爆乳3D奶水一区在线观看| 日韩性爱网址| 国产有码一区| 欧美线天码中字| 日韩国产精品人妻无码久久久| 98人妻精品一区二区色欲| 国产在线视频二区| 色五月亚洲| 97精品第3页| 性色高清..……| 日本不卡二区| 国产超碰| 97精品国产手机| 久久久天美| 欧美性爱精品七区| 人人考人人摸人人干| 啊啊啊用力在线观看| 中国熟女91| 亚洲天堂男人网| 日韩国产不卡在线视频| av天堂影视中文在字幕在线中文 | 免费人成毛片乱码| 国产日本久久免费精品| 日韩国产十八禁| 欧美在线电影| h无码动漫在线观看| AV 少妇 人妻 偷拍| 天天摸天天舔天天操| 欧美色图第一页| 欧美人妻精品一区二区| 欧美中文字幕一区| 日本精品999| 国产亚州精品美女久久久免费| 手机不卡视频不卡在线一二三区 | 激情看片网站| 精品无码久久| 大香蕉520| 夜精品久无码| 久久男人精品| 男人的天堂色偷偷青青草视频婷婷网| 久热热| 中文字幕 国产 精品| 久久鲁夜| 日韩欧美国产一区二区三区四区| 亚洲黄日韩无码专区| 欧美色网| 91亚洲精品青草| 日韩一级二级三级| 婷婷五月天AV| 91五十路| 色噜噜综合在线| 超碰美国| 大香蕉综合久久| 都市久久精品激情亚洲| 国产精品久久久久久久久久久久久久久久久久 | 欧美人妻久久精品二区三区| 中文字幕在线2| 人人贴人人摸| 精品二999| 精品人妻av在线播放| 亚洲自拍一区夜夜操| 八戒无码国产午夜福利| 我爱搞逼综合网| 国产一级作爱毛片| 99精品无码| 99热91| 欧美性暴力猛交| 国产三级电影免费观看| 福利操逼| 亚洲图片欧美色图| 麻豆久久久久久久久丝袜| 做爱A级亚欧| 久久久九九| 日本午夜福利影院| 大香蕉日韩| 九九热免费国产视频婷婷伊人五月 | 日韩人妻网站| 操逼逼中文字幕| 色在线69堂| 99热自拍| 久久精品国产Aⅴ| 91成人在线| 精品一区二区综合熟妇| 欧美激情 亚洲色图| 久久久久密| 第四色奇米影视777| 久艹99| 五月天婷婷欧美三区| 亚洲一区日韩精品中文字幕| 97爱免费插| 免费A片三p视频| 欧美日韩一干二干| 精品久久久久久无码| 夜夜综合| 97福利视频| av影片在线观看不卡| 女人爽到高潮潮喷18禁网站| 亚欧高清| 免费99精品国产自在在线| 女人爽到高潮潮喷18禁网站| 亚州综合色| 很很很很操| 欧美综合区| 日韩特级毛片免费观看全集| 久草久日| 男女激情中文字幕| 性爱av网站| 欧美精品69性爱| 日本高清熟女久久一区| 亚洲精品丝袜| 久久99午夜精品一区人妻| 老妇女91| 天堂综合| 99黄页网站| 中文字幕精品一区二区精品| 国产精品久久久久久照片| 深夜激情| 色99久草| 日本最新免费韩国1区2区视频播放| 91在线精品| av网站免费线看| 天美传媒精品久久视频| 97色视频在线| 亚洲91av| 95精品在线| 97在线观看播放视频| 日韩免费中文字幕视频| 精品无人区麻豆乱码1区2区图片| 性色av一区二区| 99这里只有精品| 婷婷在线视频| 久久国内| 波多野结衣被操50分钟免费视频 | 欧美日韩999| 色综合久久av| 青娱乐欧美激情一区二区| 屁股久久久久久| 久久是精品| 成人热久久精品| 久久亚洲熟妇在线视频| 1024亚洲中文字幕久在线看片你懂的 | 国产午夜视频| 亚洲天堂色图| 亚洲色图大香| 亚洲少妇喷视频看| 操人妻少妇中文 | 超碰三级秋霞| 黄页18禁| 亚洲高清少妇| 天天草AV| 亚洲丝袜99| 久久久少妇诱惑精品视频| 福利一级版子| 欧美 熟女 日韩| 久久、1234| 牛牛久久国产精品视频一二三| 91亚洲青青草原精品1区| 日韩高潮一区| 97二区四区| 亚洲综合色男人网| 久久久艹艹艹| 歐美一級亂黃99在綫精品| 国模限制级电影| 精品妇女一区二区三区| 日韩钢筋无码高清啾啾啾| 超碰97玖玖爱| 综合视频91| 综合久久99亚洲人妻中文在线| 四虎在线免费视频| 大香蕉性欧美| 在线播放成人高清免费视频| 三级网色| 99久热| 丰满人妻一区二区三区四| 鲁鲁色综合网| 人妻人人澡人人爽人人| 玖玖综合网| 国产毛片片精品天天看视频| 亚洲国产欧美一区二区潘金莲| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 99热18| 久九九九九九九热| 91欧美丝袜| 91 天天综合| 富女玩鸭子一级毛片| 九九精品99| 99天堂网| 歐美性天天| 久久影视二区三区行押| 综合网 欧美| 欧美经典一区二区三区| 91日韩在线| 欧美内射少妇| 97伊人超碰| 99re国产精品视频| 丁香五月激情网| 日本蜜桃| 啊啊啊骚| 一区二区三区精品视频| 久热久一区二区三区| 久热久| 国产亚洲福利第一页丝袜| 太久视频| 久插综合| 欧美手机在线综合| 男人天堂网址| 久久一级无码精品毛片6| 人妻少妇久久久| 97资源免费视频| v91av| 日本理论在线| 九九拍拍精品视频在线播放 | 国产精品呦一区二区三区| 91九九| 91超碰丝袜制服| 亚洲最新Av| 久久久久久人妻| 亚洲综合情色| 草草影院最新网址| 精品久久九| 日本操逼aaaaa| 婷婷丁香六月| 亚洲人妻精品一区二区| 欧美一级做a爰片免费视频| 你草精品在线视频| 欧美人体性爱互联网第一页婷婷日本| 天天插天天干| 精品无av| 99视频内射三四| 亚州综| 亚洲第一无码播放立川理惠| 91老熟女老女人国产老太| 午夜舔阴达高潮视频免费看| 中文久久一区| 色牛aV| 婷婷色一区| 久草免费在线视频| oumeisetu综合| JuliaAnn丝袜熟女系列| 成人丁香五月| 国产精品乱码久久久久| 欧美日日网| 亚洲另类天堂| 天天看片天天爽| 98人妻精品一区二区色欲| 伊人久久青青草| 天天综合网91| 亚洲精品丝袜| 欧美传媒| 色www精品视频在线观看| 99久久99久久免费精品蜜臀| 中文字幕国产精品1区| 欧美色视| 欧美午夜色妇色鬼| 强歼乱伦资源网| 精品综合久久久久久97| 97精品国产97久久久久久| 免费试看60秒| 女人的天堂大香蕉网| 欧美一区二区亚洲天堂| 99精品人妻| 久久a久久| 欧美色综合| 老司机免费视频在线91| 91九色在线| 九九九九九精品视频| 裸模AV女优| 日韩亚洲国产视频| 欧洲性人爱视频| 九月丁香| 婷婷在线视频在线观看| 東南亚性呦成人伦理资源在线视频 | 欧美少妇性乱| 涩五月婷婷| 摸奶性爱视频网站在线免费播放| 97干综合网| 人人妻人人操人人乐| 一级人妻性爱视频| 中文字幕第二页| 欧美性,亚州色| 日本高清有码网址视频| 好色综合| 99日视频在线免费| 亚洲第91页| 亚洲激情网一二三四区| 91精品国产91久久青草| 中文字幕人妻色偷偷久久皮| 国产这里只有精品| 99精品久久久久久久婷婷| 国语少妇精| 欧美日韩青操| 吉田爱美AV在线| 欧美疯狂做爰xxxx| 秋霞成人做爱| 亚洲全色网| 久久久久久久综合,国产| 伊人影院中文字幕| 国产综合网站在线播放 | 插穴性爱视频在线观看| 99在线精品观看视频中文| 歐美性天天| 天天色悠悠激情| 国产 三级自拍| 亚洲精品国产专区在线观看| 91狠狠综| 偷拍盗拍亚洲色图图片 | 国产一级黄色片在线观看| 午夜啪| 日本视频在线中文字幕| 男人的天堂99| 中文字幕午夜精品久久久| 2011国产精品| 麻豆天美久久91| 久久老子无码午夜伦不卡| 伊人久久综合精品欧美| 2021久久国产综合精品青草| 免费A片三p视频| 欧亚日韩中文在线| 97超碰日韩| 99rre在线精品99re8| A一级色女| 97视频新免费| 秋霞鲁丝午夜无码一区二区三| 欧美性后入| 亚洲色性情三级| 国产久久久9999| 午夜免费福利视频一区| 99自拍视频在线观看| 日本午夜操逼| 超碰人人干| 色色五月天激情| 久久婷综合| av天天在线观看| 中亚精品极乱| 国产黄a三级三级三级av在线看| 天堂九九九九九九九九九| 嗯嗯嗯好爽| 日韩精品一区二区三区四虎影视| 久操99| 中文字幕在在线观看网站| 伊人大香蕉在线| 91老熟女老女人国产老太| 曰本91情色| 九九人妻| 色99999| 欧美亚洲素人制服精品| 免费人成在线观看网站品爱网| 日本人人操人人操| 久99视频| 性感女人网页在线观看视频| 天天超级碰碰碰| 天天性射网| 91bbbbbb| 日韩欧美tv一区二区在线观看| 欧美人妻久久精品二区三区 | 91黄站| 国产精品又黄又猛又粗| 亚洲精品九九九| 国产精品自拍xxxx| 五月激情视频| 天天干天天做| 欧美大色交| 四虎影视欧美| 国产日本一区二区三区蜜臀在线观看| 国产精品爱欲| 成人电影一区| 97se综合网| 97精品一区二区视频在线观看| 亚洲图片欧美色图| 国产精品激情久久久久久久| 日韩美脚一区二区网站| 精吧天堂| 日韩日韩日韩-国产乱码精品一区二区| 欧洲黄色网| 99久久综合网| 在线视频一区二区传媒| 肥佬影院91| 日本免费一级AAA大片器| 日韩精品一区二区三区色欲| 久久神马影院| 美女啊啊啊啊啊啊| 曰本人妻人人澡人人夹| av亚洲天堂资源网站| 色原狠狠天天天| 人人操人人摸人人看人人插| 天天干2019| 一卡二卡在线播放| 激情五月天插| 伊人久久久日韩一区| 蜜臀久久99精品久久久久电影| 91搡老女人老妇女老熟女歌词翻译| 91GD.COM| 亚洲性综合| 亚洲欧洲自拍| 亚洲黑丝在线| 蜜桃传媒视频第一区入口在线看| 91三级理论片播放器| 爆乳免费黄网站| 97久久超碰日韩精品| 999岛国大片| 91欧美丨精品丨入口| 日本一级特级毛片视频| 99国内精品| 国产精品久久久亚洲第一牛牛_在线观看| 特级特黄一级毛片免费| 一区二区三区四区久久视1| 91香蕉国产尤物视频| 涩涩五月天| 欧美啪啪色吧在线| 99在线免费视频| 成人九九| 91在线欧色| 黄骗免费网站| 99热免费| 任我爽在线视频免费观看| 天堂无码| 国产美女91视频| 天天干夜夜鈤| 欧美久久草熟女| 97天堂| 狠狠操一区二区| 日韩精品在线视频在线观看| 国产亚卅97| 亚洲最大成人a毛毛片| 嗯嗯,好大,好爽,好骚| 最新日日夜夜天天干干| 伊人亚洲综合| 亚洲AV无码成人精品久久| 久久人妻一区二区三区高清| 亚洲久热| 香蕉欧美| 天美av在线观看| 乱伦一二三区| 日日日骚女人精品| 自偷自拍的亚洲视频| 夜夜夜爽www精品视频| 九九综合色| 亚洲人妻中文在线视频| 国产小炒后入式| 日韩人妻中文视频| 五十路一区无码| 嫩草 人人网精品| 私人尤物在线精品不卡| 久久久熟妇熟女国产| 秋霞免费无码视频日韩A片| 啊啊啊啊操死我了| 91干熟女| 久久 国产 无码| 九九九九九九九九九九九九九九九女| 天天日天天干天天整| 白丝AV| A男人的天堂| 搡老熟女老女人老熟妇免费视频| 国产一区二区二区按摩精品啪视频| 亚洲最大的黄色电影网站。| 国产9 9在线 | 亚洲| 女同性恋中文字幕| 高清不卡视频| 啪啪啪大香蕉| 国产精品不卡一区二区电影| 天美麻豆黄色录像| 色老汉色| 曰韩成人免费视频| 欧美日产国产在线成人第一区| 精品二区三四区五电影 | 丝袜综合| 人人摸人人干| 国产又色又爽又舒服的三级视频| 日本在线观看网址| Aa东京男人的天堂| 草久久久| 天天舔天天 | 综合网~91综合网| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 素人伊尹大香蕉免费下载视频| 天天综合有色网| 国产乱伦性爱AV| 欧美1区二区三区公司| 玖草在线视频| 欧美天天影院| 亚洲另类久操网| 狠狠干狠狠色| 欧美另类综合久久| 俄罗斯一区二区视频在线观看| 亚洲资源一区| 99蜜月精品久久| 色网综合网| 夜夜高潮夜夜爽高清视频一| 欧美三级不卡| 丁香五月电影| 亚洲欧美在线观看2021| 天堂中文日本在线观看| 无码 黑人一区二区三区| 91制服丝袜| 国产一线二线三线av| 亚洲清纯唯美| 日本精品一区二区三| 裸体1区| 熟女欧美日韩综合婷婷| 中出789在线视频| 性色高清在线| 丁香婷婷激情五月天无毒不卡| 国产怡红院| 激情99| 亚洲情色五月天| 伊色综合天堂色97| 婷婷五月天久久精品视频一区二区三区| 九九伊人网| 99精品免费| 加勒比在线视频| 国产黄a三级三级三级av在线看| 香一区二区三区| 九九无码久久精品视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 俺去俺来也在线www| 国产精品69人妻无码久久久| 嫖老熟女A片一二三区| 日美免费黄片| 天天天天天干夜夜夜夜夜操| 精品一区二区三区蜜桃臀赵总 | 亚州图片第一页| 亚洲国产蜜臀系列在线观看| 乱操9999| 麻豆久久精品亚洲精品88 | 操操操操操操| 久久最新视频免费观看| 精品国产国产AV| 久久噜| 91久久精品美女高潮喷水| 亚洲综合色图欧美| 欧美亚洲自拍另类人妻| 日韩欧美午夜一区二区| 日韩AV熟女乱伦| 在线 制服丝袜中出 人妻| 大香蕉黄色一区| 四虎影库国产精品免费| 亚洲欧美日韩有码| 超碰到97情色| 超碰久超碰久| 久草电影网| 免费AV中文网在线观看| 日韩人妻一二三区视频| 亚洲色婷婷| 91色图片| 亚洲欧美97| 亚洲天堂精品日韩电影| 97人人操人人摸| 日本 欧美 亚中文字幕| 97色涩| 日日做夜狠狠爱欧美黑人| 91丝袜在线播放| 操逼片中文| 色婷婷丁香五月| 婷婷15月天青娱乐| 夜夜爽夜夜| 中文字幕精品日韩中文字幕| 久久一二三四五六七八九区区区| 欧洲黄色网| 强奸乱伦动态污图免费| 女优视频第10页| 日本顶级天天操狠狠操夜夜操中文字幕| 精品久久久久成人码免| 五十路熟女人妻一区二区在线观看 | 中文字幕无码不卡啪啪| 伊人加勒比| 强歼乱伦资源网| 天天碰操中国年青熟妇| 99在线精品观看视频中文 | 伊人丝袜美腿高跟在线观看高清| 色九九九九| 视频国产欧美在线播放| 国产自偷自拍一区| av72网| 久久91| 蜜臀av在线播放一区二区三区| 伊人991| 97超碰色色| 99综合免费视频| 97在线无精品| 国产精品久久久久久久电影渣男| 东京热亚洲一区二区| 99热这里只有精品1| 成人小说视频在线精品欧美| 一起草av| 九九热av| 人人操人人狠狠操| 国产精品色约约| 一级毛片久久久久久久女人18| 日韩 人妻 精品| 97天天| 偷看洗澡一二三区美女| 激情视频图片| 亚洲AV无码AV吞精久久久久| 亚洲凸凹超碰成人| 中文字幕日韩精品久久| 久久久久密臀一区二区| 亚洲阿v天堂在线| 亚洲熟女中文字幕在线| 妇女乱色二区| 黄色区免费观看中文字幕| 新视频sss国产| 欧美性爱免费短视频| 亚洲少妇激情视频| 天天激情综合站| 久久久久久大| 国产肏逼网站| 歐美一級亂黃99在綫精品| 欧美片第一页| 中文字幕88av在线| 亚欧视频在线| 骚女高跟AV在线| 蜜乳AV色欲AVAV无码| 91熟女视频网| 熟女人妻av在线资源,黄色的资源 粉嫩国产精品久久粉嫩 | 青青草手机在线免费观看| 在线免费观看高清无码视频| 久操 高清| 国产美女销魂在线观看不卡| 色五月激情AV在线| 8050午夜少妇无码| 野狼福利社区| 色哟哟国产精品免费网址| 五月天日日操夜夜操| 亚洲欲色9532548967一区| 日韩在线国产字幕| 国产久久日| 岛园激情| 亚洲无992tv| 欧美性,亚州色| 亚洲午夜福利在线影院| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 偷拍欧美综合| 久久丁香久草综合网| 精品久久9| 六月色婷婷| 久久黄片国产一区二区| Aa东京男人的天堂| 嗯啊不要啊在线 | 精品黑人一区二区| 日本二三四区| m欧洲一级午老| 中文字幕aⅴ在线视频| 97视频在线免费播放| 亚洲男人天堂Av| 日韩欧美午夜一区二区| 一区二区三区一亚洲中文字幕、综合区灬 | 全球成人中文在线| 欧美亚洲高清| 日本中文字幕一区| 97干日韩| 蜜乳AV一区| 91综合在线| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 久久av色| 成人 日韩欧美一区| 一二三四视频中文字幕在线看| 久久线上视频免费看| 九九久久一区二区三区| 国产67194| 欧美精品久久久久久久丰满| www.91视频网| 中文字幕精品乱码| 麻豆区99999| 欧洲熟妇xxXx欧美老妇裸体| 亚洲国产成人福利在线观看| 日日摸日日碰夜夜爽视频| 狼人综合婷婷激情四射 | 乱人乱色一区二区三区免费| 女人的天堂大香蕉网| 日韩有码免费视频| 97人人模人人爽人人| 都市久久精品激情亚洲| 中文字幕欧美日韩三级| 日本二区不卡| 亚洲自拍青操视频| 日本精品国产视频| 亚欧美天堂在线| 丁香五月婷婷色| 色欲无码人妻日韩欧美精品| 久久色网| 超碰久超碰久| 亚洲欧洲综合| 丝袜视频网国产90| 亚洲精品久久一区二区三区蜜桃臀| 九九热免费国产视频婷婷伊人五月| a久久| 天天日天天干天天整| 亚洲暴力强奸AV| 亚瑟国产精品久久无码| ji熟女.com| 秋霞一集毛片观看| 国内毛片国产欧美拍| 国产美女高潮| 色色毛片| 中文字幕精品探花视频| 久久久久亚洲Av无码专区老牛影视| 成人青青草原伊人| 欧美色图电影| 久久久极品| 精品亚洲天堂| 97亚洲色图| 九色黄站| 成人久久久| 永久电影三级在线观看| 人人妻人人爱人人玩| 欧美精品三级黄片| 欧美日韩中文视频播放| 超碰在线人人射| 精品少妇999| 欧州一区二区三区四区| 日韩综合无码一区久久92| 少妇高潮流水av免费| 精品国产av一区二区三区四区入口| 人人操人人爽人人操人人| 亚洲综合在线第一页| 婷婷8月天青娱乐| 国产五码丝袜屁眼| 九一精品牛牛一区二区| 欧美乱妇狂野欧美在线视频| 男人的天堂日本东京热| 伊人在线大香蕉视频久久| 欧美伦乱爱| 日韩淫色网| 久久天堂网| 色婷婷一区二区三区久久午夜成人不| 国产乱弄免费在线视频。 | 欧美人妻少妇| 天天日天天干天天摸天天操| 国产精品扒开腿做爽爽爽视频| 九九九九精品视频| 大色综合| 人人摸人人添人人操 | 天天操狠狠日夜夜干超碰撸com视频在线观看 | 亚洲精品一二区| 黄片www.| 久久久久久亚洲精品不卡人乳| 精产国品一区二三产品| 欧洲亚洲人人爽爽视频| 美女久久久久久久久久久| 亚洲中文字幕在现观看| 欧美性爱一级操| 男人夜色天堂ss| 亚洲区限制级| 97精品一区| 国产黄色在线播放观看| 乱欲一区二区| 亚洲不卡不卡中文字幕不卡| 91路www| 东京热毛片177b2viP| 美女视频尤物网在线看| 色情综合网| 午夜欧美J进J出白浆流出久久久| 亚洲丝袜二区在线| 午夜国产成人精品视频| 97久久超碰| 亚洲精品国产AV天美传媒| 久久午夜神马| 极品白嫩美女白浆成人福利在线看| 观看免费区二区三区二| 大香蕉欧美国产日韩高潮| 国产精品乱码久久久| 囯产操逼片| 色性荡荡荡荡视频| 青青五月天| 91av一区二区在线观看| 女同亚洲欧美一二三区久久电影| 后入式在线免费观看60秒| 欧美色宗合| 囯产乱伦一区二区三女| 东北女人操比视频| 国产剧情在线| 狼人久草| 亚洲 se图 欧美电影| 欧美翘臀视频网站一区二区三区| 亚洲av淫乱| 欧美香蕉视xxx| 大象AV在线| 五月天成人综合| 综合自拍| 中文字幕日韩人妻视频一区二区三区| 骚乳在线| 天啪| 日韩乱码Av| 久久精品一区一起草| 成人网站 免费观看| oumeisetupian| 九九九九九九九九九国产精品 | 黄片www视频免费| 日本一区二区成人在线| 色综合20p| 亚洲免费成人精品电影| 成人综合网 欧美| www熟女乱伦com| 91狠婷| 亚洲男人电影天堂| www.婷婷五月天| 高清无码人妻久久久一区二区三区aⅴ| 亚洲av综合色区无码一| 日本天天干天天日一区| 乱伦日本色图AⅤ| 精品97久久综合| 久久成人午夜精品影院| 中文字幕-区二区三区四区视频中国| 国产精品4p在线观看| 最新一二三区视频| 国产传媒午夜理伦精品| 国产无遮挡| 亚洲色系另类精品国产| 色妇91| 亚洲古典另类欧美在线| 熟妇女伦乱视频视频| 免费人成?大片在线播放| 色图四区| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 农村女一级毛卡片| 欧美色图片91| 成 人 A V免费视频在线观看| 密臀在线免费观看| 在线色导航| 曰韩香蕉97| 婷婷五月天福利| 日韩综合色图| 躁躁日曰躁2020| 激情五月天社区| 91白嫩| 97超久碰| 1人人看人人摸人人操| 亚洲有薄码区久久在线一区| 欧美一级做a爰片免费视频| 久久久久久久久一区二区三区| 中文字幕视频2区| 手机午夜电影神马久久| 劲爆欧美人妖三区91| 1769精品一区二区三区| 麻豆精品一区二区三区四区免费观看| 艹我哪美一区无码| 久草视频观看视频在线| 青娱乐黄色录像| ,国产乱人伦精品一区二区三区| 欧美性爱无码一区二区三区| 欧亚揄拍偷拍精品视频 | 欧美激情在线观看视频| 久久九七| 亚洲偷拍自拍在线视频| a片偷拍视频| 亚洲国产中文字幕| 天天日老熟妇| 成人免费在线网站| 97chaopengongkai| 新视频sss国产| 国内精品久久久久影院亚洲| 秋霞一级鲁丝片A片| 97在线观看视频| 超碰97欧美在线| 亚洲免费人妻在| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 日韩A优精品在线观看| julia国产在线| 蜜桃中文字日产乱幕4区| 一区二区娱乐网站| 白天啪啪晚上啪啪视频| 隔壁邻居波多野结衣中文字幕| 成人性爱视频在线看| 国产精品福利视频| 伊人久大| 性色高清在线| 伊人天堂在线| 淫荡熟女乱伦网| 日韩免费高清大片在线| 亚洲视频精选| 欧美性天天影院| 久久超碰97中文字幕| 丁香六月激情| 黄片在线免费在线观看| 成人性爱视频在线看| 碰碰97| 婷婷激情四射| 亚洲欧洲第二视频在线观看色图| www.欧精品| 蜜桃视频精品一区二区| 一区二区三区 日韩欧美| 先锋激情∨在线视频播放| 久久嫩草| 欧美综合色图网| 熟妇女伦乱视频视频| 妇女视频网站| 在线天堂999| 顶级丝袜熟女一区二区三区| 一二三四视频中文字幕在线看| 中文字幕国产在线天堂| 亚洲精品国产拍免费91在线| asc国产精品| 97国产亚洲中文在线| 久久超碰久| 天美国产三级传媒| 中文字幕在线日亚洲9| 国产无马av| 色婷五月| 日亚韩精品视频二区三| 日本网色| 免费久久一级毛片大黄| 日本一区二区三区午夜观看| 你懂的在线观看区国产| 一区二区三区国产在线播放 | 黄在线| 激情小说成人日本无码一| 日本操逼视频在线| 国产农村妇女精品| 精品无码久久久久久久久果冻糖心| 久久大香蕉97| 中文字幕三四五区| 97在线看| 国产老太乱伦一区| 日韩欧美福利视频看看| 小视频国产| 亚洲国产精品99久久久| 乱论91| 亚洲色图日韩精品| 国产亚洲99久久精品|