亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

Linux 內(nèi)核中斷處理實(shí)戰(zhàn):以 21285 串口驅(qū)動為例,走通 request_irq 到 do_IRQ 的完整鏈路

Linux 內(nèi)核中斷處理實(shí)戰(zhàn):以 21285 串口驅(qū)動為例,走通 request_irq 到 do_IRQ 的完整鏈路 文檔教程操作系統(tǒng)【免費(fèi)下載鏈接】linux-insidesA book-in-progress about the Linux kernel and its insides.項(xiàng)目地址https://gitcode.com/gh_mirrors/li/linux-insides點(diǎn)擊查看免費(fèi)下載本文是 linux-insides 倉庫 Interrupts 章節(jié) 收尾篇原文檔的技術(shù)詳解。前面九部分依次覆蓋了中斷理論、早期中斷門、異常處理、外部硬件中斷初始化以及 softirq/tasklet/workqueue 等延遲中斷機(jī)制本篇則將視線落到一個(gè)真實(shí)硬件驅(qū)動——StrongARM SA-110/21285 評估板串口驅(qū)動drivers/tty/serial/21285.c上完整追蹤驅(qū)動如何注冊中斷處理函數(shù)、中斷號如何映射、中斷到來后內(nèi)核如何一路分發(fā)到驅(qū)動回調(diào)、最后如何退出中斷上下文的整條調(diào)用鏈。讀完本篇你將掌握request_irq的五個(gè)參數(shù)語義與底層request_threaded_irq實(shí)現(xiàn)、IRQ 號到irq_desc的轉(zhuǎn)換、x86 上從irq_entries_start匯編入口到do_IRQ再到generic_handle_irq_desc的分發(fā)路徑以及ret_from_intr返回用戶態(tài)/內(nèi)核態(tài)時(shí)的收尾細(xì)節(jié)。章節(jié)定位為什么用串口驅(qū)動收官本部分之前的 linux-interrupts-9.md 已經(jīng)介紹過延遲中斷的概念中斷處理要求快但有時(shí)又要做大量工作因此被拆成 top half主處理程序與 bottom half延遲處理內(nèi)核提供softirq、tasklet、workqueue三類延遲機(jī)制。本章要回答的最后一個(gè)問題是這些機(jī)制最終服務(wù)的對象——真實(shí)的設(shè)備驅(qū)動是如何與中斷子系統(tǒng)對接的串口UART驅(qū)動是一個(gè)理想的示例它只有兩根數(shù)據(jù)線RX接收、TX發(fā)送中斷模型簡單清晰且驅(qū)動源碼短小完整。原文檔選取的是 StrongARM SA-110/21285 評估板的串口驅(qū)動源碼位于內(nèi)核樹drivers/tty/serial/21285.c。本文將沿該驅(qū)動的生命周期展開初始化 → 打開端口時(shí)請求 IRQ → 中斷觸發(fā)后的分發(fā) → 中斷退出四段式走完一次硬件中斷的完整旅程。驅(qū)動初始化module_init 與 module_exit 的兩種形態(tài)與本書此前介紹新概念的方式一致分析驅(qū)動同樣從初始化入口開始。Linux 內(nèi)核為驅(qū)動/內(nèi)核模塊的初始化和卸載提供了兩個(gè)宏module_init—— 模塊加載時(shí)執(zhí)行的初始化函數(shù)module_exit—— 模塊卸載時(shí)執(zhí)行的清理函數(shù)。在 21285 驅(qū)動中可以看到它們的典型用法module_init(serial21285_init); module_exit(serial21285_exit);絕大多數(shù)設(shè)備驅(qū)動既可以編譯為可加載內(nèi)核模塊loadable kernel module也可以靜態(tài)鏈接進(jìn)內(nèi)核。這兩種形態(tài)下宏的定義完全不同。當(dāng)驅(qū)動作為可加載模塊時(shí)module_init/module_exit宏定義在include/linux/init.h中#define module_init(initfn) \ static inline initcall_t __inittest(void) \ { return initfn; } \ int init_module(void) __attribute__((alias(#initfn))); #define module_exit(exitfn) \ static inline exitcall_t __exittest(void) \ { return exitfn; } \ void cleanup_module(void) __attribute__((alias(#exitfn)));這里用 GCC 的alias屬性把init_module/cleanup_module這兩個(gè)內(nèi)核約定的導(dǎo)出符號別名到驅(qū)動自定義函數(shù)上隨后由內(nèi)核的 initcall 機(jī)制在合適的階段調(diào)用。initcall 機(jī)制本身在本書 Concepts/linux-cpu-3.mdThe initcall mechanism中有專門論述其調(diào)用層級按初始化時(shí)機(jī)從早到晚排列early_initcallpure_initcallcore_initcallpostcore_initcallarch_initcallsubsys_initcallfs_initcallrootfs_initcalldevice_initcalllate_initcall這些 initcall 統(tǒng)一由init/main.c中的do_initcalls依次執(zhí)行。模塊方式的實(shí)際加載代碼位于kernel/module.c初始化發(fā)生在do_init_module函數(shù)中。當(dāng)驅(qū)動靜態(tài)鏈接進(jìn)內(nèi)核時(shí)宏退化為最簡單的形式#define module_init(x) __initcall(x); #define module_exit(x) __exitcall(x);serial21285_init注冊 uart 驅(qū)動并掛載端口回到我們的serial21285_init函數(shù)從函數(shù)名即可看出它與驅(qū)動初始化有關(guān)static int __init serial21285_init(void) { int ret; printk(KERN_INFO Serial: 21285 driver\n); serial21285_setup_ports(); ret uart_register_driver(serial21285_reg); if (ret 0) uart_add_one_port(serial21285_reg, serial21285_port); return ret; }初始化流程分三步打印驅(qū)動信息printk(KERN_INFO Serial: 21285 driver\n)向內(nèi)核緩沖區(qū)輸出一條Serial: 21285 driver日志。設(shè)置端口基礎(chǔ)時(shí)鐘調(diào)用serial21285_setup_ports把板級外設(shè)時(shí)鐘換算成 UART 波特率計(jì)算所需的 uartclkunsigned int mem_fclk_21285 50000000; static void serial21285_setup_ports(void) { serial21285_port.uartclk mem_fclk_21285 / 4; }mem_fclk_21285是板上 50MHz 內(nèi)存總線時(shí)鐘UART 時(shí)鐘取其四分之一12.5MHz。 3.注冊 uart 驅(qū)動并附加端口uart_register_driver(serial21285_reg)把描述驅(qū)動的uart_driver結(jié)構(gòu)注冊進(jìn)串口核心注冊成功返回 0后再用uart_add_one_port來自drivers/tty/serial/serial_core.c把具體的serial21285_port端口附加到該驅(qū)動名下。serial21285_reg是描述該 uart 驅(qū)動的核心結(jié)構(gòu)static struct uart_driver serial21285_reg { .owner THIS_MODULE, .driver_name ttyFB, .dev_name ttyFB, .major SERIAL_21285_MAJOR, .minor SERIAL_21285_MINOR, .nr 1, .cons SERIAL_21285_CONSOLE, };其中driver_name/dev_name為ttyFB表示該驅(qū)動對應(yīng)的設(shè)備節(jié)點(diǎn)形如/dev/ttyFB0major/minor指定設(shè)備號nr 1表示只管理一個(gè)端口cons指向控制臺相關(guān)配置。打開端口與請求 IRQserial21285_startup當(dāng)一個(gè) UART 端口被打開時(shí)串口核心層的uart_open同樣在drivers/tty/serial/serial_core.c會調(diào)用uart_startup啟動串口進(jìn)而調(diào)用每個(gè) uart 驅(qū)動都必須實(shí)現(xiàn)的uart_ops結(jié)構(gòu)中的startup回調(diào)。21285 驅(qū)動的uart_ops定義如下static struct uart_ops serial21285_ops { ... .startup serial21285_startup, ... }serial21285_startup是本篇與中斷主題最相關(guān)的一段代碼static int serial21285_startup(struct uart_port *port) { int ret; tx_enabled(port) 1; rx_enabled(port) 1; ret request_irq(IRQ_CONRX, serial21285_rx_chars, 0, serial21285_name, port); if (ret 0) { ret request_irq(IRQ_CONTX, serial21285_tx_chars, 0, serial21285_name, port); if (ret) free_irq(IRQ_CONRX, port); } return ret; }先說TX/RX串行總線只有兩根線一根發(fā)送TX、一根接收RX所以串口設(shè)備有兩個(gè)串行引腳。開頭兩個(gè)宏tx_enabled/rx_enabled就是使能這兩根線的收發(fā)能力。接下來是重點(diǎn)——兩次request_irq調(diào)用。該函數(shù)注冊一個(gè)中斷處理函數(shù)并啟用一條中斷線聲明在include/linux/interrupt.hstatic inline int __must_check request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, const char *name, void *dev) { return request_threaded_irq(irq, handler, NULL, flags, name, dev); }request_irq 的五個(gè)參數(shù)參數(shù)含義本例取值irq請求的中斷號IRQ_CONRX/IRQ_CONTXhandler中斷處理函數(shù)指針serial21285_rx_chars/serial21285_tx_charsflags中斷標(biāo)志位掩碼0name中斷擁有者名稱顯示在/proc/interruptsFootbridge UARTdev共享中斷線時(shí)用于區(qū)分的設(shè)備指針portuart_port 結(jié)構(gòu)指針中斷號從哪來IRQ_CONRX / IRQ_CONTX兩次request_irq分別注冊接收中斷IRQ_CONRX和發(fā)送中斷IRQ_CONTX。這兩個(gè)宏定義在 21285 板的平臺頭文件arch/arm/mach-footbridge/include/mach/irqs.h中#define IRQ_CONRX _DC21285_IRQ(0) #define IRQ_CONTX _DC21285_IRQ(1) ... ... ... #define _DC21285_IRQ(x) (16 (x))該板上的 ISA IRQ 編號從 0 到 15因此 21285 板自定義中斷從 16 起算IRQ_CONRX 16、IRQ_CONTX 17。也就是說串口驅(qū)動實(shí)際注冊的是 16、17 號兩條中斷線。標(biāo)志位與名稱兩個(gè)請求的flags均為 0等價(jià)于IRQF_TRIGGER_NONE不指定任何邊沿/電平觸發(fā)行為觸發(fā)方式通常由硬件或中斷控制器配置決定。include/linux/interrupt.h中定義的全部合法標(biāo)志以IRQF_*開頭常用者包括IRQF_SHARED—— 允許多個(gè)設(shè)備共享該中斷線IRQF_PERCPU—— 中斷是 per-CPU 的IRQF_NO_THREAD—— 該中斷不能被線程化IRQF_NOBALANCING—— 將該中斷排除在 irq 均衡之外IRQF_IRQPOLL—— 中斷用于輪詢等等。第四參數(shù)serial21285_name定義為static const char serial21285_name[] Footbridge UART;它會作為中斷所有者名稱顯示在/proc/interrupts的輸出中。最后一參數(shù)傳入port指針在共享中斷線時(shí)用于區(qū)分究竟是哪個(gè)設(shè)備觸發(fā)了中斷。深入 request_threaded_irq注冊一條中斷線的底層邏輯request_irq只是一個(gè)內(nèi)聯(lián)包裝真正干活的是kernel/irq/manage.c中的request_threaded_irq。它的簽名比request_irq多了一個(gè)thread_fn參數(shù)int request_threaded_irq(unsigned int irq, irq_handler_t handler, irq_handler_t thread_fn, unsigned long irqflags, const char *devname, void *dev_id) { struct irqaction *action; struct irq_desc *desc; int retval; ... ... ... }本章此前已經(jīng)介紹過兩個(gè)核心結(jié)構(gòu)irqaction表示每個(gè)中斷上的動作描述符包含中斷處理函數(shù)指針、設(shè)備名、中斷號等字段irq_desc表示中斷描述符是中斷管理代碼的基石內(nèi)含指向irqaction的指針、中斷標(biāo)志等。更多關(guān)于irq_desc初始化early_irq_init、init_IRQ與vector_irq的填充的內(nèi)容可回看 linux-interrupts-8.md。注意request_irq調(diào)用request_threaded_irq時(shí)傳入的thread_fn為NULL。如果thread_fn非空內(nèi)核會創(chuàng)建名為irq/n-name的內(nèi)核線程把處理函數(shù)放到線程上下文執(zhí)行即中斷線程化。參數(shù)合法性檢查函數(shù)開頭做了一系列校驗(yàn)任何一項(xiàng)不滿足都返回-EINVALif (((irqflags IRQF_SHARED) !dev_id) || (!(irqflags IRQF_SHARED) (irqflags IRQF_COND_SUSPEND)) || ((irqflags IRQF_NO_SUSPEND) (irqflags IRQF_COND_SUSPEND))) return -EINVAL;共享中斷必須提供真實(shí)的dev_idIRQF_COND_SUSPEND只在共享中斷時(shí)才有意義IRQF_NO_SUSPEND與IRQF_COND_SUSPEND不能同時(shí)出現(xiàn)。中斷號 → irq_desc 的轉(zhuǎn)換隨后用irq_to_desc定義于kernel/irq/irqdesc.c把中斷號轉(zhuǎn)換成中斷描述符desc irq_to_desc(irq); if (!desc) return -EINVAL;struct irq_desc *irq_to_desc(unsigned int irq) { return (irq NR_IRQS) ? irq_desc irq : NULL; }即校驗(yàn)中斷號小于NR_IRQS然后以中斷號為偏移量從全局irq_desc數(shù)組取出對應(yīng)描述符。接下來繼續(xù)校驗(yàn)該描述符是否允許請求、以及是否為 per-CPU devidif (!irq_settings_can_request(desc) || WARN_ON(irq_settings_is_per_cpu_devid(desc))) return -EINVAL;handler 缺省與 irqaction 分配如果調(diào)用者沒有傳handler只傳了thread_fn則退化為使用默認(rèn)的主處理函數(shù)irq_default_primary_handlerif (!handler) { if (!thread_fn) return -EINVAL; handler irq_default_primary_handler; }隨后用kzalloc為零初始化方式分配struct irqaction失敗則返回-ENOMEMkzalloc的細(xì)節(jié)屬于內(nèi)存管理章節(jié)范疇action kzalloc(sizeof(struct irqaction), GFP_KERNEL); if (!action) return -ENOMEM;填充 irqaction 并調(diào)用 __setup_irq分配成功后依次填入各字段action-handler handler; action-thread_fn thread_fn; action-flags irqflags; action-name devname; action-dev_id dev_id;最后在chip_bus_lock與chip_bus_sync_unlock的包裹下調(diào)用__setup_irq真正注冊該 irqaction這兩個(gè)鎖用于保護(hù) i2c 等慢速總線上芯片的寄存器訪問chip_bus_lock(desc); retval __setup_irq(irq, desc, action); chip_bus_sync_unlock(desc); if (retval) kfree(action); return retval;__setup_irq 內(nèi)部線程創(chuàng)建與描述符填充__setup_irq開頭做若干檢查中斷描述符非空、irqchip 非空、描述符模塊 owner 非空如果中斷嵌套在另一個(gè)中斷線程中則把主處理函數(shù)替換為irq_nested_primary_handler。對于非嵌套且提供了thread_fn的中斷用kthread_create創(chuàng)建中斷線程if (new-thread_fn !nested) { struct task_struct *t; t kthread_create(irq_thread, new, irq/%d-%s, irq, new-name); ... }線程名形如irq/16-Footbridge UART。至此16、17 號兩條中斷線注冊完畢之后一旦中斷控制器產(chǎn)生相關(guān)事件serial21285_rx_chars與serial21285_tx_chars就會被調(diào)用。中斷發(fā)生時(shí)從向量到 do_IRQ 的分發(fā)路徑中斷門的建立native_init_IRQ 與 irq_entries_start上一節(jié)完成了驅(qū)動側(cè)注冊本節(jié)看內(nèi)核側(cè)分發(fā)。在 linux-interrupts-8.md 中我們見過native_init_IRQ函數(shù)——它初始化本地 APIC并完成外部中斷向量的中斷門設(shè)置。其中最關(guān)鍵的一段是for_each_clear_bit_from(i, used_vectors, first_system_vector) { set_intr_gate(i, irq_entries_start 8 * (i - FIRST_EXTERNAL_VECTOR)); }這里遍歷used_vectors位圖中從first_system_vector起的未用位為每個(gè)向量號i設(shè)置中斷門入口地址為irq_entries_start 8 * (i - FIRST_EXTERNAL_VECTOR)。其中int first_system_vector FIRST_SYSTEM_VECTOR; // 0xefirq_entries_start定義在匯編文件arch/x86/entry/entry_64.S中是一段中斷入口樁代碼.align 8 ENTRY(irq_entries_start) vectorFIRST_EXTERNAL_VECTOR .rept (FIRST_SYSTEM_VECTOR - FIRST_EXTERNAL_VECTOR) pushq $(~vector0x80) vectorvector1 jmp common_interrupt .align 8 .endr END(irq_entries_start)GNU 匯編器的.rept指令會把.endr之前的序列重復(fù)FIRST_SYSTEM_VECTOR - FIRST_EXTERNAL_VECTOR次。已知FIRST_SYSTEM_VECTOR 0xef、FIRST_EXTERNAL_VECTOR 0x20 0xef - 0x20 207即重復(fù) 207 次。每次循環(huán)把取負(fù)的中斷向量號壓棧使用負(fù)數(shù)是為了避開已保留給系統(tǒng)調(diào)用的正數(shù)向量號遞增vector變量然后跳轉(zhuǎn)到common_interrupt標(biāo)簽。在common_interrupt中先修正棧上的向量號再以do_IRQ為參數(shù)執(zhí)行中斷宏common_interrupt: addq $-0x80, (%rsp) interrupt do_IRQinterrupt宏同樣定義在entry_64.S保存通用寄存器到棧上必要時(shí)用SWAPGS指令把用戶態(tài)gs換成內(nèi)核態(tài)gs遞增 per-CPU 的irq_count變量標(biāo)記已進(jìn)入中斷上下文最后調(diào)用do_IRQ。關(guān)于 per-CPU 變量的機(jī)制可參閱 Concepts/linux-cpu-1.md。do_IRQ取出中斷號并進(jìn)入中斷上下文do_IRQ定義在arch/x86/kernel/irq.c是設(shè)備中斷的實(shí)際處理入口它接收保存用戶態(tài)寄存器值的pt_regs__visible unsigned int __irq_entry do_IRQ(struct pt_regs *regs) { struct pt_regs *old_regs set_irq_regs(regs); unsigned vector ~regs-orig_ax; unsigned irq; irq_enter(); exit_idle(); ... ... ... }函數(shù)開頭set_irq_regs(regs)保存并返回原來的 per-CPU irq 寄存器指針irq_enter()通過更新__preempt_count變量進(jìn)入中斷上下文exit_idle()檢查當(dāng)前進(jìn)程是否 idle 進(jìn)程PID 為 0若是則通過idle_notifier通知IDLE_END。隨后從 per-CPU 的vector_irq[vector]讀出該向量對應(yīng)的 irq 號這個(gè)數(shù)組在init_IRQ階段填充詳見 linux-interrupts-8.md并調(diào)用handle_irqirq __this_cpu_read(vector_irq[vector]); if (!handle_irq(irq, regs)) { ... ... ... } ... ... ...handle_irq 與 generic_handle_irq_desc最終命中驅(qū)動回調(diào)handle_irq定義在arch/x86/kernel/irq_64.c它校驗(yàn)中斷描述符后調(diào)用generic_handle_irq_descdesc irq_to_desc(irq); if (unlikely(!desc)) return false; generic_handle_irq_desc(irq, desc);static inline void generic_handle_irq_desc(unsigned int irq, struct irq_desc *desc) { desc-handle_irq(irq, desc); }這里會產(chǎn)生一個(gè)疑問我們明明知道irqaction才指向真正的中斷處理函數(shù)為什么從中斷描述符調(diào)用handle_irq答案是irq_desc-handle_irq是調(diào)用中斷處理例程的高層 API它在設(shè)備樹與 APIC 初始化階段被選定內(nèi)核在此處根據(jù)硬件類型選擇正確的函數(shù)并調(diào)用鏈?zhǔn)降膇rq-action(s)。也就是說中斷發(fā)生后serial21285_tx_chars或serial21285_rx_chars正是經(jīng)由這條路徑被最終執(zhí)行。do_IRQ的收尾是退出中斷上下文并恢復(fù)舊寄存器irq_exit(); set_irq_regs(old_regs); return 1;我們已知當(dāng) IRQ 主處理完成、中斷上下文退出時(shí)若存在待處理的延遲中斷softirq 等它們會在irq_exit階段被調(diào)度執(zhí)行——這正是上一部分 linux-interrupts-9.md 介紹的機(jī)制。退出中斷ret_from_intr 與 iretqdo_IRQ返回后控制權(quán)回到arch/x86/entry/entry_64.S的ret_from_intr標(biāo)簽。首先用DISABLE_INTERRUPTS宏展開為cli指令關(guān)閉中斷記錄TRACE_IRQS_OFF并遞減 per-CPU 的irq_count變量——它之前在進(jìn)入中斷上下文時(shí)被置為 1DISABLE_INTERRUPTS(CLBR_NONE) TRACE_IRQS_OFF decl PER_CPU_VAR(irq_count)最后檢查此前是用戶態(tài)還是內(nèi)核態(tài)按正確方式恢復(fù)上下文并以INTERRUPT_RETURN退出中斷INTERRUPT_RETURNINTERRUPT_RETURN宏定義如下#define INTERRUPT_RETURN jmp native_iret而native_iret最終執(zhí)行iretq指令從棧上恢復(fù)中斷現(xiàn)場ENTRY(native_iret) .global native_irq_return_iret native_irq_return_iret: iretq至此一次硬件中斷從設(shè)備觸發(fā)、經(jīng)中斷控制器通知 CPU、向量映射、do_IRQ分發(fā)、驅(qū)動回調(diào)執(zhí)行、延遲中斷處理到iretq恢復(fù)現(xiàn)場的全過程畫上句號??偨Y(jié)一條貫穿驅(qū)動與內(nèi)核的中斷全景鏈路本篇作為 Interrupts 章節(jié) 的收尾把整章知識串成了一條可追蹤的鏈路驅(qū)動初始化module_init(serial21285_init)通過 initcall 機(jī)制注冊串口驅(qū)動uart_register_driver并掛載端口uart_add_one_port請求 IRQ端口打開時(shí)serial21285_startup以IRQF_TRIGGER_NONE標(biāo)志為 16/17 號中斷線調(diào)用request_irq底層經(jīng)由request_threaded_irq→__setup_irq分配并注冊irqaction向量建立native_init_IRQ借助arch/x86/entry/entry_64.S中的irq_entries_start入口樁把 207 個(gè)外部向量逐一映射到common_interrupt中斷分發(fā)中斷發(fā)生后do_IRQ依據(jù)vector_irq[vector]還原 irq 號經(jīng)handle_irq→generic_handle_irq_desc→desc-handle_irq調(diào)用鏈命中驅(qū)動注冊的serial21285_rx_chars/serial21285_tx_chars退出中斷ret_from_intr遞減irq_count后用INTERRUPT_RETURNiretq恢復(fù)現(xiàn)場。從理論到驅(qū)動、從匯編到 C、從注冊到分發(fā)這條鏈路的每個(gè)環(huán)節(jié)都在本倉庫對應(yīng)章節(jié)中有更細(xì)的展開向量與vector_irq初始化見 linux-interrupts-8.md延遲中斷的軟中斷機(jī)制見 linux-interrupts-9.mdinitcall 機(jī)制見 Concepts/linux-cpu-3.mdper-CPU 變量見 Concepts/linux-cpu-1.md。需要提醒的是本章與本文遠(yuǎn)未窮盡中斷處理的所有側(cè)面——中斷線程化、irq 域irqdomain、NUMA 親和與均衡、中斷控制器驅(qū)動等主題都還有大量可深入的空間但掌握本文這條主線后讀者已經(jīng)具備直接鉆進(jìn)內(nèi)核中斷相關(guān)代碼進(jìn)行探索的坐標(biāo)與工具。贊分享文檔教程操作系統(tǒng)【免費(fèi)下載鏈接】linux-insidesA book-in-progress about the Linux kernel and its insides.項(xiàng)目地址https://gitcode.com/gh_mirrors/li/linux-insides點(diǎn)擊查看免費(fèi)下載相關(guān)推薦硬件中斷處理全鏈路實(shí)戰(zhàn)從串行驅(qū)動請求 IRQ 到中斷返回的內(nèi)核之旅硬件中斷處理全鏈路實(shí)戰(zhàn)從串行驅(qū)動請求 IRQ 到中斷返回的內(nèi)核之旅 導(dǎo)讀 本文是 linux insides zh 倉庫《中斷和中斷處理》章節(jié)的終篇解析以TVM 代碼庫實(shí)戰(zhàn)導(dǎo)覽以向量加法為例走通編譯管線全鏈路TVM 代碼庫實(shí)戰(zhàn)導(dǎo)覽以向量加法為例走通編譯管線全鏈路 本篇技術(shù)指南以 TVM 倉庫Apache TVM開源深度學(xué)習(xí)編譯器中的官方文檔 codebase編譯器深度學(xué)習(xí)模型優(yōu)化BabelDOC PDF保格式翻譯完整指南如何用3條命令把英文論文翻成能讀的版本BabelDOC PDF保格式翻譯完整指南如何用3條命令把英文論文翻成能讀的版本 用在線翻譯工具翻一篇英文論文結(jié)果常常是分欄全亂、公式變成一串亂碼、表格拉人工智能AI 應(yīng)用NLP計(jì)算機(jī)視覺上一篇YOLO-Face人臉檢測技術(shù)從入門到實(shí)戰(zhàn)的完整指南下一篇career-ops 高頻問題完全指南從 Windows 安裝報(bào)錯(cuò)到跨平臺求職自動化實(shí)戰(zhàn)創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产成人无码久久精品| 国产亚洲精品无码三区| 97日亚洲欧美| 欧美成人国产精品| 日韩黄片视频试看| 偷拍伦理视频| 99福利社| 久久超碰97| 综合天天网| 白嫩91在线亚洲| 大香蕉宅男伊人| 亚洲91在线播放影院| 欧美日本中字另类在线| 国产又大又硬又长又粗| 国产这里只有精品| 久操视频在线| 中文字幕日韩专区精品系列| 色综合潮| 欧美爆操91| 区自美91| 3P乱轮视频| 五月丁香在线| 亚洲天天精品| 91九色精品熟女内射| 成人在线视频二区| 欧美色图亚洲色| 91五月天| 国产成人91一区二区三区| 立川理惠无码一区二区| 日日妻色网| 天天插夜夜操| 久久久久ab| 日本精品一区二区三区四区的功能| 99色天堂| 亚洲美女av无码| 青青11操操操操操操操操| 欧美美女视频| 色婷婷久久| 91精品国| 日本三级中国三级99人妇网站| 丁香五月天久久精品视频一区二区三区| 九七人妻在线| 日韩AC| 另类欧美综合| 青青草成人视频在线观看二区| 国产精品蜜乳AV| 亚洲交换| 综合国产97| 东京热视频网| 亚洲怡春院| 操逼逼福利视频| 9 9无尺码天堂网| 色色色网站| 桃花色综合影院| 大香蕉日韩欧美| 亚 欧 美 综合| 成人AV超碰免费在线| 玖玖爱伊人玖玖爱| 国产剧情AV不卡在线观看| 久久伊人青青草| 伊人成人中文字幕久久网| 国产宅男宅女在线观看| 东京热毛片177b2viP| 综合网~91综合网| 日韩超碰精品综合| 女人香蕉久久毛毛片精品| 911粉嫩人妻| 韩日自拍| 欧美在线视频99| 国产又黄又粗又猛大片| 蜜臀aV午夜一区二区三区| 亚码激情| 国产高潮AA片免费看| 99re欧美| 91成人久久| 国产午夜精品在线观看| 老熟女搡BBBB搡BBBB视频| 欧美精品99久久久**| 日韩射图| 成人久久久精品| 乱老女人一区二区视频| 国产午夜无码片在线观看影视 | 日本媚薬中文字幕在线| 在线播放中文字幕| 欧美丝袜91| 97视频在线观看播放与子乱对白在线……| 麻豆精品三区视频| 999综合色| 夜夜嗷嗷一区二区| 国产精品老师| 精品网站9999| 欧美 中文字幕 一区| 美女啊啊啊啊啊啊啊| 激情五月天色色| 人人 操人人 操人人| 色官网色综合| 午夜人妻精品综合在线| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 屁股久久久久久久| 国产精品久久发布| 成人夜夜爽| 大香焦A片| 春色综合网| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 亚洲一本大道中文字幕无码在线| 人妻日日干| 9999久久久| 日本免费二区三区| 男人的天堂无码| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 热久久国产| 亚洲综合20p| 亚洲欧美日韩国产丝袜自拍中文| 嗯嗯啊啊好疼| 婷婷色网| 97超碰免费人人性爱| 91在线页| 神马视频久久久久久| 六月激情婷婷| 久久黄色性爱视频| 一线黄色免费性爱片| 亚洲黄色视频在线观看视频| 另类天堂| 91五十路| 韩三级a视频在线观看| 日韩综合97p| 亚洲精品国产熟女久久久| 国产AV人人 夜夜人人澡| 夫妻四区五区六区| 久草色悠悠在线视频| 九色97| 久操不卡视频| 综合网欧美在线| 综合激情五月丁香| 国产视频一区二区在线| 高清不卡国产| 裸模AV女优| 亚洲无限观看| 密臀成人视频久久久| 97操综合| 这里只有97精品| 中文字幕成人乱码熟女精品国50| 亚洲高清综合网| 久久久久斤小| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 一起草高清无码| 精品午夜福利| 色色色日本| ji熟女.com| 久久一区二区高清免费| 9久热| 97久久久久久久精| 国产精品乱码久久久、久久| 96精品久久| 欧美懂色综合网| 国产精品久久久久无码Av网曝门| 蜜乳AV色欲AVAV无码| 在线v中文字幕一区二区三区| 亚洲第一免费视频| 精品一二三区久久AAA片| 东京热免费视频| 日韩在线视频1234| 乱久久久| 啊啊啊啊免费视频| 国产树林里野战在线看| 日韩三级一区 | jk白丝没脱就开始啪啪| 睡产熟女乱伦| 国产SV一线| 国产二区三区粉嫩在线| 精品九区| 91艹B视频| 思思99热| 不卡一区视频| 大香蕉欧美| 国产精品久久久久无码A√| 粉嫩av在线一区二区| 丰满翘臀美女影院视频| 2019男人的天堂| 家庭乱伦麻豆| 日韩操人| 激情小说亚洲图片| 欧美一区二区一级岛国大片| 五月婷婷基地| 欧美色图91p| 夫妻天天操岛国视频| 免费的很黄很污的全部视频| 五月丁香色综合| 操操操操网黑人| 久草电影网| 黄色片一区二区三区四区五区| 国产成人精品亚洲日本| 99精品久久久久久| 久久美女国产| 97色97好| 亚洲国产丝袜熟女av| 日韩人妻免费精品| 亚欧美综合网。| 欧美亚洲自拍另类人妻| 国内精品999| 国产精品伦理| 性爱1区| 免费亚洲国产精品久久一区| 黄色香蕉视频网站一区| 黄页18禁| 精品一级| a网站免费观看| 亚洲精品九九九九九九| 高清国产av无码| 色阁阁AV综合网| 一级性爱视频免费观看| 一区二区首页| 午夜视频久久久久一区| 人人操天天爽| 亚洲AV成人无码一二三久久| 一级黄碟在线看| 亚洲精品性爱片| 国产久久视频| 免费1级a做爰片观看| 艳美熟妇先锋一二三区| 乱伦强奸区日韩| 国产又黄又猛又粗又爽的网站| 中文字幕文字幕无码一区二区三区电影99| AV乱伦专区| 九九久久一区二区三区| 亚洲无992tv| 日本不卡码黄色| 精品人妻高清麻豆av| 操逼啊啊啊91| 国产97av| 亚洲成人一二三区| 一区二区三区在线美女| 怡红院亚洲怡春院av| 国产AV毛片| 亚洲综合一| 女人午夜视频777| 久偷拍欧美日韩三区| 啪啪视频亚洲第一| 亚洲大色鬼| 操婷婷逼| 中文字幕一区二区视频在线观看| 性色av一区二区| 成人午夜小视频手机在线看| 中文字幕一区二区三区四五区| 天天日天天舔天天喷天天射| 日韩在线国产字幕| 国产精品suv一区| 国产 热久久久久国产精品| 成人一级二级| 蜜桃视频精品一区二区| 中文字幕一区二区免费在线| 天天影视综合色| 久久久艹艹艹| 欧美顶级黄色大片免费| 东京热毛片调教| 欧美 亚洲 制服 精品| 日韩性爱1级片视频| 999久久久久久久久| 人妻嗯啊啊在线播放| 婷婷久久五月综合激情| 9999久久久久| 嗯啊啊啊轻点视频| 亚洲第一成人影院色播| 久久久久亚洲熟妇熟女| 日本高清视频在线观看黄已三辽| 999狠狠综合| 无码最新| 九九九九国产| 偷拍亚洲视频一区二区三区四区| 亚洲综合图文| 男人的天堂亚洲| 亚洲国产婷婷在线播放| 亚州男人天堂| 人妻人妻天天碰| 亚洲麻豆精品二区三区| 久久亚洲精品成人av| 九九九精品美女| 欧美亚洲se91| 久久大线蕉一区| 色综合五月天| 国产精品一区二区手机看片| AV有码在线| 久久m| 偷拍欧美激情| 女同在线视频一区| 色情综合| 爱av免费| 亚洲国产成人福利在线观看| 探花视频免费观看国产专区| 精品无码久久| A啊啊在线观看| 色色色色色色色色色色色色色色综合| 手机在线观看不卡无码av| 永久电影三级在线观看| 日日夜夜精品视频| 精品人妻一区二区三区蜜桃视频| 狠操91,com| 欧美人妻中出| 91国产美女丝袜足交精品视频| 又黄又爽在线观看视频| 先锋精品av色鲁| 亚欧国产无码精品在线| 成人无码影片视频在线| 人妻人人做人人澡人人爽欧美一区| 人人操,人人插| 蜜臀久久久99久久久久 | 亚洲砖码砖专无区2023| 久久69精品久久久久久久| 七月丁香婷婷| 国产一级高清免费观看| 很狠操| 成人在线午夜视频一区| 中文字幕一区二区三四五区日日骚| 超碰午夜在线| 欧美亚洲厕所精品偷拍91 | 思思热在线视频免费| 97超碰精品| 舔足天天操天天射| 男人天堂网站| 青娱乐淫乱1314| 欧洲久久一二线| 丝袜美腿av女优在线| 九九热三级片| 强奸乱伦 亚洲一区| 免费视频在线一区二区不卡| 无码 黑人一区二区三区| 欧美日日操| 日逼国产| 久久久com| 久久久精品国产亚洲伊人| 久九干| 亚洲第一色页夜| 日韩中文字幕精品一二三事国产精品| 神马久久久久久久| 凹凸久久人人| 国产亚洲99久久精品| 亚洲天堂区| 一区 欧美 日韩 麻豆| 大香蕉欧美国产日韩高潮| 国产少妇高潮| 人人妻人人爽一区二区三区| 国产精品久久久啊| 天天操夜夜嗨| 激情综合婷婷| 性色高清在线| 天操天操夜操夜月月年年操操| 天天干人妻视频| 欧成人精品H无码| 操逼日批| 久久xxxx| 香港日本韩国人妇99www.wccm20| 天天澡天天爽日日av| 91男人天堂网| 97 色综合| 影音先锋每日最新资源在线观看 | 乱伦熟女区| 日韩九区| 夜夜騷av、一區二區| 亭亭在线资源| 国产精品96| 一区二区影院| 亚洲一区二区三区久久 亚洲一区二区| 4141514逼喷水三级片| 97视频在线视频| 亚洲综合影院| 久久精品亚洲成a人天堂| 国产人伦a片信息免费片| 国精精品无码一二三区水多多| 婷婷久久综合| 超碰天天操你比| 中文字幕三四五区| 亚洲二区精品在线观看| 嗯阿好爽好紧| 久久午夜神马| 日本欧美国内在线| 欧美91久久久久| 白嫩少妇| 婷婷五月天福利| 国外91| 无遮挡男女激烈动态图| 一级黄色牲爱A级片| 久久久久9久久久久| 中文字幕第95页| 国产精品成人久久一区二区三区 | 精品一级毛片在线观看| 婷婷久久综合久| 久久6热精品99视频| 91无遮挡| 67194无码不卡| 色香av| 色婷婷综合网站| 91AV天美在线视频| 99久久久久久亚洲精品不卡| 精品熟女一区=区三区| 后入精品| 婷婷五月天福利| 91操熟女视频| 日韩另类| 九九九色| 91人妻人人妻| 免费AV中文网在线观看| 台湾佬激情综合| 亚洲欧美日韩不卡人妻| av中文在线| 亚洲极品| 90后性网国产欧美| 偷拍新久久| 日本性爱少妇| 性欧美第一页| 大香蕉AV在线| 蜜臀久久99精品久久久久久酒店| 狠狠综合| 草草草视频在线免费看| 国产SV一线| 无码不卡八戒| baiduhicn.com。| 亚洲精品三区在线观看| 大香蕉青青9| 久久激情亚洲精品无码?V| 免费成人在线熟妇网| 国产精品无码av| 97天天插| 久热大香蕉| 大香蕉淫人| 青青青操| 免费超碰97在线观看| 免费成人在线熟妇网| 操逼操逼视频操逼| 人妻夜爽夜夜爽| 日韩乱码Av| 国产综合日韩伦理| 日韩一级二级三级免费看完整版国语版| 草草影院最新网址| 精品少妇一区二区三区| 激情五月激情综合网| 亚洲春色一区二区三区| 美女干逼2| 91九色在线| 色吧91| 久久精品老司| 成人性爱电影一区二区| 午夜操一操| 久草精品国产蜜臀| 性爱边摸边日免费AV| 亚洲中文sv| 97超碰色五月| 盗摄女人妻在线| 久久后入制服| 狠狠久久四虎| 天天躁日日躁AAA片李宗瑞| 正宗无毛一线天嫩逼| 99999精品视频| 欧美日韩 强奸乱伦| 鸥美中出| 熟女自慰久久久| 天天日B夜夜干B时时操B| 蜜臀久久99精品久久久久久婷婷| 97资源免费视频| 五月香婷婷| 天天激情综合站| 新怡红院| 亚洲精品欧美专业| 99在线精品观看99| 欧美另类精品xxxx| 日韩性爱小视频| 一区二区播放| 日本999精品| 五月婷婷六月天| 一本一道波多野毛片中文在线| 人妻久久| 999九九九九国产动| 色女99一级片在线观看| 强奸乱亚洲| 黄色片一区二区三区四区五区| 欧美激情区| 黄色十八禁网站| 91国产精品在线看| 男女一级A片大黄,一进一出| 欧美aa一级片| 91av熟女人妻| 干超碰碰熟女| 亚洲黄色电影| 操91| 欧美一区二区三区成人性生活| 日韩影片中文字幕一区二区三区| 色色丁香| 这里都是精品在线观看| 亚洲毛片一级带毛片基地| 99热精品在线观看| 91在线丝袜| 99re6国产精品99re| 一区二区三区 丝袜高跟| 天天综合网国产| 九九综合色| 深田咏美亚洲精品福利社| 永久免费发布性爱网| 九九精品无码专区免费| 日本韩高清无砖码22o| 狠狠躁伊人中文字幕| 亚洲第一男人天堂| 2020中文字幕在线| 欧美精品,四区。五区| 超碰无码五月97| 国产精品不卡一区二区三区| 久久一二三四不卡 | 97超碰这里只有精品| 蜜臀久久在线视频| 国内97干免费看| 国产精品suv一区| 天天干天天日天天射黄色片| 国产传媒美日韩av| 亚洲AV不卡在线观看尤物| 99啪啪| 日韩资源网| 午夜操操操| 伊人女女资源在线观看| 老子午夜伦不卡影院| 狠狠操狠狠操操| 密臀在线视频| 精品久操| 国产又粗又长又大的视频| 蜜桃AV天堂| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 最近的最新的中文字幕视频| 凹凸视频特色日本特黄| 久久99精品视频| 91亚洲黑人| 一本一道人妻久久一区二区三区 | 日韩综合色图| 蜜桃视频成a人v在线| 精品少妇一区二区三区在线视频| 99色视频| 大香蕉在线视频重口味毛片在线| 欧美青青草视频| 久久成人网站| 国产第12页| 久久av成人无码免费| 色97| 亚洲图片在线| 好属操| 欧美 亚洲 第一页| 久草免费在线一区二区| 99国内精品| 国产精品欧美激在线| 天天噜| 超碰97起碰| 欧美日韩在线国产在线| 婷婷色香伊人| 久久久久久69国产一区二区| 大香蕉丝袜一级片| 北野未奈加勒比av| 人人操人人色网| 中日高清无码操逼视频| 麻豆AV96熟妇人妻| A级在线视频| 大香蕉宗合网在线| 婷婷国产精品一区二区| 秋霞曰韩R级| 大乔未久88一区| 91久久国产精品| 日本成人A片免费看| 久久欧洲| 亚洲熟女精品| 欧美丝袜美女电影一二三四区| 大屁股人妻女教师撅着屁股| 亚洲 se图 欧美电影| 日韩无码操逼片| 留下AⅤ黄色片| 操逼日韩无码 | 另类小色呦| 3级毛片一二| 99热91| 日本午夜久久电影| 狠狠躁天天躁日日躁97| 国产女人操逼视频| 国色综合天| 天天影视综合网欧美精品| 天天日天天干天天操| 欧美在线官网| 91福利网在线观看| 亚洲色欧| 九九九九九九九九九五码| 国产热RE99久久6国产精品首| 久久久久久久97| 中文有码第五页| 国产 日韩 欧美高清| 亚洲欧美色图片| 熟妇高潮精品一区二区三区下载| 亚洲欧美碰碰| juliaann精品熟女一区| 女同性恋久久| 亚洲av无码成电影在线播放| 加勒比海成人视频网| 亚洲日本激情| 免费精品国偷自产在线在线| 大香蕉线| 亚洲天堂人人妻| 日本成人A片免费看| 91高潮| 欧美伦乱爱| 极品白嫩福利在线| www.99色| 国产激情久久久| 果冻国产精品麻豆成人av| 激情综合五月天| 成人a大片在线观看| 欧美综色欧| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 中文字幕一区二区三区高清| 熟女人妻精品一区二区视频 | 久久精品熟女亚洲AV麻豆软件| 国产国产亚洲一二三久久| 欧美九一精品久久久熟妇| 日日夜夜噜| 操淫穴亚洲五月丁香| 欲射影视| 伊人嫩草| 美熟女逼导航AV操逼| 亚洲视频二区| 91欧美情色| 男人天堂新| 亚洲国产综合视频| 小电影欧美91| 精品一级| 中日韓欧美高清| 丁香五月色| 欧美aa一级片| 日本性爱欧美性爱| 久久黄色视频一区二区三区| 先锋激情∨在线视频播放| 亚洲一区二区精品福利| 黄片aaaaa一区| 99re在线观看| 欧美性色综合网| 日本久久综合| 97日亚洲欧美| 亚洲欧美自拍偷拍| 日本免费一级AAA大片器| 少妇无码av专区线| 五月天偷拍| 狠狠做深爱婷婷久久二区| 91A欧美电影网站| 黑人操一区二区| 蜜桃成人1区2区3区| 嗯嗯,好大,好爽,好骚| av橘色网站| 国产欧美精选自拍一区| 亚洲天堂东京热| 中文字幕av一区二区三区人妻少妇| 国产综合日韩伦理| 天天爽天天操| 四虎免费视频| 自拍视频一区在线观看| 免费毛片在线播放| 国产超碰欧美| 成人性爱视频在线看| 超碰夫妻97| 国产97色在线 | 亚洲| 亚洲成av人片色午夜乱码| 久久爽爽精品| 亚洲精品尤物yw在线影院| 男人天堂.AB| 超碰人妻久久| 久久久99久9| 久久天天艹| 怡红院亚洲怡春院av| 免费的很黄很污的全部视频| 99热精品在线| 七月丁香婷婷| 无码视频一区二区| 亚洲1区2区三区高清中文字幕| 欧美老妇综合网| 无码聚合| 色综合天天爱去电影网| 久久久久13| 乱伦熟女专区| 麻豆精品天美| 涩五月婷婷| 99re免费| 超碰中文字幕人妻草一区| 亚洲97久久精品亚洲| 久久久青青草| 超碰色美女| 亚洲深夜福利| 97在线播放| 噜噜瑟| 91精品少妇搡搡搡| 在线综合 亚洲 欧美中文字幕| 少妇内射视频| 日本3级一区二区免费| 日本亚洲嫩草影院啪啪| 9/A片| 久久婷婷热| 日va操| 亚洲一区中文精品| julia国产在线 | 色色色99| 精品日韩人妻精品一二三区| 精品少妇一区二区| 欧美熟妇亚洲版| 久操视频免费在线观看| 久久久久久人体| 欧美999| 日本久久久久久久久久| 欧美丝袜激情| 九九无码久久精品视频| 超碰99在线观看| 久久激情亚洲精品无码?V| 欧美亚洲素人制服精品| 在线欧美亚洲| 九九九九九九九九九九精品视频| 色欲人妻一区二区在线| 天天操天天射青青草| 日韩啪啪啪啪啪| 在免费jIzzjIzz在线视频| 亚洲第一黄色av网站| 中日韩免费看男女操逼大全| 丝袜AV一区二区三区| 风间由美日韩欧美久久| 精品无码一区二区三区| 怡红院亚洲怡春院av| 日韩人妻精品| 欧美色九九| 欧美翘臀视频网站一区二区三区| 亚洲图片偷拍欧美| 中文字幕第2页| 久久久涩| 欧美亚洲国产91在线| 国产宅男宅女在线观看| 逼操网站| 2020国产精品| 色婷婷视频| 激情五月婷婷| 夜夜操av亚洲一区二区| 青青草原伊人网| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 中字乱伦AV| 欧美第38页| 欧美激情内射| av天堂手机版追回| 天天天乱色综合全| 国产强奸乱伦无码视频| 久久久久成人亚洲国产| 人妻AV在线| 中出91视频| 插穴性爱视频在线观看| 久久精品72| aa片毛片| 欧美激情视频一区二区三区不卡| 一本一道久久综合久久| 亚欧国产无码精品在线| 超碰98综合网| 国产精品自拍xxxx| 四虎视频在线观看| 亚洲图片欧美色| 青青草视频久久| 高清无码91| 麻豆人妻精品一区二区| 久一区久久蜜桃| 一二三四免费视频| 97亚洲自在精品在线观看| 日韩性爱视频免费在线| 加勒比色99999| 九九久久九九久久| 亚洲国产亚洲天堂| 人人操人人操草草| AV中文字幕三四五| 盗摄 精品 另类 一区| 国产路线专区| 午夜欧美神马久久久久| 久久这里是精品| 蜜臀久久99精品久久久久久成人小说 | 91少妇香蕉久久精品| 国产欧美一级在线观看| 日本亚欧爱爱| 东北女人av| www.av在线视频| 天天澡天天爽日日AV| 97精| 91九九九小逼| 欧美啪啪女女| 2023天天操夜夜操| 日本黄色XXX| 中文字暮97| 亚洲 欧美 偷拍 唯美| 国产成自自拍在线观看| 国产这里只有精品| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 成人片在线播放| 亚州欧美在线| 欧美综合色站| 国产亚洲精品农村妇女 | 人妻一区视频| 精品人妻视频一区二区三区蜜桃视频| 色吧5亚洲| 激情文学欧美| 精品成人亚洲午夜电影| 久久精品无码不卡| 亚洲,欧美,春色,另类| 大香蕉黄色一级片免费看| 蜜臀av中文字幕| 手机在线视频国内精品| 亚欧美色| 欧美在线|亚洲| 久久久久密臀视频| 日韩人妻操B| 久久久激情| 国产一级特黄大片处女| 色欧美亚洲| 色九九综合AV| 97爱b| caorenqi shipin| 性爱av在线免费观看| 国产操逼视频在线观看| av毛片aaaaa免费看| 综合欧美亚洲| 97视频在线看| sewuyueav| 色天天野狼综合社区| 在线情色电影 91大| 国产欧美日韩臀 | 人妻久久一区二区三区 | 国产精品一区二区黄片| 久久久久久97| 伊人久久亚洲色欲综合网站| 91丝袜美腿网站| 亚洲AV无码天美传媒一区| 91色色色| 色妹子A V| AV天天在线观看| 日日干日日操五月天伦理视频| 91 在线亚洲| 青青草在线视频人人想人人上| 一本一道vs波多野结衣| 一区二区三区视频| 青青草中文字幕| 日韩无码第3页| 精品人妻一区二区三区在| 欧美女同在线| 女人综合网| 欧美综合网A| 91午夜无码| 富女玩鸭子一级毛片| 午夜超爽| 91美女中出| 91黑丝少妇| 九9精品| 国产精品不卡少妇白| 国产精品爱欲| 婷婷综合久久| 免费超碰97久久| 性生活性生大爱77AV国产| 日本熟女免费視颖| 98色网| 日韩资源网| 夜夜嗨一区二区三区直播内容| 日本中文熟女视频| 五月激情视频| 99日免费视频中文字幕| 国产91影院| 六月丁香啪啪啪| 丁香五月天久久精品视频一区二区三区| 九九av| 无码久久亚洲高清,| 另类天堂| 精品人妻久久久久一区二区三区| 少妇高潮对白在线观看| 东北女人| 97香蕉网| 日本片日本片祼观看网站在线看中文版网页在线看 | 婷婷探花久久精品一区| 郑州宾馆老熟女露脸啪啪| 伦在线97| 黄骗免费| 日日日色色色色色| 久久精品国产亚洲AV无码电影| 欧美性,亚州色| JIZZJIZZ亚洲女人被躁| 天天综合日韩网| 久久中文字幕在线观看| 亚洲另类电影| 蜜臀久久99精品久久久久| 玖玖97综合| 无码久久亚洲高清,| 国产精品第二页| 最新啪啪视频| 丝袜天堂网| 五月天婷婷小说| 欧美精品成人一区二区在线观看 | 人妻丝袜一区二区三区在线| 久热九九| 午夜男女爽爽大片免费观看| 国产传媒一区日韩| 97欧美性爱| 草B在线| 亚洲精品久久久久久久久豆丁网| 试看60秒 爽| 天天综合网亚洲综合网| 99成人| 午夜理论片在线观看免费| 97超碰久久| 啊灬啊灬啊灬啊灬高潮奶出了免费视| 欧美大香蕉在线观看| 国产精品无码AV网站| 97超碰人人模人人拍人人| 日日妻色网| 久都青青视频| 激情接吻视频久久久久久| 蜜乳视频网站| 东京热av影院| 亚洲污污网站| 亚洲人成色9999精品久久| 超碰免费人人| 日本护士高潮| 国产亚洲美日韩Aⅴ中文字幕无码成人| 伊人网在线点播| 中文字幕55555| 亚洲天天艹| 五月丁香婷婷色| 久久99热这里只频精品6学生| 日韩无码a片| 日本孕妇一区二区视频操逼免费看| 中文字幕超碰CAO| 高清不卡视频| 91 亚洲 欧洲| 91人人看| 黑人中出21连凳花野真衣| 淫妻综合网| 亚洲欧美一区二区三区在钱蜜桃 | 人妻丰满熟妇一区二区三| 一区二区高清视频| 网站A V在线| 国产自产自拍| 超碰91在线| 欧美不卡在线美女| 亚洲男人的天堂AV| 欧美91久久久久| 青操影院| 天天综合青苹果| 97精| 18禁网站在线播放| 99久久网站| 黑操B| 成人一区二区三区四区| 男人的天堂VA在线| 少妇高潮喷水无套久久久久久| 国产精品久久久九九九| 欧美色图另类图片| 亚洲精品久久一区二区三区蜜桃臀| 久久久免费视频18| 欧美日韩在线视频网站| 欧美久久人人网| 亚洲少妇喷视频看| 国产传媒一区日韩| 欧美性高潮| 日本熟妇人妻一区二区三区| 国产精品白领在线观看| 国产精品久久久三级无码| 噜噜在线| 高清不卡 中文 人妻| 2017天天插| 萌白酱自拍视频| 熟妇在线视频一区二区| 成人天天爽| 青娱乐999| 久久久久久午夜男人的天堂| 中文在线视频| 免费a级毛片av无码久久精品中文字幕| 日本黄 R色 成 人网站| 看日韩美女二区三区免费操逼视频| 午夜毛片高清免费不卡| 欧美日韩啪啪电影| 色老汉玖玖爱| 最新AV在线| 久久九九国产精品| 色悠久久久av| 在线看片国产精品每日更新| 一区二区三区蜜桃成人撸久久东京热| 亚洲日韩少妇一道本视频| 2024年最新色情网站在线观看| 九九无码视频| 操淫穴亚洲五月丁香| 青娱乐国产精品| 欧美高潮在线| 国产丝袜美女在线一区| 在线观看视频91| 美女极品一区二区三区| 爱欲AV| 亚洲无码电影久久久| 激情自拍 校园春色| 尤物视频视频官网| 日韩欧美麻豆大片| 免费观看成人www精品视频| 欧美伦乱爱| 一级特级aaaa毛片免费观看| 亚洲天在线| 无码外流操逼视频| 无码欧美有限公司| AV一起草在线| 夜夜高潮夜夜爽国产伦精品| 蜜乳视频网站| 97超碰大| 青青操少妇| 啪啪AV导航| 九九九九九九视频免费| 另类在线| 岛国毛片手机在线观看| 国产伦精品| 不卡九肏| 九色97| 日韩精品亚洲专区在线影视| 怡红院成人视频| 噜噜噜久久亚洲精品色情| www欧美性爱| 欧美不卡五十路| 欧美日韩另类激情图片| 曰本精品久久久| 任你艹| 日本色色色视频| 另类小说综合网| 欧美色999| 五十路熟女在线不卡观看一区二区| 91夜色chaopeng| 欧美三级中文字幕hd| 伊人网免费视频| 啊啊啊啊好多水| 精品国产乱码久久久影院| 色在线69堂| 大香蕉男人的天堂| 97资源欧美| 天天综合日韩网| 97网址www| 偷拍欧美激情| 欧美男女午夜啪啪| 5252色欧美在线| 精品十三区| 蜜屁Av| 日韩色图 一区二区| 免费看美国人人爽,人人操| 亚洲有薄码区日本系列中文字幕| 99久久九九| 色噜噜综合网| 26uuu欧美| 97色欧州| 美女黑人91神马| 日韩欧美蜜桃精品久久中文字幕久久| 亚洲人妻熟妇三十三区| 亚洲一二三精品久久网| 久久亚洲熟妇在线视频| 成人热久久精品| 成人青青草原伊人| 啊啊啊在线观看| 国产AV色黄看到爽| 九久9精品| 蜜臀久久久| 蜜臀AV午夜精品久| 人妻丰满熟妇一区二区三| 色官网在线| 欧美另类色图片| 色婷婷aV一区二区三区麻豆综合| 精品人妻美妇91job| 亚洲,欧美,春色,另类| 熟妇人妻一区二区| 亚洲综合骚逼| 72av视频| 国产日韩欧美中文在线播放| 中文字幕jul-617人妻熟女| 超碰在线974| 亚洲女人91| 伊人丁香五月婷婷| 色色99| 九九av| 91P0RNY大屁股人妻| 国产精品久久久久av| 金典av| 国产91影院| 十八禁网站在线| 大香蕉懂9| 近亲乱伦一区二区| 91精产一区二区三区| 国产精品女aA片爽爽视频| 六月丁香久久| 欧美另类丝袜熟女| 中国女人内射6XXXXX| 久久中出在线| 人人看人人插| 日逼五月天| 亚洲综合91| 开心五月婷婷激情| 免费网色网站| 激情小说图片亚洲首页| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 综合亚洲欧美精品日韩?v| 色色热| 在线a亚洲视频播放在线| 婷婷导航| 亚洲美女精品九九视频| 亚洲中文人妻色| 大黄片做爱的大的| 久久久111| AA特级绝黄| 青青青青青手机视频| 色色色综合网| 午夜精品久久一区二区| 99亚洲人人| 日韩性爱再线视频| 欧美精品黑人猛交高潮| 偷拍超碰| AV中文在线| 欧美性视频二区三区| 久久久五月天| 亚洲欧美中文一区二区三| 97国产精品一区| 中文字幕视频在线观看一区二区| 国产操伦| 亚洲精品97| 美女91av| 欧美色图亚州激情| 曰韩av中文字幕专区| 日日干天天干夜夜爽| 加勒比AV网| 丰满人妻一区二区三区在线| 中文字幕精品区先锋资源| 国产乱伦视频污| 亚洲精品蜜桃久久久| 国产丰满熟夫69mpp| 亚洲欧美国产日本一区二区三区| 老熟女搡BBBB搡BBBB视频| 曰本道人妻久久久在线不卡色视频| 日本三级小说中文字幕| 超碰免费人人| 色综合色综合网| 精品人妻一区二区视频| 夜夜精品视频| 婷婷人妻激情| 91精品国产乱码| 婷婷在线精品| 乱伦3P视频| 久久久久久亚洲Av无码| 高清无码久操视频| 国产午夜精品在线观看| 七月丁香婷婷| 国产无码精品久久久久久| 国产97在线 | 亚洲| 97网站在线观看| 亚洲男人天堂2017| 日韩猛交| 亚洲情色综合| 亚洲不卡三级手机播放| 97干色| 五月亭亭六月丁香| 在线岛| 人人摸人人叼| 男人的天堂2019AV| 91丨国产丨白浆| 亚洲青青草| 蜜屁av| 美国黄片aaa| 日本色色色视频|