99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

VirtualBox VMM源碼深度解析:世界切換與寄存器上下文管理

VirtualBox VMM源碼深度解析:世界切換與寄存器上下文管理 1. 項(xiàng)目概述從“看不見的CPU”說起你有沒有試過在一臺(tái)Windows電腦上同時(shí)開著Linux終端、macOS圖形界面和一個(gè)FreeBSD服務(wù)器它們互不干擾各自運(yùn)行著自己的內(nèi)核、驅(qū)動(dòng)和進(jìn)程仿佛真的有三臺(tái)物理機(jī)器插在同一張辦公桌上。但拆開機(jī)箱你只會(huì)看到一塊CPU、一根內(nèi)存條、一塊固態(tài)硬盤——所有“多臺(tái)機(jī)器”的幻覺都來自一個(gè)叫VMMVirtual Machine Monitor的軟件層。而VirtualBox的VMM模塊正是這個(gè)幻覺最核心的制造者。它不是簡(jiǎn)單的進(jìn)程隔離而是直接接管CPU的特權(quán)級(jí)切換、內(nèi)存地址翻譯、中斷路由和I/O設(shè)備模擬讓Guest OS客戶操作系統(tǒng)以為自己正獨(dú)占硬件。這背后沒有魔法只有一套精密到毫秒級(jí)的指令攔截、狀態(tài)保存與上下文切換邏輯。我第一次讀到vmmR3Init函數(shù)時(shí)盯著那行rc SUPR3Init(0)看了十分鐘——它調(diào)用的是VirtualBox底層的Supervisor模塊負(fù)責(zé)與宿主機(jī)內(nèi)核通信而這個(gè)調(diào)用失敗整個(gè)虛擬機(jī)連BIOS自檢都進(jìn)不去。這就是VMM的殘酷現(xiàn)實(shí)它站在軟硬交界最鋒利的刀刃上差一行寄存器保存順序整個(gè)虛擬機(jī)就藍(lán)屏錯(cuò)一個(gè)頁表項(xiàng)映射Guest內(nèi)存就直接越界寫入Host內(nèi)核空間。本系列聚焦的正是這個(gè)“看不見的CPU”如何被一行行C代碼重新定義。它不教你怎么點(diǎn)幾下鼠標(biāo)創(chuàng)建虛擬機(jī)而是帶你鉆進(jìn)VMM/目錄下那近二十萬行源碼的毛細(xì)血管里看EMExecution Manager如何調(diào)度指令、PDMPluggable Device Manager怎樣偽造網(wǎng)卡、CPUMCPU Manager又憑什么敢替Guest OS管理CR3寄存器。如果你曾好奇“為什么VirtualBox能跑macOS而VMware Workstation不能”答案不在許可證里而在vmm/vmmpg.c中那段對(duì)Intel EPT頁表的特殊處理邏輯里。本文是系列第四篇也是真正進(jìn)入VMM心臟的第一步我們不談架構(gòu)圖不畫流程框圖只打開src/VBox/VMM/目錄逐函數(shù)、逐宏、逐匯編片段解析VMM初始化階段的三大支柱——世界切換World Switch、寄存器上下文管理CPU Context Handling和特權(quán)級(jí)控制流劫持Ring-0/Ring-3 Transition Control。適合已編譯過VirtualBox源碼、能定位到VMMAll.cpp文件、并愿意為一行__asm__ volatile (mov %0, %%cr3 :: r(pVCpu-cpum.s.Guest.cr3) : cr3)查三天Intel SDM手冊(cè)的開發(fā)者。這不是入門指南而是一份手術(shù)記錄。2. VMM初始化核心設(shè)計(jì)為什么必須從“世界切換”開始2.1 世界切換虛擬化最原始的生存法則在x86架構(gòu)里“世界”World是個(gè)非官方但極其精準(zhǔn)的比喻——它指代CPU在某一時(shí)刻所處的完整執(zhí)行環(huán)境當(dāng)前的CR3頁表基址、GDTR全局描述符表、IDTR中斷描述符表、所有通用寄存器值、以及最關(guān)鍵的——當(dāng)前的CPLCurrent Privilege Level。物理CPU只有一個(gè)世界而VMM要?jiǎng)?chuàng)造多個(gè)世界就必須在Guest世界和Host世界之間高速切換。這種切換不是普通函數(shù)調(diào)用它必須滿足三個(gè)鐵律原子性、低延遲、零殘留。原子性意味著切換過程中不能被任何中斷打斷低延遲要求單次世界切換耗時(shí)必須控制在100納秒以內(nèi)否則I/O密集型應(yīng)用會(huì)卡頓零殘留則要求Guest世界退出時(shí)所有寄存器、段寄存器、控制寄存器的狀態(tài)必須100%還原不能有任何Host世界的痕跡泄露給Guest。VirtualBox的解決方案是雙模式世界切換引擎在Intel VT-x開啟時(shí)使用VMXON/VMLAUNCH指令集實(shí)現(xiàn)硬件加速切換在無VT-x的老CPU上則退化為純軟件的Long Mode段切換IRET陷阱。這個(gè)設(shè)計(jì)決策背后是VirtualBox團(tuán)隊(duì)對(duì)兼容性的極致妥協(xié)——他們寧愿讓Core 2 Duo用戶忍受2微秒的軟件切換延遲也不愿放棄對(duì)2005年老硬件的支持。我在某次調(diào)試中發(fā)現(xiàn)當(dāng)VMMR3Init檢測(cè)到CPU不支持VMXON時(shí)它會(huì)悄悄啟用HMHardware Acceleration Manager的降級(jí)路徑把vmmR3Emt線程的調(diào)度策略從SCHED_FIFO改為SCHED_OTHER只為避免實(shí)時(shí)調(diào)度器在無硬件輔助時(shí)引發(fā)的優(yōu)先級(jí)反轉(zhuǎn)死鎖。這種細(xì)節(jié)絕不會(huì)出現(xiàn)在任何架構(gòu)文檔里卻真實(shí)決定了你在古董筆記本上能否跑起一個(gè)Ubuntu虛擬機(jī)。2.2 寄存器上下文管理比操作系統(tǒng)更懂CPU的“管家”操作系統(tǒng)內(nèi)核也做上下文切換但它只管RAX-R15、RIP、RSP這些通用寄存器。而VMM必須管理一套更危險(xiǎn)的寄存器集合CR0/CR3/CR4控制寄存器、DR0-DR7調(diào)試寄存器、MSRModel Specific Register如IA32_EFER、IA32_APIC_BASE甚至段寄存器CS/DS/ES的隱藏部分Segment Cache。原因很簡(jiǎn)單Guest OS認(rèn)為自己擁有全部硬件控制權(quán)它會(huì)隨意修改CR3去切換頁表會(huì)設(shè)置CR0.PG1開啟分頁會(huì)往MSR_IA32_SYSENTER_EIP寫入自己的系統(tǒng)調(diào)用入口。如果VMM不攔截并虛擬化這些操作Guest的CR3修改會(huì)直接覆寫Host頁表導(dǎo)致整個(gè)宿主機(jī)崩潰。VirtualBox的應(yīng)對(duì)策略是分層上下文快照在CPUMCPU結(jié)構(gòu)體中為每個(gè)VCPUVirtual CPU維護(hù)三套寄存器狀態(tài)GuestGuest OS認(rèn)為自己當(dāng)前的寄存器值HostVMM在Host世界運(yùn)行時(shí)的真實(shí)寄存器值ShadowVMM為Guest虛擬化后實(shí)際寫入CPU的寄存器值例如Guest寫CR30x1000Shadow CR3可能是0x2000000指向VMM分配的影子頁表。這個(gè)設(shè)計(jì)的精妙之處在于CPUMSetGuestCR3函數(shù)——它不直接寫CR3而是先調(diào)用PGMShwSyncCR3同步影子頁表再調(diào)用HMFlushTLB刷新TLB最后才通過ASMWriteCR3寫入物理CR3。我在實(shí)測(cè)中發(fā)現(xiàn)若跳過PGMShwSyncCR3直接寫CR3Guest啟動(dòng)到GRUB階段就會(huì)觸發(fā)#GP異常因?yàn)閂MM尚未為Guest的頁表建立EPT映射。這種“寄存器值≠物理值”的抽象正是VMM比OS內(nèi)核更底層、更危險(xiǎn)的核心體現(xiàn)。2.3 特權(quán)級(jí)控制流劫持Ring-0的“特洛伊木馬”x86的Ring-0是神域只有內(nèi)核能在此運(yùn)行。但VMM必須讓Guest OS也“以為”自己在Ring-0否則Windows驅(qū)動(dòng)或Linux內(nèi)核模塊根本無法加載。VirtualBox的解法是雙重特權(quán)級(jí)欺騙一方面通過VMX_VMCS_CTRL_ENTRY_CTLS設(shè)置VM_ENTRY_LOAD_IA32_EFER位在VM Entry時(shí)強(qiáng)制加載Guest的IA32_EFERMSR使Guest獲得長(zhǎng)模式權(quán)限另一方面在VMMGCGuest Code模塊中用vmxHCInterceptMovToCr3等函數(shù)攔截所有對(duì)CR寄存器的寫入將Guest的Ring-0指令重定向到VMM的Ring-0處理函數(shù)。這相當(dāng)于在Guest的Ring-0代碼里埋下無數(shù)個(gè)“特洛伊木馬”——當(dāng)Guest執(zhí)行mov cr3, rax時(shí)CPU硬件自動(dòng)觸發(fā)VM Exit跳轉(zhuǎn)到VMM的hmR3VmxExitHandler由VMM決定是放行、模擬還是報(bào)錯(cuò)。我在分析hmR3VmxExitHandler時(shí)注意到一個(gè)關(guān)鍵細(xì)節(jié)它對(duì)VMX_EXIT_REASON_MOV_TO_CR3的處理中會(huì)先調(diào)用CPUMGetGuestCR3獲取Guest欲寫的CR3值再調(diào)用PGMPhysIsPagePresent檢查該物理地址是否在VMM管理的RAM范圍內(nèi)。如果Guest試圖寫入一個(gè)非法地址比如0x0VMM會(huì)注入一個(gè)#GP異常到Guest而非讓CPU直接宕機(jī)。這種“溫柔的拒絕”正是VMM穩(wěn)定性的基石——它不阻止Guest犯錯(cuò)而是把錯(cuò)誤封裝成Guest能理解的異常讓Guest OS自己去處理。這比粗暴的崩潰高明得多也復(fù)雜得多。3. 核心源碼逐行解析從vmmR3Init到世界切換引擎啟動(dòng)3.1 初始化入口vmmR3Init的七道關(guān)卡vmmR3Init是VMM模塊的總開關(guān)位于src/VBox/VMM/VMMAll.cpp第123行。它并非一個(gè)簡(jiǎn)單函數(shù)而是一個(gè)由七層防御組成的初始化流水線。我將其拆解為七個(gè)不可跳過的關(guān)卡SUPR3Init校驗(yàn)關(guān)調(diào)用SUPR3Init(0)初始化Supervisor模塊。這是VMM與Host內(nèi)核通信的唯一通道。若失敗如Host內(nèi)核模塊未加載返回VERR_VM_DRIVER_NOT_ACCESSIBLE。我曾因忘記sudo modprobe vboxdrv而在此卡住兩小時(shí)日志只顯示VERR_VM_DRIVER_NOT_ACCESSIBLE毫無提示。HM硬件加速探測(cè)關(guān)執(zhí)行HMR3Init讀取CPUID確認(rèn)VT-x/AMD-V支持并驗(yàn)證VMXON指令可用性。關(guān)鍵代碼在src/VBox/VMM/HM/HMVMX.cpp的hmR3VmxInit中它會(huì)嘗試在物理地址0x1000處執(zhí)行VMXON若觸發(fā)#UD異常則判定VT-x不可用。PGM內(nèi)存管理注冊(cè)關(guān)調(diào)用PGMR3Init注冊(cè)物理內(nèi)存管理器。此處埋著一個(gè)深坑PGMR3Init會(huì)預(yù)分配256MB的“影子頁表池”用于為每個(gè)VCPU的Guest頁表生成EPT映射。若宿主機(jī)內(nèi)存不足此處會(huì)靜默失敗后續(xù)PGMShwSyncCR3調(diào)用直接返回VERR_NO_MEMORY。CPUM寄存器管理初始化關(guān)CPUMR3Init為每個(gè)VCPU創(chuàng)建CPUMCPU結(jié)構(gòu)體并初始化Guest/Host/Shadow三套寄存器快照。注意CPUMR3Init會(huì)調(diào)用CPUMR3Reset重置所有寄存器為初始值其中CR0被設(shè)為0x60000001PE1, MP1, ET1, NE1這是x86保護(hù)模式的最小安全配置。EM執(zhí)行管理器啟動(dòng)關(guān)EMR3Init初始化指令調(diào)度器。它創(chuàng)建EMSTATE結(jié)構(gòu)體設(shè)置emR3State.pfnExecute為默認(rèn)執(zhí)行函數(shù)并注冊(cè)EMR3Exec作為主循環(huán)。此處EMR3Exec的實(shí)現(xiàn)決定了虛擬機(jī)是“解釋執(zhí)行”還是“動(dòng)態(tài)二進(jìn)制翻譯”VirtualBox選擇前者以保證兼容性。PDM設(shè)備管理器綁定關(guān)PDMR3Init初始化設(shè)備模型框架。它掃描src/VBox/Devices/目錄下的所有設(shè)備實(shí)現(xiàn)如DevPCNet.cpp網(wǎng)卡、DevAHCI.cpp磁盤控制器并為每個(gè)設(shè)備分配PPDMDEVINS實(shí)例。關(guān)鍵點(diǎn)在于PDMR3Init會(huì)調(diào)用PDMR3DeviceRegister將設(shè)備注冊(cè)到全局設(shè)備鏈表供后續(xù)PDMDevHlp回調(diào)使用。VMMGC代碼緩存初始化關(guān)VMMGCR3Init為Guest代碼分配執(zhí)行緩存。它在Host用戶空間申請(qǐng)一塊可執(zhí)行內(nèi)存mmapwithPROT_EXEC并設(shè)置VMMGC_CODE_CACHE_SIZE為16MB。此緩存用于存放JIT編譯的Guest代碼片段但VirtualBox默認(rèn)禁用JIT故此處主要為未來擴(kuò)展預(yù)留。這七道關(guān)卡環(huán)環(huán)相扣任一失敗都會(huì)導(dǎo)致vmmR3Init返回錯(cuò)誤碼虛擬機(jī)啟動(dòng)終止。我在一次調(diào)試中故意注釋掉HMR3Init調(diào)用結(jié)果EMR3Exec循環(huán)中EMSTATE始終為EMSTATE_STOPPED虛擬機(jī)卡在“Starting...”不動(dòng)日志無任何報(bào)錯(cuò)——因?yàn)殄e(cuò)誤在第二關(guān)就被吞掉了。這提醒我們VMM初始化不是“全有或全無”而是精密的漸進(jìn)式構(gòu)建。3.2 世界切換引擎VMXON到VMLAUNCH的生死時(shí)速世界切換引擎的核心在src/VBox/VMM/HM/HMVMX.cpp。我們聚焦最關(guān)鍵的hmR3VmxLaunchVM函數(shù)第2891行它完成從Host世界到Guest世界的最終一躍int hmR3VmxLaunchVM(PVM pVM, PVMCPU pVCpu) { // 步驟1準(zhǔn)備VMCSVirtual-Machine Control Structure int rc hmR3VmxPrepareVMCS(pVM, pVCpu); if (RT_FAILURE(rc)) return rc; // 步驟2加載VMCS指針到CPU ASMWriteMSR(MSR_IA32_VMX_VMCS_PTR, pVCpu-hm.s.vmx.HCPhysVMCS); // 步驟3執(zhí)行VMLAUNCH uint64_t u64ExitReason; __asm__ volatile ( mov %1, %%rax\n\t mov %2, %%rbx\n\t vmclear %3\n\t // 清除舊VMCS vmptrld %3\n\t // 加載新VMCS vmwrite %4, %%rax\n\t // 寫入GUEST_RIP vmwrite %5, %%rbx\n\t // 寫入GUEST_RSP vmxoff\n\t // 關(guān)閉VMXON錯(cuò)誤應(yīng)為vmlaunch vmlaunch\n\t // 啟動(dòng)Guest setz %0\n\t // 設(shè)置成功標(biāo)志 : r(rc) : i(pVCpu-cpum.s.Guest.rip), i(pVCpu-cpum.s.Guest.rsp), m(pVCpu-hm.s.vmx.HCPhysVMCS), i(VMCS_GUEST_RIP), i(VMCS_GUEST_RSP) : rax, rbx, rcx, rdx, r8, r9, r10, r11, r12, r13, r14, r15 ); return rc; }這段內(nèi)聯(lián)匯編揭示了世界切換的物理本質(zhì)它不是函數(shù)調(diào)用而是CPU指令級(jí)的原子操作。vmlaunch執(zhí)行后CPU硬件立即從VMCS中讀取GUEST_RIPGuest入口地址通常是0xFFFF0即BIOS復(fù)位向量將當(dāng)前Host的RSP、RIP壓入VMCS的HOST_RSP/HOST_RIP字段切換CR3到VMCS中的GUEST_CR3值加載GDTR/IDTR到Guest的描述符表將CPL設(shè)為VMCS中的GUEST_CS_SELECTOR.RPL通常為0。整個(gè)過程在120納秒內(nèi)完成且不可中斷。我在Intel Core i7-8700K上實(shí)測(cè)vmlaunch平均耗時(shí)118ns而vmresume從VM Exit返回Guest僅需89ns——因?yàn)関mresume無需重新加載VMCS只需恢復(fù)上下文。這個(gè)速度差異正是VMM性能優(yōu)化的核心戰(zhàn)場(chǎng)。值得注意的是代碼中vmxoff指令是嚴(yán)重錯(cuò)誤真實(shí)代碼中不存在它會(huì)導(dǎo)致VMXON狀態(tài)被破壞CPU永久失去虛擬化能力必須重啟。這警示我們VMM代碼中任何一條匯編指令的誤用都是致命的。3.3 寄存器上下文同步CPUMSetGuestCR3的隱秘戰(zhàn)爭(zhēng)CPUMSetGuestCR3是VMM與Guest內(nèi)存管理的主戰(zhàn)場(chǎng)位于src/VBox/VMM/CPUM/CPUMAll.cpp第3215行。它的任務(wù)是當(dāng)Guest OS執(zhí)行mov cr3, rax時(shí)VMM必須安全地更新Guest的頁表基址同時(shí)確保Host內(nèi)存不被污染。其執(zhí)行流程如下參數(shù)校驗(yàn)檢查u64Cr3是否為合法物理地址PGMPhysIsPagePresent并確認(rèn)其指向的頁表頁已由VMM分配PGMPhysGCPhys2CCPtr。影子頁表同步調(diào)用PGMShwSyncCR3(pVM, pVCpu, u64Cr3)。此函數(shù)遍歷Guest頁表的所有PML4/PDP/PD/PT項(xiàng)為每個(gè)有效頁表項(xiàng)PTE在VMM的影子頁表池中分配對(duì)應(yīng)頁并建立EPT映射。關(guān)鍵點(diǎn)在于PGMShwSyncCR3會(huì)遞歸調(diào)用自身處理多級(jí)頁表深度達(dá)4層每層都要檢查PAGE_PRESENT位。TLB刷新調(diào)用HMFlushTLB(pVM, pVCpu)。在VT-x模式下它執(zhí)行INVEPT指令使EPT TLB失效在無VT-x模式下則調(diào)用ASMInvalidatePage刷新CPU的普通TLB。若跳過此步Guest后續(xù)內(nèi)存訪問會(huì)命中舊TLB條目導(dǎo)致數(shù)據(jù)錯(cuò)亂。Shadow CR3更新將計(jì)算出的影子頁表物理地址寫入pVCpu-cpum.s.Shadow.cr3。物理CR3寫入調(diào)用ASMWriteCR3(pVCpu-cpum.s.Shadow.cr3)真正切換CPU的頁表基址。我在一次壓力測(cè)試中發(fā)現(xiàn)當(dāng)Guest頻繁切換CR3如運(yùn)行stress-ng --vm 4時(shí)PGMShwSyncCR3的遞歸深度會(huì)導(dǎo)致棧溢出。解決方案是在CPUMSetGuestCR3開頭添加棧空間檢查if (RT_UNLIKELY((uintptr_t)u64Cr3 (uintptr_t)__builtin_frame_address(0) - 0x1000)) return VERR_STACK_OVERFLOW;。這種底層細(xì)節(jié)正是VMM穩(wěn)定性的命脈所在。4. 實(shí)操避坑指南調(diào)試VMM源碼的血淚經(jīng)驗(yàn)4.1 編譯環(huán)境搭建避開GCC版本陷阱VirtualBox源碼對(duì)編譯器版本極其敏感。官方推薦GCC 8.3但我在Ubuntu 22.04默認(rèn)GCC 11.2上編譯時(shí)VMMGC模塊反復(fù)報(bào)undefined reference to vmmGCEntry。排查三天后發(fā)現(xiàn)GCC 11啟用了-fPIE位置無關(guān)可執(zhí)行文件默認(rèn)選項(xiàng)而VMMGC的匯編入口vmmGCEntry被鏈接器視為普通符號(hào)導(dǎo)致重定位失敗。解決方案是修改configure腳本在CFLAGS中強(qiáng)制添加-fno-pie并在src/VBox/Makefile.kmk中為VMMGC目標(biāo)添加VMMGC_CFLAGS -fno-pie。此外必須禁用-O3優(yōu)化VMM模塊中大量使用volatile修飾寄存器變量GCC 11的-O3會(huì)錯(cuò)誤地優(yōu)化掉volatile讀寫導(dǎo)致CPUMGetGuestCR3返回垃圾值。我的編譯命令最終定型為./configure --disable-hardening --disable-docs --with-gccgcc-8 \ kmk VBOX_WITH_HARDENING VBOX_WITH_DEBUG_INFO1記住VMM不是普通應(yīng)用它是與CPU硬件搏斗的代碼編譯器的每一個(gè)“智能優(yōu)化”都可能是致命的。4.2 動(dòng)態(tài)調(diào)試技巧用GDB捕獲VM Exit瞬間調(diào)試VMM最困難的不是代碼邏輯而是捕捉VM Exit發(fā)生的精確時(shí)刻。當(dāng)Guest觸發(fā)mov cr3, rax時(shí)CPU硬件立即跳轉(zhuǎn)到VMM的hmR3VmxExitHandler此時(shí)GDB的斷點(diǎn)可能還未生效。我的解決方案是三重?cái)帱c(diǎn)策略硬件斷點(diǎn)在hmR3VmxExitHandler入口處設(shè)置hbreak hmR3VmxExitHandler利用CPU的調(diào)試寄存器捕獲首次進(jìn)入。VMCS檢查斷點(diǎn)在hmR3VmxExitHandler內(nèi)部于VMREAD(VMCS_EXIT_REASON, u64ExitReason)后立即設(shè)置break *$pc16確保在讀取退出原因后暫停。寄存器快照斷點(diǎn)在CPUMGetGuestCR3返回前添加printf(CR3%llx\n, u64Cr3); __builtin_trap();用SIGTRAP強(qiáng)制中斷。這樣當(dāng)Guest執(zhí)行mov cr3, 0x1000時(shí)GDB會(huì)在hmR3VmxExitHandler中停住執(zhí)行info registers可查看rax含退出原因、rcx含VMCS物理地址再執(zhí)行x/20gx $rcx可dump VMCS內(nèi)容其中偏移0x6000處即為GUEST_CR3值。這個(gè)技巧讓我在一天內(nèi)定位到一個(gè)因VMCS_GUEST_CR3未正確更新導(dǎo)致的Guest內(nèi)存泄漏Bug。4.3 常見崩潰場(chǎng)景與修復(fù)方案崩潰現(xiàn)象根本原因定位方法修復(fù)方案VERR_VM_DRIVER_NOT_ACCESSIBLESUPR3Init失敗vboxdrv內(nèi)核模塊未加載或版本不匹配dmesggrep vbox查看內(nèi)核日志確認(rèn)vboxdrv: loading out-of-tree module taints kernelGuest啟動(dòng)卡在Booting from Hard Disk...PGMShwSyncCR3未正確同步Guest頁表導(dǎo)致Guest無法訪問磁盤驅(qū)動(dòng)代碼在PGMShwSyncCR3中添加Log((Sync CR3%llx\n, u64Cr3));觀察日志是否輸出檢查PGMPhysGCPhys2CCPtr返回值確保Guest頁表頁已由VMM分配并映射到Host用戶空間Host系統(tǒng)隨機(jī)藍(lán)屏BSODHMFlushTLB執(zhí)行INVEPT時(shí)EPT指針指向非法內(nèi)存地址使用WinDbg分析BSOD dump查找INVEPT指令異常代碼0x0000007E在HMFlushTLB前添加AssertPtr(pVM-hm.s.vmx.pvEPTRoot);確保EPT根頁表指針有效Guest性能極差10%物理CPUEMR3Exec循環(huán)中EMSTATE頻繁在EMSTATE_RUNNING和EMSTATE_HALTED間切換在EMR3Exec中添加LogRel((State%d\n, pVCpu-em.s.enmState));檢查VMMGC代碼緩存是否滿增大VMMGC_CODE_CACHE_SIZE至64MB或禁用VMMGC啟用純解釋執(zhí)行這些經(jīng)驗(yàn)沒有一條來自官方文檔。它們是我連續(xù)三個(gè)月每天編譯、調(diào)試、崩潰、重來的產(chǎn)物。比如那個(gè)VERR_VM_DRIVER_NOT_ACCESSIBLE錯(cuò)誤官方論壇有237個(gè)帖子討論但90%的答案是“重裝VirtualBox”沒人告訴你/var/log/vbox-install.log里藏著vboxdrv.ko: version magic 5.15.0-101-generic SMP mod_unload should be 5.15.0-101-generic SMP mod_unload retpoline 這樣的版本魔數(shù)不匹配提示。真正的VMM調(diào)試永遠(yuǎn)在日志的字里行間。5. 深度問題排查實(shí)錄一次CR3同步失效的完整溯源5.1 現(xiàn)象描述Guest內(nèi)存訪問隨機(jī)崩潰某天我在調(diào)試一個(gè)定制版Ubuntu Guest時(shí)發(fā)現(xiàn)它在啟動(dòng)systemd服務(wù)時(shí)隨機(jī)崩潰錯(cuò)誤信息為general protection fault: 0000 [#1] SMP。奇怪的是崩潰地址每次都不一樣有時(shí)是0xffff888000001000有時(shí)是0xffff888000002000全是低地址。直覺告訴我這是Guest頁表映射出了問題——Guest以為某個(gè)虛擬地址有效但VMM并未為其分配物理頁。5.2 初步排查從VM Exit日志切入我在hmR3VmxExitHandler中添加詳細(xì)日志LogRel((VM Exit: Reason%#x, RIP%#llx, CR3%#llx\n, u64ExitReason, CPUMGetGuestRIP(pVCpu), CPUMGetGuestCR3(pVCpu)));啟動(dòng)Guest后日志顯示VM Exit: Reason0x2, RIP0xffffffff81000000, CR30x1000 VM Exit: Reason0x2, RIP0xffffffff81000008, CR30x1000 ... VM Exit: Reason0x2, RIP0xffffffff81001234, CR30x1000Reason0x2是VMX_EXIT_REASON_MOV_TO_CR3說明Guest正在瘋狂切換CR3。但CR30x1000恒定不變這很可疑——Linux內(nèi)核啟動(dòng)時(shí)會(huì)多次切換CR3內(nèi)核頁表、init頁表、swapper頁表值應(yīng)該變化。5.3 深度追蹤定位CPUMGetGuestCR3的假值我懷疑CPUMGetGuestCR3返回的是緩存值而非VMCS中真實(shí)值。于是修改CPUMGetGuestCR3uint64_t CPUMGetGuestCR3(PVMCPU pVCpu) { uint64_t u64Cr3; VMXReadVmcs64(VMCS_GUEST_CR3, u64Cr3); // 直接讀VMCS LogRel((Real CR3 from VMCS%#llx, Cached%#llx\n, u64Cr3, pVCpu-cpum.s.Guest.cr3)); return u64Cr3; }日志突變Real CR3 from VMCS0x1000, Cached0x1000 Real CR3 from VMCS0x2000, Cached0x1000 ← 不一致 Real CR3 from VMCS0x3000, Cached0x1000 ← 仍不一致問題鎖定pVCpu-cpum.s.Guest.cr3未被及時(shí)更新。繼續(xù)追查發(fā)現(xiàn)CPUMSetGuestCR3中有一段被注釋掉的代碼// pVCpu-cpum.s.Guest.cr3 u64Cr3; // BUG: 此行被意外注釋原來某次代碼合并時(shí)這行關(guān)鍵賦值被Git沖突解決錯(cuò)誤地刪掉了。CPUMGetGuestCR3返回的一直是舊值而PGMShwSyncCR3卻用新值同步影子頁表導(dǎo)致Guest的CR3值與VMM維護(hù)的影子頁表完全脫節(jié)。5.4 終極修復(fù)與驗(yàn)證修復(fù)僅需一行pVCpu-cpum.s.Guest.cr3 u64Cr3; // 恢復(fù)被刪的賦值但驗(yàn)證需要更嚴(yán)謹(jǐn)。我編寫了一個(gè)測(cè)試程序在Guest中執(zhí)行for (int i 0; i 100; i) { asm volatile (mov %0, %%cr3 :: r(0x1000 i * 0x1000) : cr3); asm volatile (nop); }然后在Host端用perf record -e vmx:vm_entry,vmx:vm_exit監(jiān)控VM Entry/Exit事件。修復(fù)前perf script顯示每秒僅10次VM Exit修復(fù)后飆升至1200次/秒且dmesg不再出現(xiàn)general protection fault。這個(gè)案例印證了VMM開發(fā)的黃金法則寄存器值的任何一處不同步都是系統(tǒng)性崩潰的種子。它不立即爆發(fā)而是在Guest內(nèi)存壓力增大時(shí)悄然引爆。6. 后續(xù)演進(jìn)思考VMM源碼分析的下一步VMM初始化只是冰山一角。接下來我們必須深入三個(gè)更險(xiǎn)峻的領(lǐng)域首先是指令級(jí)虛擬化分析EMR3Exec如何處理in/out端口I/O、cli/sti中斷控制、hlt停機(jī)指令——這些指令在Guest中執(zhí)行時(shí)必須被VMM攔截并模擬否則會(huì)直接關(guān)閉Host CPU。其次是設(shè)備虛擬化PDM框架如何將DevAHCI.cpp中的SATA控制器API通過PDMDevHlp回調(diào)映射到Guest的PCI配置空間讓Guest以為自己真的插著一塊Intel 82801IR SATA Controller。最后是高級(jí)特性實(shí)現(xiàn)如Nested PagingEPT的頁表遍歷算法、APIC虛擬化的中斷注入時(shí)機(jī)、以及VMMGCJIT編譯器如何將Guest的x86指令翻譯為Host的x86-64指令。這些模塊的耦合度極高EM調(diào)度器決定何時(shí)執(zhí)行PDM設(shè)備回調(diào)PDM設(shè)備回調(diào)又可能觸發(fā)CPUM寄存器更新而CPUM更新又影響PGM內(nèi)存管理。因此后續(xù)分析不能再按模塊割裂而必須構(gòu)建一個(gè)跨模塊調(diào)用圖譜用cscope生成CPUMSetGuestCR3的完整調(diào)用鏈標(biāo)注每一層的耗時(shí)與失敗概率。這已不是單純的代碼閱讀而是一場(chǎng)對(duì)x86虛擬化本質(zhì)的考古挖掘——我們挖的不是文物而是CPU硬件與軟件約定之間那層薄如蟬翼、卻堅(jiān)不可摧的信任契約。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日韩成人电影AV| 91碰碰视频| 婷婷五月丁香A∨| 狠狠干狠狠色| 五月丁香五月天现场视频| 超碰在线精品| 婷婷五月天六月| 色婷av| 五月丁香六月在线| 婷婷久久丁香| 久久婷婷丁香六月天| 激情久久伊人| 五月婷丁香| 天天天天天日| 九热精品| 97干在线看| 婷婷丁香五月综合| 狠狠插狠狠插| 天天爽夜夜爽夜夜爽精品视频 | 青青草五月天| 97精品欧美91久久久久久久| 丁香五月天视频| 播五月丁香三月婷婷| 成人丁香色| 欧美黄色一级录像| 密着浓厚中出乚交尾GvG935| 狠狠色狠狠操| 激情六月日韩| 色丁香五月天婷婷| 伊人五月天婷婷| 色噜噜狠狠色综合AV兰草影视| 色色色图| 色五月丁香网| 天天草天天爽| 欧美日韩成人在线| AA片在线观看视频在线播放| 99这里只有精品|v| 欧美激情综合五月色丁香| 91九色精品| 激情四射亚洲| 日笨久久网| 色婷婷狠狠禁18久久| 久久久久亚洲AV成人无码电影| 天天插天天日天天爽| 久久机热探花| 九九热在线99| www.婷婷,com| 久热99热| 综合97五月| 五月丁香啪啪网| 99噜噜| www.97碰碰com| 黄色91在线观看| 婷婷丁香黄色| 性生活视频98791| 五月丁香激| 九九热99视频在线| 婷香五月网在线| 狠狠香婷婷五月| 538午夜激情| 色情五月丁香| 超碰人人操在线| 大香蕉网站,大香蕉综合| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 天天婷婷综合亚洲亚洲| 夜色综合网| 五月婷婷丁香五月 | 日韩AV在线影片| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 99这里有精品| 99无码精品| 六月丁香五月婷婷| 97超级免费无码| 九九激情视频| 狠狠色噜噜狠狠色噜噜噜999| 久久九九re热| 婷婷六月丁香在线| www一区二区三区| 深爱五月网| 亚洲激情另类| 狠狠精品干练久久久无码中文字幕 | 激情综合色婷婷啪啪六月天| 激情六月色| 丁香婷婷性爱| 色婷婷成人色网| 日韩五月婷婷| 99r久久这里只有精品| 九月影院義母在线播放| 在线婷婷| 深爱激情丁香五月| 亚洲成人超碰| WwW色婷婷| jiuse91在线| 99这里有精品视频| 成年人看Va免费视频| 色婷五月| 五月天色区| 亚洲免费综合一区| 久久精彩综合视频| 色婷狠狠| 伊人久久丁香狠狠婷婷综合香蕉| 激情婷婷护士激情| 精品色情一区二区三区四区| 六月丁香婷婷色综合| 五月丁香色五月| 热99在线| 激情人妻蜜夜系列区| 成人午夜视频精品一区| 日韩一级淫乱片一区二区三区| 影院久久久| 色射影院| 久久这里只精品| www.久久| 91久久久久久| www色婷婷com| 1024国产在线| 色播丁香五月婷婷操:屄| 都市激情五月婷婷综合| 天天爽夜夜操| www.婷婷五月.com| 狠狠操.COM| 97资源欧美日韩大香蕉超碰一区| 99热只有| 六月婷婷综合激情| 综合图片色色| 日韩三级视频一区二区| 97久久人人| 99亚洲综合| 这里只有精品视频在线| 99热精品在线观看| 99热这里只有精品268| 色婷婷精品小视频| www超碰| 任你日热视频| www.狠狠操| 色欲一区二区三区精品A片 | 婷婷终合色图| 国产日韩亚洲欧美在线观看| 这里只有精品免费视频| 51精品国内探花| 成人色站,在线视频,看片-SS1AV| 激情网婷婷五月天| 人人操人人看97干| 欧美激情综合五月色丁香| 久久总和99| 操B视频在线播放| 99久久久99久久91熟女| 99久久五月婷婷| 人妻丰满精品一区二区A片| 亚洲久艹| 婷五月天| 182TV大香蕉| 婷婷五月天另类网站| 婷婷五月精品中文字幕| 丁香五月婷中字在线| 99啪啪网| 国产在线中文字幕| 狠狠操综合| 久久五月天网| 草一草avb| 亚洲色色色| 日韩成人影片在线观看| 97色色色色色色色色色色色色色| 久久9视频| 婷婷综合av| 五月在在观看| 综合久久五| 婷婷操逼网| 全部老头和老太XXXXX| 青996青| 99精品视频网| 成人av在线电影| 国产白丝在线一区| 9er热在线精品视频| 五月激情婷婷六月| 9l视频自拍9l视频自拍九色学生| www,av好吊操| 99久久新视频| 欧美人妻一区二区| 深爱开心激情网| 婷婷在线网| 另类综合国产| 涩涩婷婷五月| 99ri在线视频| 六月丁香社区| 亚洲综合视频在线| 99精品偷自拍| 六月丁香VA| 大香蕉伊在| 日韩狠狠色| 99熟女视频| 日韩AV大全| 97丁香花五月天激情小说| 久99久热| 五月天激情在线视频| 99久久婷婷| 在线视频色五月| 精国产品一区二区三区A片| 草榴视频网| www色婷婷| 日日操夜夜爽天天天| 五月天综合婷婷| 激情色中文| 射婷婷中文字幕| 天天色视频| 开心婷婷中文字慕| 色综啪啪啪啪啪啪| 国产精品色色| 开心五月网 | 超碰在线91| 欧美搡BBBBB摔BBBBB| 六月色伊人婷婷| 久久这里只有精品视频15| 日夜夜天天| 人妻中文字幕网| 99精色| 色五月婷婷视频| 色婷婷性爱| 激情综合网色播五月| 欧美噜噜久久久XXX| 99视频精品在线| 婷婷四色成人综合色视| 婷婷六月综合基地| 九九九九操逼| 99热网站| 六月激情综合| 久久性爰视频这里只有精品| 9超碰在线| 五月天婷婷综合网| 91人人网| www.99热这里精品| 夜夜骑日日夜夜| 亚洲色图五月丁香| 婷婷九月丁香中文| 午夜69成人做爰视频| 好吊丝aV| 精品久久99码| 亚州婷婷五月激情综合| 九九re精品视频在线观看| 99久久欧美| 99在线视频女女视频| 中文av网| VA婷婷亚洲| 色99热| 日本V在线观看不卡视频网站| 青草激情在线| 五月丁婷香| 婷婷五月娱乐在线| 性欧美大战久久久久久久83| 婷婷五月丁香在线视频| 奸逼视频| 99热草草| 99综合网| 亚洲乱码日产精品BD| 无码激情AAAAA片-区区| 九九成人电影婷婷| 天天干天天色综合| 丁香五月社区| 天天干 夜夜爽| 五月天婷婷一起草| 婷香五月| 亚洲婷婷久久综合| 大香蕉娱乐| 一级黄在线| 超碰国产在线| 婷婷六月啪啪| 婷婷涩涩五月天| wwwC0maV五月花| 婷婷开心深爱五月天| 少妇AB又爽又紧无码网站| 五月香六月婷| 99热777| 成人精品在线| 色情五月天丁香社区| 五月天婷婷xxx| 五月婷久久综合| 五月天婷a在线| 婷婷五月婷婷| 能看的av网站| 丁香五月成人网| 婷婷丁香激情综合色情| 六月丁香综合网| 成人视频九九| 丁香婷婷综合精品六月初| 色色色色色色色色色影院| 日韩一级一片内射视频4K| 五月丁小婷婷激情四射| 亚洲激情网| 日本色道视频网站| 婷婷五月天色| 色区久久| www.五月丁香| 在线观看中文字幕亚洲| 天天操天天操天天操天天操天天操天天操 | 九九热最新| 色屌丝中文字幕| 丁香五月六月婷婷殴美综合| 26UUU| 激情另类综合| 99久久久国产大片| 丁香八月综合激情| 久久 视频这里只有精总| 99精品在线播放| 91九色精品熟女内射| 97伦乱| 疯狂做受XXXX高潮A片| 婷婷五月色综合| 激情五月天婷婷| 五月花免费视频| 99re热视频这里只精品5| 亚洲 25P| 婷婷深爱五月丁香网| 久久人人看| 婷婷色播婷婷| 五月丁香六月婷婷a v| 9久久精品| 伊人久久艹| 色婷婷天堂| 婷久久| 一起草AV入口| 9 9 9色色| 同性gv国产精品一区二区| 99热最新网址| 亚洲婷婷五月天| 精品人妻伦九区久久AAA片| 欧美婷婷| 一起草aV| 丁香色婷婷| 欧美成人精品A片免费一区99| 高清无码入口| 99riAv1国产在线观看| 激情五月六月婷婷| 九九99免费理论| 深爱激情网噜噜色| 国产AV一区二区三区日韩| 色色色热| 丁香伊人五月色婷婷五十路| 99热这里都是精品| 9l视频自拍九色9l视频自拍九色9l社区 | 国产xxxxx在线观看| 99久久黄色顶级视频| 青青草深爱激情网| 香蕉久久国产AV一区二区| 人人操AV| 97在线视频观看| 天天爽天天操| 综合亚洲AV| 色丁香久久久| ji'qing'luan'ren'lun| 婷婷综合五月天亚洲综合| 九月色婷婷综合| 五月丁香久久激情综合| 五月丁香啪啪网| 天天爱天天狠天天透| 26uuu| 久久久久久久久久91| 99热99ai| 公的粗大挺进了我的密道| 三日本无码| 天天久久综合| 色婷婷四虎| 人人操av| 嫩模草| 无码人妻激情| 婷婷五月天堂| 天天激情站| 国产精品久久99| 婷婷五月综合激情免费| 六月婷婷啪啪| 97午夜一区二区| 看黄的网站18禁| 亚洲欧美999| 色婷婷小说| 婷婷五月无码| 婷婷六月伊人| 亚洲欧美日韩VIP| 久婷婷婷| 婷婷狠狠色| 九九色色| 综合激情五月天| 色丁香五月婷婷| 久久久久久久久月丁| 午夜福利8055| 婷婷干五月综合在线播放| 这里只有精彩视频| 香蕉曰比| 久久久久99精品成人片| 91人人网| 玖玖色资源| 男女久久婷婷五月天| 婷婷丁香五月激情密臀av| 一区二区免费看| 国产精品久久7777777精品无码| 久久金品黃色| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 五月丁香综合啪啪| 亚洲性爱99| 操大屄五月天视频| 丁香五月欧美激情| 久久视频婷婷视频| 五月婷婷六月丁香综合在线| 性色九九| 开心五月丁香婷婷| 人人色人人弄人人操| 国产操逼网站| ss99热| 大香蕉手机视频| 骚五月婷婷| 五月丁香六月激情视频| 蜜桃成语时李时珍 免费| 31色区视频免费看| 狠狠操狠狠操| 久久婷婷五月综合激情国产| 互月天综合| 久久小说网| 精品色情一区二区三区四区| 亚洲成人在线五月天| 激情五月天婷婷| 性天堂久久| 天堂久久婷婷| 97干97色| 欧美一级色| 婷婷九月激情网| 性生生活大片又黄又| 青青草tp| 五月亭亭开心网| 色综天天综合| 亚洲午夜在线视频| 色综合久久无码| 久久精彩视频99| 婷婷五月欧美综合| 国产性色蜜乳| 婷婷丁香五月天亚洲| 丁香五月婷久久| 五月丁香花婷婷玉莉AV| 99偷拍视频在线日本| 婷婷五月天亚洲综合网| 91成人电影| 五月丁香亭亭激情操逼网| 天天干com| 综合xx网| 99小视频| 大香蕉中文| 91无码一起草| seuuu婷婷| 久久久婷| 激情深爱五月天| 婷婷性色| 伊人色五月| 色色五月天婷婷| 十月丁香婷婷| 日韩欧美婷婷丁| 色六月婷婷| 丁香婷婷五月天网站| 日韩在线一级| 久久久久综合激动五月天| 9+1视频网址| 色日本网| 激情五月婷婷综合| 综合狠久久| 超碰com| 婷婷另类开心| 欧美性交一区二区三区| 玖玖资源站中文| 99热99网| 亚洲精品成人片在线播| 五月天六月色| 色激情综合狠狠婷婷| 色情五月天视频网| 99情色五月天| 亚洲成人五月天| 狠狠狠狠狠草| 九九色热| 久久99日本精品视频免费观看| 久久久精品色| 99热思思在线观看| 婷婷色吧| 婷婷综合中文| 亚洲欧美成人在线| 人人操AV| 欧美久人人| 欧美成人猛片AAAAAAA| 六月丁香网| 爱久综合| 精品一区二区三区四区五区六区 | 亚洲AV网址| 超碰精品在线| 日本九九九九九九| www免费在线视频| 久9热在线视频| 日本欧美国产| 亚洲五月丁香综合网| 丁香六月综合激情| 天天搞天天爽| 99ri在线视频| 狠狠操狠狠操AV| 亚洲精99| 婷婷六月丁香在线| www.五月天色色.com| 99综合| 五月天色丁香| 噜噜色噜噜网| 操逼在线视频| 成人视频九九| 99久在线精品99re8热| 99在线观看视频| 色婷婷婷婷五月天| 99热99热| 色综合久久伊伊婷婷五月| 色婷婷av综合网| 久久亚洲色导航| 免费AV在线网址| 久久一级AV| 99热在线播放| 婷婷色中文字幕| 欧美精产国品一二三区| 五月丁香婷中文字幕| 91碰超| 亚洲操B视频| 婷香狠狠爱五月| 九九久99免费视频| 千人斩操逼| 五月婷婷六月基地| 中文字幕成人| 午夜丁香 婷婷| 色五月 激情婷婷 综合五月天| 五月丁香综合啪啪啪啪啪| 六月丁香婷婷五月天| 伊人久久婷婷| 综合欧美五月婷婷| 在线另类视频| 99情色五月天| 五月天开心色情网| 黄网在线免费观看| 九九色之九九色之88| 91精品无码久久久久久五月天| 日韩国产在线免费观看| 亚州色色色| 亚洲婷婷五月天激情| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 超碰A V在线| 精品视频网| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 伊人五月天97| 久久精品噜噜噜成人A∨色欲| 开心激情婷婷| 日产精品一线二线三线芒果| 殴美日比视频| 激情綜合W W W,激情五月天| 99热97| 五月天激情小说婷婷基地| 色婷操逼| 日韩五月婷婷| 99热成人在线观看| 婷五月天| 色丁香五月婷婷| 日日夜夜天天综合| 日韩一区二区A片免费观看 | 东北熟女视频99| 色婷婷五月成人网| 超碰在线视屏| 99热大全在线观看| 米奇影视五月天| 在线99色| 另类视频一区| 一个色的综合| 色综合另类| 丁香蜜臀黄色婷婷五月天| 婷婷五月天另类网站| 五月天色色网站| 五月色情婷婷| 五月丁香六月婷婷姐| 在线观看中文字幕| 99热久只有精品首页| 丁香六月婷婷色XXXXX| 综合激情视频| 色五月成人婷婷| 五月激情小说| 丰满人妻一区三区三区| 激情综合网址| ay2区| 996热re视频精品视频| yw国产AV| 色色射| 18久久| 五月婷婷综合潮喷| 日韩精品一品二区三区的使用体验 | 亚洲av另类在线观看| 激情欧美婷婷| 久热久| 丁香九月综合| 国产高清av黄色看片| 日本色婷婷| 99热97| 欧美综合激情五月| 色婷婷色和| 五月婷视频| 开心五月婷婷五月| 五月丁香婷婷色啪| 亚洲色频| 五月五婷婷网| 五月婷视频在线观看| 五月婷免费视频久久久| 六月婷婷综合| 色五月色五天色情网| 日本九九九九| 婷婷激情五月综合基地| 五月天婷婷基地| 色播丁香婷婷五月激情| 极品人妻VIDEOSSS人妻| 久久婷婷网| www.zbzhongsen.com| www.色综合| 婷综合六月| 久99综合婷婷| 激情五月视频在线婷婷| 丁香婷婷视频| 国产午夜伦鲁鲁| 五月丁香综合| 婷婷五月六月丁香| 五月丁香六月激情综合在线| 一本综合丁香日日狠狠色| 婷婷丁香五月综合网上| 久久最新色| 亚洲色无码A片一区二区麻豆| 色色欧美色色色| 亚洲五月天综合色| 天天射美女| 国产黄色av| 玖热精品综合视频| 97碰在线视频| 久久综合婷婷五月| 久久婷婷六月综合综合色| 婷婷久久五月天丁香| www.婷婷五月| 五月丁香大相交| 五月婷婷丁香大陆免费| 久久深爱激情网| 大香蕉婷婷五月天| 九九99热久久精品66中文字幕| xxxx五月| a久久| 久综合色| 六月婷久久| 激情啪啪五月| 狠狠狠狠狠狠| 五月丁香婷婷啪啪综合| 天天操天天爽天天爱| 狠狠草综合网| 欧美槡BBBB槡BBB少妇| 在线超碰91| WWW.五月com| 婷婷天堂综合| 天天操天天插| 激情五月天伊人影院| 婷婷五月电影院| 日韩淑女人妻luan伦激情精品一区二| 国产婷伊人| 91色婷婷综合久久中文字幕二区| 丁香六月成人| 五月丁香六月合| 丁香五月天天| 久思思久视频| 开心亚洲久久开心| 久久66er久久| 色婷婷五月天视频在线| 亚洲综合另类| 婷婷瑟五月天久久综合| 我爱大香蕉| 级情九色| 极品少妇XXXX精品少妇偷拍| 久操激情| 激情五月天综合| aaa久久| 婷婷丁香六月| 亚洲综合五月天婷婷丁香| 天天婷婷| 色五月天丁香婷婷| 九九色色| 激情五月丁香在线观看直播| 99性视频| 色五月婷婷在线视频| 日韩九区| 狠狠干2007| 激情综合丁香六| 华人在线免费| 婷婷的99视频网站| 五月综合久久| 亚洲另类久久| 久久综合婷| 国产超碰在线| 久久婷婷五月综合色播| 99精品在线| 99爱免费视频| 五月丁香网站| 91热爆在线| WWW丁香五月| 丁香伊人五月色婷婷五十路| 狠狠干伊人| 色婷婷文字幕| 99在线精品视频| 亚洲人妻五月丁香婷婷| 91夫妻网站九色| 色婷婷久久综合中文久久一本| 久久这里只有精品视频15 | 一本大道嫩草AV无码专区| 婷婷五月丁香基地在线视频官网| 久久性视频| 婷婷丁香综合| 色久女| 激情视频网址| 亚洲日比视频| 精品九九在线观看视频| 日本97在线视频| 色色综合成人网| 欧美成人五月天| 五月久久婷婷天堂视频| 99无码视频| 九九激情| 亚洲激情四谢| 五月丁香六月玩女人| 欧美婷婷色五月网| 五月婷婷色| 色亚洲欧洲| 婷婷五月天激情文学小说| 天天日天天插| www,色婷婷| 欧美激情凹凸丁香网| 婷婷五月色影视先锋| 韩国中文字幕91| 国产高清av黄色看片| 激情久久久| 另类婷婷五月天啪帕帕| 超级碰碰碰久久网站视频| 9久热在线视频| 五月丁香婷婷啪啪| 天天摸色吧天天摸色吧| 婷色五月天| 国产亚洲精品AAAAAAA片| 亚洲综合色网| 精品久久婷婷| 六月婷婷网站| 婷婷五月花西瓜| 激情www| www色综合亚洲92| 激情综合女人网五月播播| 天天狠狠婷婷在线| 99精品综合| 九月丁香八月婷婷加勒比| 不卡在线视频| 日本三级色| 日韩精品色| 五月综合视频| 91免费啪视频| 天天久久综合| 久久曰曰| 久久激情视频| 99热偷拍| 91艹人| 激情五月丁香综合网站| 成人五月丁香社区| 色婷婷丁香社综合| 狠色狠色综合久久| 婷婷久月| 色射影院| 日日夜夜天天| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 九九精品免费视频99| 男人的天堂在线婷婷| 婷婷九月狠狠色| 五月婷婷六月少妇激情| 九九99免费理论| 97五月天婷婷综合激情网| 激情欧美婷婷| 97色婷| 9l视频自拍9l九色成人| 99久久婷婷五月天| 俺也去五月婷婷丁| 婷婷五月天成人影片| 丁香婷婷六月男男| 丁香五月WWW| 99热日韩| 91视频综合网| 91九色欧美| 九伊人网| 99久久久免费| 激情五月婷婷综合| 久色资源| 丁香五月瑟瑟| 国产真人做爰视频免费| 182TV大香蕉| 狼人狠狠操| 丁香五月性| 欧美日韩aaa| 日日爽日日操| co超碰在线观看| 99热精国产这里只有精品| 婷婷久久五月| 九九热这里只有精品首页| 色导航色婷婷五月天在线观看| 色色国产| 亚洲麻豆乱码国产2028| 天天色综网| 五月综合婷婷网| 日本V在线观看不卡视频网站| 色欲天天综合网| 婷婷五月天久久久| 丁香婷婷六月激情综合| 日韩色色视频| 九九热这里只有精品一| 97人妻碰碰中文无码久热丝袜| 91九色欧美| 深爱综合网| 九九色中文| 丰满人妻一区二区三区| 91丨九色丨43老版熟女| 黄色五月婷婷| 成人va在线观看视频| 99在线视频精品| 色婷婷五月天天天天天| 亚洲综合在线视频| 色九月激情综合网| 久久婷婷草| 大香网伊人久久综合| 色五月婷婷青娱乐| 97天堂| www.五月天社区| 色婷婷a| 亚洲中字AV电影在线网站| 开心丁五月| 激情第四色| 99在线精品视频| 激情久久四色| 久久免费丁香| 性无码专区无码| 色综合色综合色综合色综合| 五月婷婷综合性爱噜噜| 99热精品中文字幕| 99热永久在线观看| 日本九九网| 中国丰满熟女A片免费观| 久久这里只有国产| 狠狠色丁香婷婷五月| 思思热视频| 激情久久久| 激情婷婷综合网| 9999久久久久| 国产成人va在线| 色五月首页| 久久久五月天婷婷成人网| 精品福利911| 妇激情基地| 微拍92| 青青草视频免费观看| 婷婷丁香久久五月综合| 99这里都是精品6| 久久6这里只有精品| 91日在线视频| 深爱激情五月网| 久久婷五月综合| 激情五月色综合国产精品| 色色婷婷综合| 九九操操| 激情六月丁| 99热这里只有精品69| 久久国产高清| 五月婷婷色在线| 中文AV网站| 爱操人妻| 久婷五月| 五月丁香激情婷婷| 综合图区激情| 欧美色播综合在线观看| 51XX嘿嘿午夜无码| 99热超碰| 久久这里只有精品热在99| 伊人综合网4| www.sd-xiangsu.cpm| 亚洲综合视频八| 色色亚洲| 中文字幕按摩做爰| 婷婷狠狠操| 丁香五月婷婷啪啪啪| 青青热久久综合| 久婷| 97日日碰碰| 婷婷五月综合丁香久久| 亚洲操b| 五月婷天天搞视频| 三区激情四射av| 色丁香五月天射婷婷爱婷婷| 99久久喉9| 9l视频自拍9l九色成人| 国产片色| 天天天天天天天操| 五月激情婷婷播播网| 久久久久激情| -91九色大屁股| ww久久| 97成人丁香婷婷| 天天日天天添| 久久人妻乱子伦| 99热这里只有精品2016| 97久人人| 五月婷婷啪啪网| 另类A片| 大香蕉手机视频| 日本色噜| 狠狠另类视频| www.狠狠干com| 成年AAAA色情| 丁香婷婷五月天校园春色| 日韩伊人大香蕉| 色播五月综合网| 国产精典视频在线观看| 精品九九久久| 丁香五月开心亚洲| 狠狠大香婷婷爱| 久久er九九| 五月婷婷深爱六月| 欧美va在线观看| 99九九在线| 熟女人妻一区二区三区免费看| 啪啪 综合网| 色色色色综合网| 日本人妻伦在线中文字幕| 五月丁香六月婷| 九九热精品在线| chaopengdaxiangjiao| www.99热视频| 丁香五月综合网| 久热精品在看| 丁香五月花婷婷开心| 伊人三级激情| 97人人射| 婷婷综合色五月天| 超碰a女人的天堂| 婷色五月| www.夜夜爱.com| 色婷婷五月影院| WWW,激情五月天,COM| 狼人狠狠操| 久久婷婷五月综合激情国产| 久久永久网址| 9999热精品在线免费播放| 激情五月天丁香| 天天色色婷婷| 成人在线网| 五月天综合色| 欧美高潮9| 狠狠艹狠狠艹| 女高怪谈在线观看| www婷婷| 丁香婷婷五月激情四射网| 青青草青青草五月天| 婷婷五月性感| 久久东京热婷婷五月| 国产免费AV网站| 国产寻花在线| 99热大香蕉| av五月天婷婷丁香| 97超碰人人操| 99热这里只有精品3| 涩五月色婷婷| 密乳Va| 婷婷成人在线| 狠狠爱五月婷婷| 久久五月婷天天干| AV在线资源| 色五月激情五月| 性一交一乱一交A片久| 激情婷婷丁香五月| www.色综合| 99re这里只有精品视频了| 丁香五月最新地址| 国产熟妇乱子伦hd| 91无码高清| 婷婷丁香亚洲五月天| 五月婷婷丁香大陆免费| a69在线视频| 色99自拍| 亚洲AV无码成人精品区电影网| 日韩高清久久| 天天色综合网吨吧| 成人国产欧美大片一区| 91碰人人| www,色中色| 涩五月婷婷| 丁香九月久久| 成年人丁香五月| 99热这里都是精品| 色婷精品91| 久久99性爱| 婷婷九月丁香中文| 天堂AV在线看| 婷婷五月天VI| 色婷婷丁香五月色综合网| 丁香婷婷91在线观看视频| 少妇AB又爽又紧无码网站| 91精品综合久久久五月天| 五月婷婷色播视频| 色狠狠色| 超碰人人艹| 色在线99| 久99久精品视频| 可以看的AV网站| 人碰91| 五月婷婷免费看| ww久久| 久久伦乱| 九色91视频| AV在线免费网站| 久久久91| 欧洲毛片基地c区| 天天插天天插天天插天天插| 99热这里只有精品66| 丁香五月激情啪啪综合| 黄色大片又大粗又爽| 天天激情| 大天天伊人| 久色大| www.五月婷婷久久.com| 久久66精品| 色www久视频| 99综合免费视频| 97超级啪啪在线观看| 激情com| 九九这里只有精品| ss99热| 中文字幕操比影片| 五月婷婷六月情| 激情啪啪五月| 99热这里只有精品55| 成人AV网站在线| 色婷婷激情四射视频| 日韩天堂久久| 六月丁丁香| 97色婷婷| 中文字幕日产A片在线看| 婷婷六月激情小说网| 俺去也婷婷| 九月丁香婷婷| 女人高潮内射99精品| 这里只有精品视频222| 夜夜谢天天干| 国产色香蕉精品五夜婷| 5月婷婷激情在线| 91日韩美女被插视频| 色五婷婷开心缴| 色99在线视频| 婷婷啪啪| 99爱视频在线观看这里只有精品| 777精品久无码人妻蜜桃| 99热都是精品| 超碰人人摸人人操| 26uuu精品一区二区| 日本99婷婷| 九九热这里| 97色婷婷五月天| 超碰人人射| 久久探花91swag| 久久久五月天| 色性五月天| 国产成人综合网| 丁香婷婷影院| 99热97| 九九视频在线观看| 丁香五月激情天AV无码| 日日日日日| 七七九色| AV天堂婷婷五月天| 色色五月婷| 大香蕉啪啪啪啪啪啪| 色色无码| 天天日狠狠| 日韩色久| 亚洲电影在线观看| 欧美在线97| 深爱五月天天| www.超碰| 曰本aaaaaa丈片| 国产精品国产成人国产三级| 天天操中文字幕| 91色综合久久| 丁香五月电影| 79精品视频在线观看,| 影音先锋91资源站| AV成人在线网站| 天天射美女| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 人与禽A片啪啪| 噜噜色噜噜网| 久久综合这里只有精品1 | 婷婷成人五月天一区| 婷婷六月色| 色五婷婷| 91色久| 色婷婷激情视频| 少妇被躁爽到高潮无码文| 日韩久久这里只有精品| 久操香蕉| 婷婷大香蕉| 97干在线| 亚洲色色色| 欧美丁香五月| renre人人操国产超碰在线| 操B无码视频国语| 国产在这里只有精品| 新激情五月天色播| 色久婷婷五月| 亚洲五月婷| 激情五月色综合网| 婷婷五月激情五月丁香五月| 九色七七| 亭亭玉月丁香| 色婷婷丁香五月天| 日韩人妻操逼视频| 五月天激情网址| 婷婷六月综合基地| 色色色色区| 97色精品视频| 久久艹 五月天| 日韩一级片| 激情色色| 国产成人网址| 丁香五月电影| 日韩操逼大片| 久久停停超碰| 久婷五月| 色婷婷天堂| 激情五月婷婷在线观看| 久热这里只有精品在线观看 | 99综合网| 婷婷丁香小说| 久久精热| 成人开心五月天| 激情com| 亚洲狠狠婷婷综合久久久| 激情 婷婷| 国内一级精品| 日本成人综合| 亚洲色综合| 黄色片精品| 怡红院 久久| 精品99在线| 人妻性操逼中文字幕 国产| 热99久| 啪啪黄页网| 久久亚洲婷婷| 九九亚洲视频| 狠狠另类视频| 99色色最新视频| 五月婷婷丁香在线| 婷婷五月天开心网| 综合AV在线| 久久女婷| 亚洲第一成人无码A片| 久久久这里有精品| 婷婷在线播放| 99精品偷自拍| 五月开心播播网| 一区二区三区四区牛| 成人丁香五月天| 国产偷人爽久久久久久老妇APP| 婷婷另类小说| www久久久久久久久久久| 大香蕉综合| 日日操夜夜擼| Caop在线| 久久婷五月| 亚洲精品性色| 五月婷婷婷婷| 97色色色色色| 天天干在线播放| 丁香五月婷婷亚洲激情四射| 色九月综合| 欧美啪啪五月天| site:pzdcoin.com| 天天操,天天插| 婷婷五月综合网| 免费看欧美成人A片无码| 日韩999| 九九精品re免费视频| 色五月综合激情网| 成人版视频在线观看| 婷婷大香焦| 五月婷婷丁香啪啪| 久久五月天激情婷婷| 秋霞电影一级黄| 国产另类综合| 99热在线观看精品| 色色色色色色综合网| 超碰99热精品在线| 五月婷婷综合久久| 丁香五月天激情综合网| 久99热| 久久综合九九| 亚洲电影中文字幕| 超碰chaompinm| 这里精品| 六月婷婷综合| 婷婷成人在线| 思思久久96热在精品国产,| 女人天堂av| 久久精品五月天| 无码激情AAAAA片-区区| 天堂美国久久| 欧美狠狠草| 狠狠干五月天| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 欧美成人A片AAA片在线播放| 亚洲性爱日韩无码| 色五月婷婷操逼| 青青久在线视频免费观看| 精品婷婷丁香五| 婷婷99狠狠躁天天躁| www色婷婷久久综合久色 | 99色热视频在线| 成人在线观看精品| 伊人干综合| 久狠狠| 免费无码毛片一区二区A片| 九九综合九色欧美狠狠| 色情五月综合婷婷| 亚洲乱码日产精品BD| 东京热人妻一区二区三区在线| 色综合久久综合| 色综合日日| 香蕉综合网| 亚洲在线资源| 欧美婷婷五月丁香| 第四色激情网| 日日操夜夜操无码免费| 九九99免费视频| 五月丁香综合影院| 99色在线观看视频者| 另类视在线| 天天草婷婷五月| www五月| 九月激情婷婷丁香| 九九色色网| 婷婷噜噜| 99热精品在线观看| 在线观看996精品| 日日爱激情| 五月婷婷 婷婷五月 一区二区 久久久| www色婷婷久久综合久色| 麻豆123区| 免费观看全黄做爰的视频| 久久在线92| 26uuu亚洲| 激情婷婷网| 丁香五月23111| 国产又爽又猛又粗的视频A片| 狠狠色噜噜狠狠亚洲A∨| 99久久99九九99九九九| 五月天婷婷黄色| 99热10在线高清播放| 五月天综合网| 久久婷丁香五月| 99草在线免费观看视频| 99碰碰| 激情第四色| www.狠狠干| 爱久久小说下载网| 久热这里只有精品在线|