久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

.NET新能源汽車鋰電池檢測程序UI掛死問題分析

瀏覽:149日期:2022-06-09 10:01:50
目錄
  • 一:背景
    • 1. 講故事
  • 二: Windbg 分析
    • 1. 程序現象
    • 2. 理解 WindowsFormsSynchronizationContext
    • 3. 卡死的真正原因
    • 4. 7號線程到底創建了什么控件
  • 三:總結

    一:背景

    1. 講故事

    這世間事說來也奇怪,近兩個月有三位朋友找到我,讓我幫忙分析下他的程序hangon現象,這三個dump分別涉及: 醫療,新能源,POS系統。截圖如下:

    那這篇為什么要拿其中的 新能源 說事呢? 因為這位朋友解決的最順利,在提供的一些線索后比較順利的找出了問題代碼。

    說點題外話,我本人對 winform 是不熟的,又奈何它三番五次的出現在我的視野里,所以我決定寫一篇文章好好的總結下,介于沒有太多的參考資料,能力有限,只能自己試著解讀。

    二: Windbg 分析

    1. 程序現象

    開始之前先吐槽一下,這幾位大佬抓的dump文件都是 wow64,也就是用64bit任務管理器抓了32bit的程序,見如下輸出:

    wow64cpu!CpupSyscallStub+0x9:00000000`756d2e09 c3      ret

    所以就不好用 windbg preview 來分析了,首先要用 !wow64exts.sw 將 64bit 轉為 32bit ,本篇用的是 windbg10,好了,既然是UI卡死,首當其沖就是要看一下UI線程到底被什么東西卡住了,可以用命令 !clrstack 看一下。

    0:000:x86> !clrstack OS Thread Id: 0x1d90 (0)Child SP       IP Call Site0019ee6c 0000002b [HelperMethodFrame_1OBJ: 0019ee6c] System.Threading.WaitHandle.WaitOneNative(System.Runtime.InteropServices.SafeHandle, UInt32, Boolean, Boolean)0019ef50 6c4fc7c1 System.Threading.WaitHandle.InternalWaitOne(System.Runtime.InteropServices.SafeHandle, Int64, Boolean, Boolean)0019ef68 6c4fc788 System.Threading.WaitHandle.WaitOne(Int32, Boolean)0019ef7c 6e094e7e System.Windows.Forms.Control.WaitForWaitHandle(System.Threading.WaitHandle)0019efbc 6e463b96 System.Windows.Forms.Control.MarshaledInvoke(System.Windows.Forms.Control, System.Delegate, System.Object[], Boolean)0019efc0 6e09722b [InlinedCallFrame: 0019efc0] 0019f044 6e09722b System.Windows.Forms.Control.Invoke(System.Delegate, System.Object[])0019f078 6e318556 System.Windows.Forms.WindowsFormsSynchronizationContext.Send(System.Threading.SendOrPostCallback, System.Object)0019f090 6eef65a8 Microsoft.Win32.SystemEvents+SystemEventInvokeInfo.Invoke(Boolean, System.Object[])0019f0c4 6eff850c Microsoft.Win32.SystemEvents.RaiseEvent(Boolean, System.Object, System.Object[])0019f110 6eddb134 Microsoft.Win32.SystemEvents.OnUserPreferenceChanged(Int32, IntPtr, IntPtr)0019f130 6f01f0b0 Microsoft.Win32.SystemEvents.WindowProc(IntPtr, Int32, IntPtr, IntPtr)0019f134 001cd246 [InlinedCallFrame: 0019f134] 0019f2e4 001cd246 [InlinedCallFrame: 0019f2e4] 0019f2e0 6dbaefdc DomainBoundILStubClass.IL_STUB_PInvoke(MSG ByRef)0019f2e4 6db5e039 [InlinedCallFrame: 0019f2e4] System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG ByRef)0019f318 6db5e039 System.Windows.Forms.Application+ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr, Int32, Int32)0019f31c 6db5dc49 [InlinedCallFrame: 0019f31c] 0019f3a4 6db5dc49 System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner(Int32, System.Windows.Forms.ApplicationContext)0019f3f4 6db5dac0 System.Windows.Forms.Application+ThreadContext.RunMessageLoop(Int32, System.Windows.Forms.ApplicationContext)0019f420 6db4a7b1 System.Windows.Forms.Application.Run(System.Windows.Forms.Form)0019f434 003504a3 xxx.Program.Main()0019f5a8 6f191366 [GCFrame: 0019f5a8] 

    從調用棧上看,代碼是由于 Microsoft.Win32.SystemEvents.OnUserPreferenceChanged 被觸發,然后在 System.Windows.Forms.Control.WaitForWaitHandle處被卡死,從前者的名字上就能看到,OnUserPreferenceChanged(用戶首選項) 是一個系統級別的 Microsoft.Win32.SystemEvents 事件,那到底是什么導致了這個系統事件被觸發,為此我查了下資料,大概是說:如果應用程序的 Control 注冊了這些系統級事件,那么當windows發出 WM_SYSCOLORCHANGE, WM_DISPLAYCHANGED, WM_THEMECHANGED(主題,首選項,界面顯示) 消息時,這些注冊了系統級事件的 Control 的handle將會被執行,比如刷新自身。

    覺得文字比較拗口的話,我試著畫一張圖來闡明一下。

    從本質上來說,它就是一個觀察者模式,但這和UI卡死沒有半點關系,充其量就是解決問題前需要了解的背景知識,還有一個重要概念沒有說,那就是: WindowsFormsSynchronizationContext

    2. 理解 WindowsFormsSynchronizationContext

    為什么一定要了解 WindowsFormsSynchronizationContext 呢?理解了它,你就搞明白了為什么會卡死,我們知道 winform 的UI線程是一個 STA 模型,它的一個特點就是單線程,其他線程想要更新Control,都需要調度到UI線程的Queue隊列中,不存在也不允許并發更新Control的情況,參考如下:

    0:000:x86> !tThreadCount:      207UnstartedThread:  0BackgroundThread: 206PendingThread:    0DeadThread:       0Hosted Runtime:   no     Lock         ID OSID ThreadOBJ    State GC Mode     GC Alloc Context  Domain   Count Apt Exception   0    1 1d90 003e2430   2026020 Preemptive  00000000:00000000 003db8b8 0     STA    2    2 2804 003f0188     2b220 Preemptive  00000000:00000000 003db8b8 0     MTA (Finalizer) 

    Winform 還有一個特點:它會給那些創建 Control 的線程配一個 WindowsFormsSynchronizationContext 同步上下文,也就是說如果其他線程想要更新那個 Control,那就必須將更新的值通過 WindowsFormsSynchronizationContext 調度到那個創建它的線程上,這里的線程不僅僅是 UI 線程哦,有了這些基礎知識后,再來分析下為什么會被卡死。

    3. 卡死的真正原因

    再重新看下主線程的調用棧,它的走勢是這樣的: OnUserPreferenceChanged -> WindowsFormsSynchronizationContext.Send -> Control.MarshaledInvoke -> WaitHandle.WaitOneNative,哈哈,有看出什么問題嗎???

    眼尖的朋友會發現,為什么主線程會調用 WindowsFormsSynchronizationContext.Send 方法呢? 難道那個注冊 handler的 Control 不是由主線程創建的嗎?要想回答這個問題,需要看一下 WindowsFormsSynchronizationContext 類的 destinationThreadRef 字段值,源碼如下:

    public sealed class WindowsFormsSynchronizationContext : SynchronizationContext, IDisposable{    private Control controlToSendTo;    private WeakReference destinationThreadRef;}

    可以用 !dso 命令把線程棧上的 WindowsFormsSynchronizationContext 給找出來,簡化輸出如下:

    0:000:x86> !dsoOS Thread Id: 0x1d90 (0)ESP/REG  Object   Name0019ED70 027e441c System.Windows.Forms.WindowsFormsSynchronizationContext0019EDC8 112ee43c Microsoft.Win32.SafeHandles.SafeWaitHandle0019F078 11098b74 System.Windows.Forms.WindowsFormsSynchronizationContext0019F080 1107487c Microsoft.Win32.SystemEvents+SystemEventInvokeInfo0019F08C 10fa386c System.Object[]    (System.Object[])0019F090 1107487c Microsoft.Win32.SystemEvents+SystemEventInvokeInfo0019F0AC 027ebf60 System.Object0019F0C0 10fa386c System.Object[]    (System.Object[])0019F0C8 027ebe3c System.Object0019F0CC 10fa388c Microsoft.Win32.SystemEvents+SystemEventInvokeInfo[]...0:000:x86> !do 11098b74Name:System.Windows.Forms.WindowsFormsSynchronizationContextFields:      MT    Field   Offset Type VT     Attr    Value Name6dbd8f30  40025678 ...ows.Forms.Control  0 instance 11098c24 controlToSendTo6c667c2c  4002568c System.WeakReference  0 instance 11098b88 destinationThreadRef0:000:x86> !do 11098b88Name:System.WeakReferenceFields:      MT    Field   Offset Type VT     Attr    Value Name6c66938c  40007054System.IntPtr  1 instance  86e426c m_handle0:000:x86> !do poi(86e426c)Name:System.Threading.ThreadFields:      MT    Field   Offset Type VT     Attr    Value Name6c663cc4  40018a5       24 System.Int32  1 instance2 m_Priority6c663cc4  40018a6       28 System.Int32  1 instance7 m_ManagedThreadId6c66f3d8  40018a7       2c       System.Boolean  1 instance1 m_ExecutionContextBelongsToOuterScope

    果然不出所料, 從卦象上看 Thread=7 線程上有 Control 注冊了系統事件,那 Thread=7 到底是什么線程呢? 可以通過 !t 查看。

    0:028:x86> !tThreadCount:      207UnstartedThread:  0BackgroundThread: 206PendingThread:    0DeadThread:       0Hosted Runtime:   no     Lock         ID OSID ThreadOBJ    State GC Mode     GC Alloc Context  Domain   Count Apt Exception   0    1 1d90 003e2430   2026020 Preemptive  00000000:00000000 003db8b8 0     STA    2    2 2804 003f0188     2b220 Preemptive  00000000:00000000 003db8b8 0     MTA (Finalizer)   28    7 27f0 0b29cd30   3029220 Preemptive  00000000:00000000 003db8b8 0     MTA (Threadpool Worker) 

    從卦象上看: ID=7 是一個線程池線程,而且是 MTA 模式,按理說它應該將創建控件的邏輯調度給UI線程,而不是自己創建,所以UI線程一直在 WaitOneNative 處等待 7號線程消息泵響應,所以導致了無限期等待。

    4. 7號線程到底創建了什么控件

    這又是一個考驗底層知識的問題,也困擾著我至今,太難了,我曾今嘗試著把 UserPreferenceChangedEventHandler 事件上的所有 handles 撈出來,寫了一個腳本大概如下:

    "use strict";// 32bitlet arr = ["xxxx"];function initializeScript() { return [new host.apiVersionSupport(1, 7)]; }function log(str) { host.diagnostics.debugLog(str + "\n"); }function exec(str) { return host.namespace.Debugger.Utility.Control.ExecuteCommand(str); }function invokeScript() {    for (var address of arr) {var commandText = ".printf \"%04x\", poi(poi(poi(poi(" + address + "+0x4)+0xc)+0x4))";var output = exec(commandText).First();if (parseInt(output) == 0) continue; //not exists thread infocommandText = ".printf \"%04x\", poi(poi(poi(poi(poi(" + address + "+0x4)+0xc)+0x4))+0x28)";output = exec(commandText).First();//thread idvar tid = parseInt(output);if (tid > 1) log("Thread=" + tid + ",systemEventInvokeInfo=" + address);    }}

    輸出結果:

    ||2:2:438> !wow64exts.sw
    Switched to Guest (WoW) mode
    Thread=7,systemEventInvokeInfo=1107487c

    從輸出中找到了 7號線程 對應的處理事件 systemEventInvokeInfo ,然后對其追查如下:

    0:028:x86> !do 1107487cName:Microsoft.Win32.SystemEvents+SystemEventInvokeInfoFields:      MT    Field   Offset Type VT     Attr    Value Name6c65ae34  4002e9f4 ...ronizationContext  0 instance 11098b74 _syncContext6c6635ac  4002ea08      System.Delegate  0 instance 1107485c _delegate0:028:x86> !DumpObj /d 1107485cName:Microsoft.Win32.UserPreferenceChangedEventHandlerFields:      MT    Field   Offset Type VT     Attr    Value Name6c66211c  40002b04System.Object  0 instance 110747bc _target6c66211c  40002b18System.Object  0 instance 00000000 _methodBase6c66938c  40002b2cSystem.IntPtr  1 instance  6ebdc00 _methodPtr6c66938c  40002b3       10System.IntPtr  1 instance0 _methodPtrAux6c66211c  40002bd       14System.Object  0 instance 00000000 _invocationList6c66938c  40002be       18System.IntPtr  1 instance0 _invocationCount0:028:x86> !DumpObj /d 110747bcName:DevExpress.LookAndFeel.Design.UserLookAndFeelDefault

    從輸出中可以看到,最后的控件是 DevExpress.LookAndFeel.Design.UserLookAndFeelDefault ,我以為找到了答案,拿著這個結果去 google,結果 devExpress 踢皮球,截圖如下:

    咳,到這里貌似就查不下去了,有其他資料上說 Control 在跨線程注冊 handler 時會經過 MarshalingControl ,所以在這個控件設置bp斷點是能夠抓到的,參考命令如下:

    bp xxx ".echo MarshalingControl creation detected. Callstack follows.;!clrstack;.echo

    這里我就沒法驗證了。

    三:總結

    雖然知道這三起事故都是由于非UI線程創建Control所致,但很遺憾的是我盡了最大的知識邊界還沒有找到最重要的罪魁禍首,不過值得開心的是基于現有線索有一位朋友終于找到了問題代碼,真替他開心

    標簽: ASP.NET
    主站蜘蛛池模板: 六月色婷婷 | 91香蕉视频在线观看 | 日韩一区在线播放 | 成人av观看 | 亚洲在线观看免费视频 | 天堂网色| 国产精品欧美一区二区三区不卡 | 蜜桃视频在线观看www社区 | 香蕉久久夜色精品国产使用方法 | 久久av一区二区三区 | 亚洲日日操 | 亚洲一区久久 | 色av色av色av | 欧美日韩不卡视频 | 日韩视频一区二区三区 | 成人免费一区二区三区视频软件 | 亚洲国产字幕 | www.99精品| 色视频一区二区三区 | 成人免费在线视频 | 成人在线视频网 | 成人在线看片网站 | 草久在线视频 | 色视频网| 亚洲国产一区视频 | 国产一区免费 | 国产毛片一区二区 | 日韩电影免费在线观看中文字幕 | 九九人人 | 精品国产不卡一区二区三区 | 国产精品一区二区三区四区 | 五月婷婷丁香 | 偷拍自拍亚洲欧美 | 日本一区二区三区中文字幕 | 亚洲精品视频在线观看免费 | 久久毛片| 日韩欧美视频 | 亚洲 中文 欧美 日韩 在线观看 | 国产精品综合 | 综合久久一区 | aaaaaa毛片 | 在线观看中文字幕 | 国产一区二区三区免费 | 免费h| 日韩成人在线观看 | 欧美嘿咻| 羞羞视频免费观看 | 亚洲第一成年免费网站 | 国产www在线| 超碰中文字幕 | 99久久免费视频在线观看 | 男女啪啪高清无遮挡 | 久久综合久久久 | 成人一区二区在线 | 91精品久久久久久综合五月天 | 久久久久久成人 | 最新日韩av | 国产精品国产成人国产三级 | 黄在线看v | 国产美女永久免费无遮挡 | 亚洲日韩成人 | 国产精品成人3p一区二区三区 | 一区二区视频 | 免费在线精品视频 | 久久91| 毛片在线视频 | 一区二区视频在线 | 日韩一区二区三区在线观看 | 久久av免费| 蜜桃av一区二区三区 | av影音在线 | 欧日韩在线视频 | 一区二区国产精品 | 中文亚洲欧美 | 欧洲视频一区二区三区 | 欧美xxxx片| 午夜大片网 | 91精品啪啪| 久久久高清 | 国产日韩欧美 | 国产视频亚洲 | 国内精品国产成人国产三级粉色 | 日韩精品一区二区三区四区 | 毛片a在线| 欧美精品网站 | 久久国产一区 | 国产精品一区二区三区在线 | 黄色免费一级 | 亚洲人网站 | 91精品国产欧美一区二区成人 | 婷婷天堂| 欧美永久精品 | 亚洲高清电影 | 有码在线 | 亚洲国产aⅴ成人精品无吗 一区视频在线 | 成人超碰| 成人免费xxxxxxx | 国产高清精品一区 | 日韩专区一区二区三区 | 欧美性一区二区三区 | 一区在线免费观看 | 成人福利视频 | av黄色在线看 | 国产高潮在线观看 | 免费国产黄色大片 | 亚洲欧美在线免费观看 | 久草免费福利 | 91精品国产一区二区 | 国产精品久久久久久 | 久久精品国产精品亚洲 | 99国产精品视频免费观看一公开 | 黄色片网站视频 | 妹子干综合 | 亚洲精品视频在线播放 | 丰满少妇久久久久久久 | 求av网站 | av观看 | 吴梦梦到粉丝家实战华中在线观看 | 国产精品久久久久久中文字 | 国产精品久久久久9999 | 中文字幕av一区 | 欧美国产一区二区三区 | 日本成人在线看 | 天天天插 | 国产.com | 国内精品视频一区二区三区八戒 | 超碰人人爽 | 亚洲毛片在线观看 | 国产中文字幕亚洲 | 欧美精品欧美精品系列 | 青青草精品 | 91精品国产综合久久久蜜臀粉嫩 | 亚洲国产精品一区 | 一区二区三区在线 | 欧 | 国产午夜久久 | 久久精品久久久久久 | 欧美一区二区三区在线 | 一色桃子av一区二区免费 | 精品无码久久久久国产 | 日韩另类 | 一级毛片av | 两性午夜视频 | 免费在线观看毛片网站 | 国产在线观看一区二区三区 | 国产精品欧美一区二区三区不卡 | 精品国产一区二区三区不卡蜜臂 | 一区二区三区四区在线 | 国产日韩欧美视频 | 国产成在线观看免费视频 | 午夜视频在线 | 欧美一级在线 | 欧美自拍一区 | 在线成人av| 欧美成人a | 爱操在线 | 国产精品自产拍在线观看 | 国产人成精品一区二区三 | 国产精品久久久久久久午夜片 | 性高湖久久久久久久久aaaaa | t66y最新地址一地址二69 | 在线免费看a | 国产精品毛片一区视频播 | 精品久久久久久久 | 日韩一区在线视频 | 在线日韩一区 | 国产一级视频在线播放 | 久久成人国产 | 一区二区三区国产在线观看 | 亚洲成人一区二区 | 久久人人爽人人爽 | 91精品国产乱码久久蜜臀 | 久久香蕉国产 | 欧美在线观看一区 | 超碰中文字幕 | 伊人亚洲 | 午夜影院免费版 | 亚洲欧洲精品成人久久奇米网 | 成人午夜免费视频 | 亚洲精品粉嫩美女一区 | 免费日韩成人 | 91亚洲国产成人久久精品网站 | 亚洲国产中文字幕 | 天天操天天插天天干 | 一级做a爰 | 日本精品免费 | 亚洲三级网站 | 91精品久久久久久久久久入口 | 天堂av一区二区 | 国产精品一区免费在线观看 | 五月天婷婷在线视频 | av免费网站在线观看 | 色欧美片视频在线观看 | 国产精品九九久久99视频 | 银杏成人影院在线观看 | 欧美成人在线网站 | 国产一区二区三区久久久 | 亚洲精品一二三区 | 亚洲www视频 | 第一色视频| 综合久久久久久久 | 91成人在线看 | h视频在线免费观看 | 久久综合一区二区三区 | 91久久国产综合久久 | 久久久99精品免费观看 | 91精品国产色综合久久 | 蜜桃av中文字幕 | 国产精品视频在线观看 | 成人av一区二区三区 | 精品国产不卡一区二区三区 | 日韩中文一区二区三区 | 成人激情视频在线观看 | 欧美日韩视频第一页 | 日韩一区二 | 精品96久久久久久中文字幕无 | 亚洲八区 | 欧美成人精品在线 | 欧美精品在线免费观看 | 午夜一级黄色片 | 精品99在线| 欧美日韩不卡合集视频 | 亚洲午夜视频在线观看 | 精品二区 | 国产成人高清 | 国产精彩视频 | 成年人免费看片 | 男人天堂99| 成人av影片在线观看 | 男女国产网站 | 九九久久国产 | 欧美一级欧美三级在线观看 | 亚洲网在线 | 国产视频一区二区三区四区 | 久草天堂 | a√毛片| 国产一区二区三区久久 | 午夜久久久 | 日韩久久久久久 | 亚洲综合首页 | 激情婷婷综合 | 一级二级黄色大片 | 欧美一级二级三级视频 | 免费av手机在线观看 | 国产精品自产拍在线观看桃花 | 九九天堂| 热re99久久精品国产99热 | 一级黄色毛片a | 久久亚洲一区二区 | 6080yy精品一区二区三区 | 国产精品美女久久久久久久久久久 | 在线观看中文字幕 | 日韩中文字幕在线视频 | 欧美成人影院在线 | 午夜在线一区 | 亚洲国产高清高潮精品美女 | www伊人| 精品网站www | 日韩久久网 | 国产精品九九久久99视频 | 久久伊 | 欧美综合久久久 | 欧美一区二区三区男人的天堂 | 国产成人av在线 | 久久国产精品视频 | 免费视频久久 | 在线免费色视频 | 亚洲精品电影在线一区 | 四虎成人免费电影 | 手机看片在线 | 在线久草| 欧洲毛片 | h片在线看 | 亚洲成人毛片 | 国产大毛片 | 国产精品国产三级国产aⅴ9色 | 成人免费看电影 | 欧美一区2区三区4区公司二百 | 日韩亚洲一区二区 | 久久色av | 成人免费xxxxxxx | 日本综合视频 | 欧美久久精品 | 亚洲精品国产精品国自产 | 久久九九精品久久 | 91看片淫黄大片一级在线观看 | 国产精品久久久久久久久晋中 | 色无欲天天天影视综合网 | 高清视频一区 | 久久久久av | 色天天综合久久久久综合片 | 日本久久久久久 | av网站免费在线 | 国产高清在线观看 | 久久精品视频在线播放 | 午夜草民福利电影 | 国产91久久精品一区二区 | 亚洲精品一区二区三区在线 | 风间由美一区二区三区在线观看 | www在线视频 | 国产精品免费一区 | 91色乱码一区二区三区 | 欧美在线一二三 | 久久亚洲天堂 | 精品无码久久久久久国产 | 欧美精品 在线观看 | 亚洲中国精品精华液 | 国产亚洲精品久久久456 | 最新国产精品 | 国产精品夜色一区二区三区 | 国产精品成av人在线视午夜片 | 精品国产乱码久久久久久丨区2区 | 日韩日日夜夜 | 免费观看欧美一级 | 日韩一本 | 91在线区| 亚洲视频综合 | 久久久久久国产精品 | 精品久久久久久亚洲综合网 | 成人日韩av | 精品亚洲永久免费精品 | 一区二区三区国产免费 | 成人精品久久 | 国产亚洲一区二区三区在线观看 | 久久久久久久中文 | 成年人免费看 | 精品久久一区二区 | 91精品国产aⅴ | 国产a久久精品一区二区三区 | 久久永久视频 | 在线观看国精产品二区1819 | 久久久久久婷婷 | 中文字幕日韩在线视频 | 91精品久久久久久久久久 | www久久国产 | av网站网址| 中文字幕一区日韩精品欧美 | 久久不射网| 日韩在线观看中文字幕 | 狠狠综合久久 | 欧美不卡视频一区发布 | 欧美成年黄网站色视频 | 国产亚洲精品精品国产亚洲综合 | 男女国产网站 | 成人福利视频网 | 国产日韩欧美视频 | 亚洲久久久久 | 亚洲 成人 av | 一级全黄少妇性色生活片毛片 | 91视频国内 | 日韩精品一区二区三区 | 成人欧美一区二区三区黑人孕妇 | 一区二区免费在线视频 | 国产精品无码专区在线观看 | 在线一区| 日韩一区精品 | 国产亚洲精品美女久久久久久久久久 | 国产一区久久 | 日韩欧美成人一区二区三区 | 日韩精品久久久久久 | 亚洲国产精品久久久久久久 | 日本精品在线 | 亚洲天堂av网 | 亚洲国产精品第一区二区 | 欧洲成人午夜免费大片 | 久久综合伊人 | 国产伦一区 | 一级黄色片看看 | 99精品欧美一区二区三区 | 5060毛片 | 精品一区免费观看 | 国产在线一区观看 | 国产婷婷综合 | 色网站在线观看 | 久久这里有精品 | 中文久久 | 天天干夜夜骑 | 欧美一二三区在线 | 日韩一区二 | 亚洲啊v | 国产精品爱久久久久久久 | 欧美一区二区三区爽大粗免费 | 日本不卡一二三 | 国产精品一区二区久久 | 在线免费毛片 | 日韩av片在线免费观看 | 色综合色综合 | 亚洲第一福利视频 | 日韩精品专区 | 亚洲福利一区二区 | 81精品国产乱码久久久久久 | 欧美日韩在线精品 | 青青草国产成人av片免费 | 国产精品香蕉 | 精品国产精品 | 一级片在线观看 | 日韩中文视频 | a级黄色毛片免费观看 | www.99久久久 | 国产乱码一区二区三区在线观看 | 亚洲男人的天堂在线观看 | 高清一区二区三区视频 | hitomi一区二区三区精品 | 久久久久久久久久久久久久av | 日韩不卡一区二区 | 狠狠躁日日躁夜夜躁东南亚 | 男人天堂社区 | 91高清视频在线观看 | 中文字字幕在线观看 | 视频在线一区二区 | 久久国产成人午夜av影院宅 | 国产精品一区二区三区99 | 亚洲第一av | 天天操天天干天天爽 | 久久这里只有精品8 | 精品国产乱码一区二区三 | 欧美福利网 | 免费av观看 | 亚洲视频在线观看 | 日韩精品久 | 亚洲啊v在线 | 久久久久国产精品一区二区三区 | av超碰在线 | 日韩性视频 | 范冰冰一级做a爰片久久毛片 | 精品久久久久久久久久久久 | 精品国产一区二区在线 | 国产在线中文字幕 | 久9久9 | 亚洲精品成人网 | 在线观看亚洲视频 | 亚洲综合第一页 | 国产成人精品亚洲777人妖 | 欧美第一页 | 人人干在线视频 | www.夜夜骑 | 久久久久综合狠狠综合日本高清 | 成人黄色在线视频 | 亚洲激情欧美 | 影音先锋久久 | www.欧美| 精品国产一区二区三区不卡蜜臂 | www日本视频 | av网址在线播放 | 蜜臀久久99精品久久久无需会员 | 欧美日韩成人在线播放 | 三级视频网站 | 色婷婷一区二区三区四区 | 亚洲日本二区 | 亚洲一本 | www.日韩大片 | 欧美日韩精品一区 | 亚洲精品一区二区在线观看 | 中文字幕亚洲精品 | 成人精品一区 | 国产精品99在线观看 | 亚洲一区二区三区福利 | 日韩成人在线视频 | 四虎影院在线免费播放 | 亚洲一区二区精品 | 国产剧情一区二区 | 亚洲视频综合 | 密室大逃脱第六季大神版在线观看 | 久久国内 | 涩涩视频观看 | 欧美成人精品一区二区三区 | 亚洲一区二区三区高清 | 国产女人爽到高潮免费视频 | 成人av播放 | 性xxxxxxxxx18欧美 | 久久久久一区 | 亚洲精品久久久久久下一站 | 亚洲一区二区久久 | 久久久精品久久久久久 | 日韩一区二区在线观看视频 | hitomi一区二区三区精品 | 久久综合久久久 | av在线一区二区三区 | 国产精品2019 | 成人免费aaa | 一区二区免费在线视频 | 久久人爽 | 色综合久久久 | 国产日产精品一区二区三区四区 | 2018国产精品 | 亚洲九九 | 涩涩视频在线免费看 | 欧美日韩高清 | 中文字幕在线不卡 | 国产成人无遮挡在线视频 | 国产精品1| 久久成人一区 | 91一区二区 | 亚洲一区电影 | chinese中国真实乱对白 | 2019天天干夜夜操 | 亚洲一区 | 成人激情视频在线免费观看 | 波多野结衣一区二区三区高清 | 天天插天天 | 七龙珠z普通话国语版在线观看 | 新疆少妇videos高潮 | 人人澡人人草 | 国产精品一区二区视频 | 国产成人中文字幕 | 高清国产午夜精品久久久久久 | 日韩三级视频 | 中文字幕在线永久在线视频 | 一区二区三区精品视频 | 日韩亚洲视频在线观看 | 三级在线视频 | 日韩精品在线观看一区 | 国产精品久久九九 | 比利时xxxx性hd极品 | 精品国产精品 | 国产精品99久久久久久动医院 | 干干干操操操 | 高清三区 | 久久成人免费视频 | 奇米影| 在线观看日韩 | 中文字幕亚洲欧美日韩在线不卡 | 日韩婷婷| 毛片网站在线观看 | 色女人av| 毛片免费在线 | 中文一区二区 | 国产精品久久久久免费 | 亚洲精品乱码久久久久久久久 | 亚洲一区高清 | 午夜精品导航 | 亚洲精品99 | 亚洲精品影院 | 久久久成人av | 国产欧美中文字幕 | 国产精品久久久久免费 | 天天看夜夜爽 | 天堂资源网 | 伊人久久精品久久亚洲一区 | 成人片网址 | 精品久久久久久久 | 免费毛片在线播放 | 国产日韩欧美一区二区 | 欧美午夜一区二区三区免费大片 | 久久亚洲91 | 国产精品二区三区 | 久草福利在线视频 | 成人性视频免费网站 | 亚洲精品91| 免费一级欧美在线观看视频 | 一区二区视频 | 欧美日韩中文字幕在线 | 欧美一级欧美三级在线观看 | 伊人一区二区三区 | 三级精品 | 亚洲一区二区在线视频 | 欧美日一区| 欧美日韩精品一区二区三区蜜桃 | 欧美日韩伊人 | 一区二区三区在线免费观看 | 国产在线一区二区三区 | 日韩视频免费在线 | 精品国产999 | 黄色片网站在线免费观看 | 羞羞色影院 | 亚洲激情在线 | 欧美久久一区二区三区 | 亚洲综合视频在线观看 | 成人免费看 | 91成人一区| 亚洲成人网一区 | 日本一区二区不卡视频 | 在线观看国产 | 黄色国产 | 午夜色电影 | 青娱乐一区| 精品99久久久久久 | 精品国产一区二区国模嫣然 | 精品国产三级 | 美女黄在线观看 | 欧美日韩亚洲高清 | 日韩一区二区三区在线 | 免费观看一级特黄欧美大片 | 久久精品国产99精品国产亚洲性色 | 99re热精品视频国产免费 | 91午夜伦伦电影理论片 | 天堂av在线免费观看 | 国产第一区二区三区 | 国产一区二区三区四区在线观看 | 一级欧美一级日韩片 | 91电影在线| 精品一区久久 | 亚洲福利一区二区 | 欧美九九九 | 精品国产乱码久久久久久1区2区 | 91精品久久久久久久久中文字幕 | 国产伦精品一区二区三区在线 | 美女高潮久久久 | 国产一区在线视频 | 亚洲成a人v欧美综合天堂麻豆 | 亚洲精品久久久狠狠狠爱 | 成人精品在线视频 | 精品视频久久 | 伊人网站| 欧美一区二区在线看 | 国产欧美日韩综合精品一区二区 | 午夜寂寞影视在线观看 | 成人免费看 | 久久久久久综合 | 欧美精品一区在线观看 | 九九视频这里只有精品 | 国产成人在线视频 | 欧美日韩久久精品 | 九九香蕉视频 | 欧美高潮 | 国产真实乱全部视频 |