日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

Android 启动分析 1

發(fā)布時(shí)間:2025/3/15 Android 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 启动分析 1 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.概述

Android雖然被稱作一種操作系統(tǒng),其實(shí)它仍然使用的Linux的kernel。所以本質(zhì)上可以說(shuō),Android是一個(gè)適用于移動(dòng)設(shè)備的Linux發(fā)行版。也就是說(shuō),之前的分析Linux內(nèi)核的經(jīng)驗(yàn)可以拿來(lái)用于分析Android。不過(guò),值得注意的是,Android除去對(duì)Linux內(nèi)核的一些改動(dòng)外,它的大部分代碼還是在Linux內(nèi)核啟動(dòng)后的用戶空間程序上。所以,分析Android代碼時(shí),不僅要對(duì)Linux內(nèi)核代碼熟悉,還要對(duì)熟悉Linux系統(tǒng)編程要用到的函數(shù),比如fcntl、mmap、open、read、write等。

2. Android啟動(dòng)流程概述

像大多數(shù)的Linux發(fā)行版那樣,在加載啟動(dòng)kernel后,會(huì)執(zhí)行第一個(gè)用戶空間程序/init。
簡(jiǎn)單流程就是在start_kernel函數(shù)的最后調(diào)用函數(shù)rest_init。rest_init函數(shù)如下

static noinline void __init_refok rest_init(void) {....../*這里是關(guān)鍵*/ kernel_thread(kernel_init, NULL, CLONE_FS | CLONE_SIGHAND);/*看上邊*/numa_default_policy();pid = kernel_thread(kthreadd, NULL, CLONE_FS | CLONE_FILES);rcu_read_lock();kthreadd_task = find_task_by_pid_ns(pid, &init_pid_ns);rcu_read_unlock();complete(&kthreadd_done);....... }

這里通過(guò)內(nèi)核產(chǎn)生線程kernel_init--我們所說(shuō)的0號(hào)進(jìn)程。kernel_init函數(shù)如下:

static int __ref kernel_init(void *unused) {kernel_init_freeable();....../*關(guān)鍵*/if (ramdisk_execute_command) {if (!run_init_process(ramdisk_execute_command))return 0;pr_err("Failed to execute %s\n", ramdisk_execute_command);}/*這里ramdisk_execute_command是有值的,在kernel_init_freeable中設(shè)置*/......panic("No init found. Try passing init= option to kernel. ""See Linux Documentation/init.txt for guidance."); }

我們?cè)倏磌ernel_init中調(diào)用的kernel_init_freeable。kernel_init_freeable函數(shù)如下:

static noinline void __init kernel_init_freeable(void) {....../* Open the /dev/console on the rootfs, this should never fail */if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)pr_err("Warning: unable to open an initial console.\n");(void) sys_dup(0);(void) sys_dup(0);/** check if there is an early userspace init. If yes, let it do all* the work*//*這是關(guān)鍵*/if (!ramdisk_execute_command)ramdisk_execute_command = "/init";//這里設(shè)置成/init,android系統(tǒng)的第一個(gè)用戶態(tài)程序if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) {ramdisk_execute_command = NULL;prepare_namespace();}/*向上看*//** Ok, we have completed the initial bootup, and* we're essentially up and running. Get rid of the* initmem segments and start the user-mode stuff..*//* rootfs is available now, try loading default modules */load_default_modules(); }

所以android在啟動(dòng)時(shí)會(huì)執(zhí)行/init。我們整理一下android的啟動(dòng)流程:

  • start_kenel調(diào)用rest_init
  • rest_init調(diào)用kernel_init
  • kernel_init調(diào)用kernel_init_freeable
  • kernel_init_freeable中把ramdisk_execute_command設(shè)置為/init
  • 最后讓在kernel_init中調(diào)用run_init_process(ramdisk_execute_command)

那么/init是什么程序呢?

/init就是Android自己的程序了,源代碼位于/system/core/init/init.c中

仔細(xì)分析發(fā)現(xiàn),該c文件中是有main函數(shù)的,說(shuō)明該文件可以編譯鏈接成用戶態(tài)的可執(zhí)行程序——即/init

3.?/init分析

3.1?/init程序的第一部分

umask(0);/* Get the basic filesystem setup we need put* together in the initramdisk on / and then we'll* let the rc file figure out the rest.*/mkdir("/dev", 0755);mkdir("/proc", 0755);mkdir("/sys", 0755);/*dev下的文件系統(tǒng)是tmpfs,之后的null設(shè)備和klog設(shè)備都是在該文件夾下mknod做成的*/mount("tmpfs", "/dev", "tmpfs", MS_NOSUID, "mode=0755");mkdir("/dev/pts", 0755);mkdir("/dev/socket", 0755);mount("devpts", "/dev/pts", "devpts", 0, NULL);mount("proc", "/proc", "proc", 0, NULL);mount("sysfs", "/sys", "sysfs", 0, NULL);/* indicate that booting is in progress to background fw loaders, etc */close(open("/dev/.booting", O_WRONLY | O_CREAT, 0000));

可以注意到的是,由于已經(jīng)是用戶態(tài)程序了。代碼中可以放心大膽的使用umask、mkdir、mount這些函數(shù),所以熟悉Linux系統(tǒng)編程是很必要的(雖然Android沒(méi)用glibc,而是bionic,但是接口接口基本一致)。

這段代碼之簡(jiǎn)單的掛載了一些必要的文件系統(tǒng),剩下的要通過(guò)解析rc文件在掛載。

3.2?/init/程序的第二部分

open_devnull_stdio();klog_init();property_init();get_hardware_name(hardware, &revision);process_kernel_cmdline();

3.2.1 函數(shù)open_devnull_stdio(在/system/core/init/util.c中)

void open_devnull_stdio(void) {int fd;static const char *name = "/dev/__null__";if (mknod(name, S_IFCHR | 0600, (1 << 8) | 3) == 0) {fd = open(name, O_RDWR);unlink(name);if (fd >= 0) {//重定向dup2(fd, 0);dup2(fd, 1);dup2(fd, 2);if (fd > 2) {close(fd);}return;}}exit(1); }

該函數(shù)創(chuàng)建一個(gè)null設(shè)備,然后通過(guò)dup2系統(tǒng)調(diào)用把它重定向到stdio、stdout、stderr上。注意這時(shí)還在/init進(jìn)程中。

3.2.2函數(shù)klong_init(在/system/core/libcutils/klog.c中)

void klog_init(void) {static const char *name = "/dev/__kmsg__";if (mknod(name, S_IFCHR | 0600, (1 << 8) | 11) == 0) {klog_fd = open(name, O_WRONLY);//只能寫(xiě),我發(fā)現(xiàn)在klog.c中只有klog_write函數(shù)fcntl(klog_fd, F_SETFD, FD_CLOEXEC);unlink(name);} }

通過(guò)fcntl設(shè)置FD_CLOEXEC標(biāo)志有什么用?(注意當(dāng)前只有一個(gè)這樣的file descriptor flag)

close on exec, not on-fork, 意為如果對(duì)描述符設(shè)置了FD_CLOEXEC,使用exec-family執(zhí)行的程序里,此描述符被關(guān)閉,不能再使用它,但是在使用fork調(diào)用的子進(jìn)程中,此描述符并不關(guān)閉,仍可使用。之后我們會(huì)發(fā)現(xiàn)/init中產(chǎn)生子進(jìn)程都是通過(guò)fork后在exeve實(shí)現(xiàn)的,所以子進(jìn)程(其實(shí)就是init啟動(dòng)的那些服務(wù))中klog文件是關(guān)閉的。

3.2.3函數(shù)property_init

  • property_init是init_property_area的wrapper函數(shù)
  • init_property_area調(diào)用init_workspace函數(shù)并給libc中的__system_property_area__賦值

函數(shù)init_workspace

static int init_workspace(workspace *w, size_t size) {void *data;int fd;/* dev is a tmpfs that we can use to carve a shared workspace* out of, so let's do that...*/fd = open("/dev/__properties__", O_RDWR | O_CREAT, 0600);//沒(méi)有用mknodif (fd < 0)return -1;if (ftruncate(fd, size) < 0)//調(diào)整文件大小goto out;data = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);if(data == MAP_FAILED)goto out;close(fd);fd = open("/dev/__properties__", O_RDONLY);if (fd < 0)return -1;unlink("/dev/__properties__");w->data = data;w->size = size;w->fd = fd;return 0;out:close(fd);return -1; }

workspace定義

typedef struct { void *data;size_t size;int fd; } workspace;

pa_workspace就是類型為workspace的全局變量,init_workspace函數(shù)通過(guò)open和mmap函數(shù)創(chuàng)建文件并映射到內(nèi)存空間,并為字段data、size、fd賦初值,而data字段就是剛剛mmap映射的空間地址。

函數(shù)init_property_area

static int init_property_area(void) {prop_area *pa;if(pa_info_array)return -1;if(init_workspace(&pa_workspace, PA_SIZE))return -1;fcntl(pa_workspace.fd, F_SETFD, FD_CLOEXEC);pa_info_array = (void*) (((char*) pa_workspace.data) + PA_INFO_START);pa = pa_workspace.data;memset(pa, 0, PA_SIZE);pa->magic = PROP_AREA_MAGIC;pa->version = PROP_AREA_VERSION;/* plug into the lib property services */__system_property_area__ = pa;property_area_inited = 1;return 0; }

struct prop_area定義

(/bionic/libc/include/sys/_system_properties.h)

struct prop_area {unsigned volatile count;unsigned volatile serial;unsigned magic;unsigned version;unsigned reserved[4];unsigned toc[1]; };

通過(guò)代碼

pa = pa_workspace.data; ...... __system_property_area__ = pa;

libc庫(kù)要用到的全局變量__system_property_area__的值就被賦成上面講到的共享內(nèi)存的地址了,這樣方便之后的/init產(chǎn)生的各個(gè)子進(jìn)程都能使用libc庫(kù)的函數(shù)訪問(wèn)這個(gè)地址。

可以看出__system_property_area__地址開(kāi)始的部分的內(nèi)容就是struct prop_area所定義的字段。

自此我們知道__system_property_area__、pa_workspace.data指向的是同一地址,之所以區(qū)分的原因是前者是libc庫(kù)的全局變量之后的進(jìn)程都可以通過(guò)調(diào)用libc庫(kù)函數(shù)使用,而后者是/init本身的全局變量可以直接使用。

struct prop_info定義

(/bionic/libc/include/sys/_system_properties.h)

struct prop_info {char name[PROP_NAME_MAX];unsigned volatile serial;char value[PROP_VALUE_MAX]; };

該結(jié)構(gòu)就是property system中的key/alue鍵值對(duì),也是全局變量pa_info_array的類型。

通過(guò)代碼

pa_info_array = (void*) (((char*) pa_workspace.data) + PA_INFO_START);

使得pa_info_array指向那塊共享內(nèi)存地址后面PA_INFO_START處。

整個(gè)property system的數(shù)據(jù)結(jié)構(gòu)如圖:

?這里只是對(duì)property system的數(shù)據(jù)結(jié)構(gòu)的初始化,真正的服務(wù)還要在之后啟動(dòng)。

3.2.4 函數(shù)get_hardware_name

/system/core/init/util.c

void get_hardware_name(char *hardware, unsigned int *revision) {......fd = open("/proc/cpuinfo", O_RDONLY);if (fd < 0) return;n = read(fd, data, 1023);close(fd);if (n < 0) return;data[n] = 0;hw = strstr(data, "\nHardware");rev = strstr(data, "\nRevision");if (hw) {x = strstr(hw, ": ");......}if (rev) {x = strstr(rev, ": ");......} }

函數(shù)很簡(jiǎn)單就是通過(guò)讀取/proc/cpuinfo中的信息獲得hardware和revision信息。函數(shù)的參數(shù)指向的是全局變量。

3.2.5 函數(shù)process_kernel_cmdline

/system/core/init/init.c

static void process_kernel_cmdline(void) {......import_kernel_cmdline(0, import_kernel_nv);if (qemu[0])//qemu是`/init`的全局變量import_kernel_cmdline(1, import_kernel_nv);export_kernel_boot_props(); }

該函數(shù)分兩部分,第一部分讀取kernel cmdline,第二部分輸出kernel cmdline.

函數(shù)import_kernel_cmdline(在/system/core/init/util.c中)

void import_kernel_cmdline(int in_qemu,void (*import_kernel_nv)(char *name, int in_qemu)) {char cmdline[1024];char *ptr;int fd;fd = open("/proc/cmdline", O_RDONLY);if (fd >= 0) {int n = read(fd, cmdline, 1023);.....close(fd);} else {cmdline[0] = 0;}ptr = cmdline;while (ptr && *ptr) {char *x = strchr(ptr, ' ');if (x != 0) *x++ = 0;import_kernel_nv(ptr, in_qemu);ptr = x;} }

函數(shù)很簡(jiǎn)單,就是讀取/proc/cmdline中內(nèi)容,以空格為分隔符分解字符串,把分得的字符串傳給import_kernel_nv函數(shù)。(值得注意的是import_kernel_nv有兩個(gè)定義,此處通過(guò)參數(shù)傳進(jìn)來(lái)的是/system/core/init/init.c中的static原型,在同目錄下的ueventd.c中也有)

函數(shù)import_kernel_nv

static void import_kernel_nv(char *name, int in_qemu) {char *value = strchr(name, '=');if (value == 0) return;*value++ = 0;if (*name == 0) return;if (!in_qemu){/* on a real device, white-list the kernel options */if (!strcmp(name,"qemu")) {strlcpy(qemu, value, sizeof(qemu));} else if (!strcmp(name,"androidboot.console")) {strlcpy(console, value, sizeof(console));} else if (!strcmp(name,"androidboot.mode")) {strlcpy(bootmode, value, sizeof(bootmode));} else if (!strcmp(name,"androidboot.serialno")) {strlcpy(serialno, value, sizeof(serialno));} else if (!strcmp(name,"androidboot.baseband")) {strlcpy(baseband, value, sizeof(baseband));} else if (!strcmp(name,"androidboot.carrier")) {strlcpy(carrier, value, sizeof(carrier));} else if (!strcmp(name,"androidboot.bootloader")) {strlcpy(bootloader, value, sizeof(bootloader));} else if (!strcmp(name,"androidboot.hardware")) {strlcpy(hardware, value, sizeof(hardware));} else if (!strcmp(name,"androidboot.modelno")) {strlcpy(modelno, value, sizeof(modelno));}} else {/* in the emulator, export any kernel option with the* ro.kernel. prefix */char buff[32];int len = snprintf( buff, sizeof(buff), "ro.kernel.%s", name );if (len < (int)sizeof(buff)) {property_set( buff, value );}} }

該函數(shù)分兩種情況處理傳進(jìn)來(lái)的字符串。

  • 不再模擬器中時(shí),解析字符串,賦值給qemu,console等/init的全局變量。
  • 在模擬器中時(shí),則給字符串添加ro.kernel.的前綴,然后添加到property system中。
  • 函數(shù)export_kernel_boot_props(在/system/core/init/init.c中)

    static void export_kernel_boot_props(void) {char tmp[PROP_VALUE_MAX];const char *pval;unsigned i;struct {const char *src_prop;const char *dest_prop;const char *def_val;} prop_map[] = {{ "ro.boot.serialno", "ro.serialno", "", },{ "ro.boot.mode", "ro.bootmode", "unknown", },{ "ro.boot.baseband", "ro.baseband", "unknown", },{ "ro.boot.bootloader", "ro.bootloader", "unknown", },};for (i = 0; i < ARRAY_SIZE(prop_map); i++) {pval = property_get(prop_map[i].src_prop);property_set(prop_map[i].dest_prop, pval ?: prop_map[i].def_val);}pval = property_get("ro.boot.console");if (pval)strlcpy(console, pval, sizeof(console));/* save a copy for init's usage during boot */strlcpy(bootmode, property_get("ro.bootmode"), sizeof(bootmode));/* if this was given on kernel command line, override what we read* before (e.g. from /proc/cpuinfo), if anything */pval = property_get("ro.boot.hardware");if (pval)strlcpy(hardware, pval, sizeof(hardware));property_set("ro.hardware", hardware);snprintf(tmp, PROP_VALUE_MAX, "%d", revision);property_set("ro.revision", tmp);/* TODO: these are obsolete. We should delete them */if (!strcmp(bootmode,"factory"))property_set("ro.factorytest", "1");else if (!strcmp(bootmode,"factory2"))property_set("ro.factorytest", "2");elseproperty_set("ro.factorytest", "0"); }

    該函數(shù)就是把讀取的kernel cmdline賦值給property system.

    3.3?/init/程序的第三部分

    /*is_charger和bootmode的意義是一樣的,把bootmode轉(zhuǎn)換成is_charger的init變量方便之后的判斷*/is_charger = !strcmp(bootmode, "charger");INFO("property init\n");if (!is_charger)property_load_boot_defaults();//裝載/default.propINFO("reading config file\n");init_parse_config_file("/init.rc");//解析/init.rc文件action_for_each_trigger("early-init", action_add_queue_tail);queue_builtin_action(wait_for_coldboot_done_action, "wait_for_coldboot_done");queue_builtin_action(keychord_init_action, "keychord_init");queue_builtin_action(console_init_action, "console_init");/* execute all the boot actions to get us started */action_for_each_trigger("init", action_add_queue_tail);/* skip mounting filesystems in charger mode */if (!is_charger) {action_for_each_trigger("early-fs", action_add_queue_tail);action_for_each_trigger("fs", action_add_queue_tail);action_for_each_trigger("post-fs", action_add_queue_tail);action_for_each_trigger("post-fs-data", action_add_queue_tail);}queue_builtin_action(property_service_init_action, "property_service_init");queue_builtin_action(signal_init_action, "signal_init");queue_builtin_action(check_startup_action, "check_startup");if (is_charger) {action_for_each_trigger("charger", action_add_queue_tail);} else {action_for_each_trigger("early-boot", action_add_queue_tail);action_for_each_trigger("boot", action_add_queue_tail);}/* run all property triggers based on current state of the properties */queue_builtin_action(queue_property_triggers_action, "queue_property_triggers");

    這里charger mode就是android的充電模式,就是沒(méi)開(kāi)機(jī),屏幕顯示一個(gè)不斷充電的圖標(biāo)的模式。 給函數(shù)做了以下事情(我們假設(shè)是非充電模式):

  • 裝載默認(rèn)的prop文件,在文件一般是/default.prop

  • 解析/init.rc文件,在/init中注冊(cè)Action?和?Service,如何解析/init.rc,之后做詳細(xì)分析。

  • 接下來(lái)的一些系列函數(shù)把從1)init.rc中注冊(cè)的Action以及2)一些Builtin Action加入到Action Queue中,因?yàn)橹挥?strong>Action Queue中的Action才會(huì)被執(zhí)行。執(zhí)行順序是先進(jìn)先出的隊(duì)列模式。

  • 其實(shí)本部分是Android啟動(dòng)的重點(diǎn)內(nèi)容,我會(huì)另開(kāi)一篇文章詳細(xì)分析的。

    3.4?/init/程序的第四部分

    for(;;) {int nr, i, timeout = -1;execute_one_command();restart_processes();if (!property_set_fd_init && get_property_set_fd() > 0) {ufds[fd_count].fd = get_property_set_fd();ufds[fd_count].events = POLLIN;ufds[fd_count].revents = 0;fd_count++;property_set_fd_init = 1;}if (!signal_fd_init && get_signal_fd() > 0) {ufds[fd_count].fd = get_signal_fd();ufds[fd_count].events = POLLIN;ufds[fd_count].revents = 0;fd_count++;signal_fd_init = 1;}if (!keychord_fd_init && get_keychord_fd() > 0) {ufds[fd_count].fd = get_keychord_fd();ufds[fd_count].events = POLLIN;ufds[fd_count].revents = 0;fd_count++;keychord_fd_init = 1;}if (process_needs_restart) {timeout = (process_needs_restart - gettime()) * 1000;if (timeout < 0)timeout = 0;}/*只要還有action要執(zhí)行,timeout就是0,也就是不等待*/if (!action_queue_empty() || cur_action)timeout = 0;nr = poll(ufds, fd_count, timeout);if (nr <= 0)continue;for (i = 0; i < fd_count; i++) {if (ufds[i].revents == POLLIN) {if (ufds[i].fd == get_property_set_fd())handle_property_set_fd();else if (ufds[i].fd == get_keychord_fd())handle_keychord();else if (ufds[i].fd == get_signal_fd())handle_signal();}}}

    /init的最后一部分就是在for循環(huán)中不斷從Action Queue中取得Action來(lái)執(zhí)行Action中的命令。

    execute_one_command();restart_processes();

    在execute_one_command函數(shù)中執(zhí)行Action中的Command(關(guān)于Action的結(jié)構(gòu),我會(huì)在詳細(xì)介紹/init第三部分程序的文章中分析的)。然后在restart_processes中運(yùn)行需要重啟的服務(wù)。

    循環(huán)的最后通過(guò)poll處理property_set_fd、signal_fd、keychord_fd文件發(fā)生的POLLIN事件。這些文件的建立也是通過(guò)之前的Action中執(zhí)行的命令建立的。

    總結(jié)

    以上是生活随笔為你收集整理的Android 启动分析 1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    天天躁日日躁狠狠躁av麻豆 | 天天干,天天草 | 超碰在线观看97 | 国产精品自在线拍国产 | 国产亚洲婷婷免费 | 亚洲婷久久 | 国产色网| 一区二区三区在线观看免费 | 最近中文字幕在线播放 | 99久久久成人国产精品 | 久草在线视频国产 | 日韩精品aaa | 亚州国产精品 | 久久99国产综合精品 | 色欲综合视频天天天 | 9999在线| 久久精品国产免费看久久精品 | 国产小视频免费在线观看 | 久久99亚洲精品久久久久 | 久久艹中文字幕 | 日韩视频a| 久久久久亚洲国产精品 | 黄色av高清 | 日本黄色免费在线 | 亚洲专区免费观看 | 亚洲国产日韩一区 | 99精品视频播放 | 国产在线欧美日韩 | 日韩高清观看 | 久久精品久久精品久久39 | www色网站 | 国产成人久久精品一区二区三区 | 免费网站色 | 5月丁香婷婷综合 | 国产第一页福利影院 | www国产在线 | 欧美男女爱爱视频 | 国产欧美日韩一区 | 成年人免费看 | 免费婷婷 | 天天碰天天操视频 | 久久国产精品精品国产色婷婷 | 天天天色综合 | 中文字幕国内精品 | 国产中文字幕免费 | 激情动态| 久久国产精品久久国产精品 | 黄色网在线免费观看 | 婷婷综合国产 | 亚洲专区在线播放 | 国产黄大片 | 午夜精品久久久久久久久久久久久久 | 久久综合国产伦精品免费 | 国产精品美乳一区二区免费 | 国产aaa毛片 | 在线免费视频一区 | 国产精品欧美一区二区三区不卡 | 成人免费观看a | 草久热 | 99久久精品日本一区二区免费 | 国产在线污| 午夜精品福利一区二区三区蜜桃 | 国产精品一级在线 | 四虎国产精品免费观看视频优播 | 综合久久久 | 色婷婷激情电影 | 免费视频黄色 | 日韩一二区在线观看 | 九九免费在线看完整版 | 国产 精品 资源 | 毛片网站在线观看 | 亚洲成人国产精品 | aaa黄色毛片| 久久久久久久久久久久99 | 亚洲一区二区三区在线看 | 亚洲日本韩国一区二区 | 欧美一级黄大片 | 精品影院一区二区久久久 | 国产精品99久久久久人中文网介绍 | 天天天色综合a | 亚洲精品激情 | 天天射,天天干 | 天天操天天干天天 | 日韩久久在线 | 久久综合九色综合97婷婷女人 | 亚洲国产成人在线播放 | 国产在线精品区 | 免费高清无人区完整版 | 国产91综合一区在线观看 | 亚洲 欧美日韩 国产 中文 | 免费在线激情视频 | 国产精品久久久一区二区三区网站 | 国产美女免费看 | 国产丝袜制服在线 | 久久久久国产a免费观看rela | 在线免费观看黄色 | 日韩激情视频在线观看 | 天天操天天色天天 | 久久精品一区二区国产 | 国产一区在线不卡 | 午夜精品一区二区三区免费 | 国产精彩视频 | 在线日韩一区 | 国产一二三四在线视频 | 亚洲综合网站在线观看 | 97国产一区二区 | 久久一久久 | 在线免费黄色 | 久久99热这里只有精品 | 午夜性盈盈 | 色狠狠久久av五月综合 | 丁香六月婷婷综合 | 91麻豆精品国产91久久久久久久久 | 99久久久久成人国产免费 | 欧美国产日韩在线视频 | 国内精品久久久久久久久久久久 | 99爱精品视频| 久草在线在线视频 | 久久免费黄色 | 日本中文字幕在线观看 | 国产精品一区二区三区久久久 | 精品女同一区二区三区在线观看 | 欧美性大战久久久久 | 在线一二三区 | 色综合天天综合在线视频 | 婷婷精品国产欧美精品亚洲人人爽 | 香蕉久久国产 | www五月婷婷 | 精品爱爱 | 蜜臀av一区| 天天鲁一鲁摸一摸爽一爽 | 欧美日韩在线免费观看视频 | 国产精品久久久久久久久久ktv | 国产手机在线播放 | 色午夜| 中文字幕在线观看日本 | 蜜臀久久99精品久久久无需会员 | 91爱爱视频 | 欧美亚洲xxx| 国产呻吟在线 | 久久精品99久久 | 国产精品久久久久久久久久久免费看 | www.亚洲黄色 | 国产一级大片免费看 | 日韩av免费一区二区 | 日日爽视频 | 在线精品观看国产 | 久操久| av片在线观看 | 伊人干综合 | 亚洲激情婷婷 | 欧美二区在线播放 | 国产精品一区二区久久精品爱涩 | 欧亚日韩精品一区二区在线 | 色噜噜日韩精品欧美一区二区 | 中文字幕免费中文 | 亚洲天堂香蕉 | 91免费视频网站在线观看 | 天天色天天射天天干 | 久草在线免费看视频 | 精品在线视频一区二区三区 | 色六月婷婷 | 免费精品视频在线 | 99精品国产aⅴ | 国产精品一区二区在线观看免费 | 天天色天天干天天色 | 日韩 在线a| 免费高清在线视频一区· | 亚洲最新在线视频 | 成年人黄色大片在线 | 亚洲一区美女视频在线观看免费 | 99热精品在线观看 | 一区二区三区久久精品 | 日日夜夜中文字幕 | 国产成人99久久亚洲综合精品 | 久久99久久99精品免观看粉嫩 | 最新日本中文字幕 | 久久99精品国产一区二区三区 | www国产在线 | 久久久久国产精品免费 | 91九色蝌蚪国产 | 97成人在线视频 | 蜜桃av久久久亚洲精品 | 天天色.com| 超碰激情在线 | www.午夜| 精品一区二区在线观看 | 日韩欧美久久 | 欧美另类69 | 久草视频免费看 | 亚洲精品9| 欧美日韩免费一区二区三区 | 波多野结衣在线视频免费观看 | 日韩精品一区二区三区丰满 | 国产视频在线免费观看 | 99视频偷窥在线精品国自产拍 | 久久免费国产精品1 | 天天干天天操av | 欧美精品三级 | 91在线色 | 国产无遮挡又黄又爽馒头漫画 | 亚洲国产精品成人va在线观看 | 中文理论片 | 国产成人精品亚洲精品 | 香蕉影视在线观看 | 免费热情视频 | 久久久高清 | 久久99久久99精品中文字幕 | 欧美在线视频第一页 | 成人三级视频 | 午夜在线免费观看 | 国产免费视频一区二区裸体 | 91豆麻精品91久久久久久 | 国产成人香蕉 | 亚洲综合视频网 | 一区二区久久久久 | 美女一区网站 | 色偷偷97 | 国产精品18久久久久久久网站 | 日本黄色黄网站 | 在线观看黄色av | 亚洲精品自拍视频在线观看 | 久久久免费看视频 | 国产免费人成xvideos视频 | 亚洲精品88欧美一区二区 | 久久久午夜精品理论片中文字幕 | 超碰在线1 | 国产一级免费片 | 在线看成人 | 日韩黄色免费电影 | 亚洲高清在线视频 | 中文字幕av有码 | 亚洲三级性片 | 久久人人97超碰com | 国产97碰免费视频 | 人人超碰在线 | 夜夜操狠狠干 | 香蕉视频国产在线观看 | 久久国产精品久久国产精品 | 九九免费在线看完整版 | 中文资源在线官网 | 91在线视频免费播放 | 国产精品一区在线播放 | 日韩精品视频第一页 | 2019天天干夜夜操 | 亚洲天堂网站视频 | 久久久国产精品网站 | 午夜精品成人一区二区三区 | 人人视频网站 | 成人av.com| 国产精品久久久久久久久久久久午 | 日韩精品久久久久久久电影99爱 | 国产精品永久 | 美女网站视频免费黄 | 色婷婷综合成人av | 国产精品一码二码三码在线 | 摸bbb搡bbb搡bbbb | 国产精品久久久久久一区二区 | 久草视频网 | 免费观看v片在线观看 | 欧美精品xxx | 欧美另类一二三四区 | 久久在线一区 | 国产精品一区二区在线免费观看 | 国产精品白丝jk白祙 | 在线免费三级 | 成人久久视频 | 久久公开视频 | 亚洲不卡av一区二区三区 | 午夜 免费 | 久久久久久久久黄色 | 在线视频 影院 | 国产精品高清在线观看 | 成人午夜电影网站 | 久草网首页 | 久久国产精品系列 | 国产va精品免费观看 | 超碰免费av | 久久九九免费 | 亚洲精品视频免费在线 | 日日爱999| 国产精品成人自产拍在线观看 | 91九色国产 | 婷婷精品进入 | 国产.精品.日韩.另类.中文.在线.播放 | 国产一性一爱一乱一交 | 国产精品片 | 国产高清在线免费视频 | 美女免费视频一区二区 | 99欧美精品| 中文字幕五区 | 亚洲一区二区视频 | 日韩欧美黄色网址 | 片网站| 成人黄色国产 | 国产精品你懂的在线观看 | 国产精品亚洲综合久久 | 日本字幕网 | 日韩视频中文字幕在线观看 | 日本久久电影网 | 国产乱老熟视频网88av | 男女拍拍免费视频 | 欧美日韩超碰 | 日韩欧美专区 | 免费中文字幕 | 六月婷婷久香在线视频 | 国产精品二区在线观看 | 国产精品一区二区三区免费视频 | 精品国产一二三四区 | 在线草 | 麻豆果冻剧传媒在线播放 | 少妇bbbb搡bbbb搡bbbb | 黄色电影在线免费观看 | 色多多污污在线观看 | 蜜臀av性久久久久av蜜臀妖精 | 亚洲免费精品视频 | 91av视频在线观看 | 欧美久久久久久久 | a在线免费 | 久久久久久久久久亚洲精品 | 久久人网 | 国产99久久久久久免费看 | 久久精品久久精品久久 | 国产精品完整版 | 黄色亚洲在线 | 免费三及片 | 久久精视频 | 97成人免费| 久久久穴 | a在线免费观看视频 | 91传媒在线播放 | 国产亚洲精品久久久网站好莱 | 国产黄色精品在线 | 99久久99久久精品国产片果冰 | 日韩欧美区 | 免费男女羞羞的视频网站中文字幕 | av网站在线观看免费 | 色一级片| 午夜国产在线观看 | a级国产乱理伦片在线观看 亚洲3级 | 玖玖爱在线观看 | 狠狠干天天操 | 中文字幕av网站 | 九九热在线播放 | 中文字幕一区在线观看视频 | 片黄色毛片黄色毛片 | 黄色一级大片在线观看 | 久久色亚洲| 伊人射 | 天天干夜夜 | 国产成人精品一区二三区 | 色多多污污 | www.99久久.com | 精品国产诱惑 | 国产精品毛片一区视频播不卡 | 亚洲春色奇米影视 | 噜噜色官网 | 97视频人人| 亚洲欧美日韩国产一区二区三区 | 97人人模人人爽人人喊网 | 国产亚洲欧美精品久久久久久 | 亚洲永久国产精品 | 国产中文字幕视频在线观看 | 黄色三级网站在线观看 | 精品一区免费 | 国产久草在线 | 27xxoo无遮挡动态视频 | 毛片美女网站 | 特级黄色片免费看 | 亚洲黄在线观看 | 欧美一区在线观看视频 | 婷婷激情站 | 亚洲一级二级三级 | 999日韩 | 国产专区视频在线观看 | 久久久久女教师免费一区 | 国产成人精品一区二区在线 | 热久久这里只有精品 | 99在线播放 | 免费av电影网站 | 日本性生活一级片 | 久久久免费看 | 91精品国产综合久久福利不卡 | 国产精品久久久久久欧美 | 国产剧在线观看片 | 四虎成人av| 成人免费观看大片 | 国产精品久久久久一区二区国产 | 精品久久久久久亚洲综合网站 | 最新中文在线视频 | 国产成人香蕉 | av黄色免费网站 | 国产区在线视频 | 欧美中文字幕久久 | 久久免费资源 | 亚洲另类视频 | 中文字幕观看视频 | 中文字幕在线观看第二页 | 久热久草在线 | 国产精品一区二区在线观看免费 | av电影免费在线看 | av免费观看网址 | 亚洲精品啊啊啊 | 欧美性久久久久久 | 色播99| 日韩视频区 | 激情网在线观看 | 国产成人久久久久 | 国产精品毛片久久久久久久 | 97国产超碰在线 | 国产精品第10页 | 亚洲一区二区观看 | 国产一级在线 | 91色九色 | 91麻豆精品国产91久久久久久 | 亚洲成人高清在线 | 青青河边草观看完整版高清 | 中文字幕 91| 欧美一级免费片 | 国产自产高清不卡 | 夜夜操网| 蜜臀一区二区三区精品免费视频 | 免费看污片 | 中文字幕4 | 99亚洲视频 | 久久免费视频在线 | 五月天电影免费在线观看一区 | 激情丁香 | 中文字幕九九 | 亚洲欧美怡红院 | 91九色视频在线播放 | av一二三区 | 国产黄色成人 | 99视频精品| 人人狠狠综合久久亚洲婷 | 久久躁日日躁aaaaxxxx | 成人黄色片免费 | 久久久久久久久久久影院 | 黄色毛片视频 | 亚洲精品美女久久 | 免费中午字幕无吗 | av三级在线播放 | av在线播放一区二区三区 | 久久久www成人免费精品 | 久久午夜色播影院免费高清 | 欧美一区二区精美视频 | 日韩视频一 | 国产专区一 | 99久热在线精品 | 欧美一区二区三区在线 | 成人黄视频 | 久久久69| 91精品国自产在线偷拍蜜桃 | 91香蕉亚洲精品 | 亚洲在线视频网站 | 久久这里只有精品首页 | 国产精品18毛片一区二区 | 狠狠综合 | 久久高清精品 | 美女黄久久 | 久久精品国亚洲 | 久久久久成人免费 | 波多野结衣视频一区二区 | 2023国产精品自产拍在线观看 | 天天干天天拍天天操天天拍 | 日韩三级av | 九色精品免费永久在线 | 成人欧美一区二区三区黑人麻豆 | 国产精品欧美久久久久无广告 | 亚洲精品影视 | 91av成人 | 久久国产精品久久久 | 人交video另类hd | 91高清在线看 | 日韩毛片一区 | av在线网站免费观看 | 美女网站视频色 | 午夜婷婷综合 | 五月婷婷丁香色 | 九九热免费精品视频 | 综合久久婷婷 | 探花国产在线 | 91成版人在线观看入口 | 国产日产亚洲精华av | 成人网看片 | 四虎影视www | 国产一区二区三精品久久久无广告 | 亚洲黄色免费 | 欧美日韩久久不卡 | 国产一区二区在线播放 | 麻豆国产网站入口 | 又黄又爽又刺激视频 | 韩国精品视频在线观看 | 天天艹 | 久久精视频| www久久久久| 99热在线观看免费 | 丁香婷婷激情国产高清秒播 | 日韩av在线免费看 | 国内精品久久久久久久影视简单 | 人人添人人澡人人澡人人人爽 | 成人黄色毛片视频 | 久久久2o19精品 | 久草免费看 | 久草视频在线免费播放 | 国产最新网站 | 成人av免费在线看 | 久久人网 | 99久视频| 九九热国产视频 | 日日射天天射 | 亚洲精品影视在线观看 | 婷婷色网视频在线播放 | 中文字幕第一页在线视频 | 国产理论一区二区三区 | 青春草免费视频 | 中文字幕精品在线 | 国产精品九九久久久久久久 | 97色在线视频 | free,性欧美| 午夜久久久久久久久久久 | 手机在线日韩视频 | 91成人免费电影 | 国产一区二区中文字幕 | 激情五月网站 | 黄色成人av在线 | 99久久网站 | 99在线观看视频网站 | 国语对白少妇爽91 | 偷拍视频一区 | 亚洲综合五月 | 日韩一区二区三区不卡 | 国产精品男女 | 欧美另类xxxx | 人人揉人人揉人人揉人人揉97 | 激情小说网站亚洲综合网 | 在线观看视频免费播放 | 国产精品专区在线 | 日韩mv欧美mv国产精品 | 九九热av | 亚洲九九九在线观看 | 韩国av一区二区 | 色噜噜在线观看 | 亚洲精品一区二区在线观看 | 久久免费黄色网址 | 香蕉视频网址 | 免费看一级特黄a大片 | 日日婷婷夜日日天干 | 91久久爱热色涩涩 | 国产成人精品综合 | 日韩免费观看一区二区三区 | 91插插影库 | 久久久黄色av| 99久久精品国产毛片 | 国产婷婷 | 欧美一级久久 | 日韩理论在线视频 | 久久久久久久久毛片精品 | 菠萝菠萝蜜在线播放 | 色香com. | 在线播放精品一区二区三区 | av不卡免费看 | 久久久久久国产精品美女 | 青青草久草在线 | 狠狠的操狠狠的干 | 99精品视频在线看 | 97色免费视频| 在线观看国产v片 | 91av资源在线 | 91成人蝌蚪 | 久久毛片高清国产 | 欧洲色吧| 国产男女无遮挡猛进猛出在线观看 | 美女黄频| 久久色亚洲 | 久久久精品影视 | 国内一级片在线观看 | 91精品对白一区国产伦 | 午夜黄色影院 | 婷婷伊人综合亚洲综合网 | 国产日本亚洲高清 | 欧美另类一二三四区 | 91在线播放国产 | 免费观看一级 | 国产精品免费视频观看 | 免费网站在线观看人 | 国产特级毛片aaaaaa高清 | 久热这里有精品 | 久久久久久久久久久综合 | 亚洲1区 在线 | 国产男女无遮挡猛进猛出在线观看 | 黄色av三级在线 | 国产一区二区三区免费在线 | 999久久久久久久久久久 | 亚洲精品456在线播放第一页 | 91热在线 | 欧美激情精品一区 | 涩涩资源网 | 国产精品久久麻豆 | 人人插人人做 | 国产精品九色 | 久久成人资源 | 中文字幕乱码日本亚洲一区二区 | 国产精品区免费视频 | 欧美国产日韩在线视频 | 九色福利视频 | 成人黄色中文字幕 | 天天操天天干天天综合网 | 国产不卡毛片 | 亚洲最新av在线 | 国产一级免费播放 | 亚洲成人一区 | 久久综合国产伦精品免费 | 日本特黄特色aaa大片免费 | 欧美日视频| 黄色av网站在线观看 | 欧美日韩不卡在线观看 | 99久久精品国产免费看不卡 | 高清av中文字幕 | 天天碰天天操视频 | 国产精品大片在线观看 | 国产精品久久久久久久久免费看 | 国产精品久久久久久av | a级国产乱理伦片在线播放 久久久久国产精品一区 | 久草在线免费新视频 | 美女视频一区 | www国产精品com | 国产一区二区三区免费观看视频 | 碰天天操天天 | 亚洲国产三级在线观看 | 日韩久久视频 | 91粉色视频 | 日本中文字幕久久 | 99久久久久久国产精品 | 超碰在线成人 | 深夜免费小视频 | 日韩av黄| 久草在线视频国产 | 91在线亚洲 | 91福利视频免费 | 超碰在线人人爱 | 欧美最猛性xxxxx(亚洲精品) | 最新成人av| 久久精品电影网 | 欧美日韩一区二区在线 | 免费a级毛片在线看 | 人人干天天干 | 91传媒在线看 | 久久国产91| 天天曰视频 | 国产成本人视频在线观看 | 精品在线看 | 久草在线综合 | 亚洲精品videossex少妇 | 激情五月婷婷综合网 | 日韩网站在线免费观看 | 成年人在线观看视频免费 | 亚洲精品久久久久中文字幕二区 | 国产精品久久麻豆 | 国产一级精品绿帽视频 | 日本精品一区二区三区在线播放视频 | 国产精品女教师 | 国产在线精品二区 | 色资源在线 | 成人免费一区二区三区在线观看 | 国产在线观看一区 | 国产一区视频在线播放 | 69绿帽绿奴3pvideos | 在线观看免费黄视频 | 色网站在线免费观看 | 亚洲人人射 | 91天天操 | 久99久中文字幕在线 | 久久精品国产精品亚洲 | 伊人手机在线 | 亚洲美女在线国产 | 91成人在线观看喷潮 | 亚洲激情p | 激情视频在线高清看 | 免费特级黄毛片 | 最近日韩中文字幕中文 | 在线观看一 | 亚洲精品久久久久久国 | 色在线视频 | 一级黄色片在线播放 | 亚洲欧美视频在线播放 | 成人av在线看| 正在播放久久 | 久久精品www人人爽人人 | 日韩在线观看视频一区二区三区 | 久草在线免费看视频 | 日本精品小视频 | 天天爱天天射天天干天天 | 九色在线 | av九九九 | 亚洲人天堂 | 色午夜影院 | 在线观看国产福利片 | 国产一级免费在线观看 | 黄色av在 | 亚洲2019精品 | 毛片网站在线观看 | 国产中文欧美日韩在线 | 91麻豆精品国产午夜天堂 | 亚洲免费av在线播放 | 国产99精品在线观看 | 99精品在线视频观看 | 欧美小视频在线观看 | 中文字幕麻豆 | 欧美久久综合 | 精品国产理论片 | 最新av网站在线观看 | 干 操 插 | 色吊丝在线永久观看最新版本 | 亚洲高清网站 | 婷婷丁香国产 | 狠狠色狠狠色 | 综合中文字幕 | 在线 国产 亚洲 欧美 | 92国产精品久久久久首页 | 日本xxxxav | 在线免费观看国产 | 黄色91在线观看 | 中文字幕日韩无 | 天天射综合网站 | 日韩在线精品一区 | 激情网综合| 插综合网 | 99r精品视频在线观看 | 天天插天天爱 | 国产精品一区二区精品视频免费看 | 91成人精品| 69中文字幕 | 樱空桃av| 97超碰影视 | 操高跟美女 | 色欧美视频 | 色天堂在线视频 | 国产精品不卡在线观看 | 久草精品视频在线播放 | 麻豆传媒电影在线观看 | 亚洲一级二级 | 在线成人免费av | 日本护士三级少妇三级999 | 日本精品二区 | 精品国产免费人成在线观看 | 黄污视频网站 | 日韩黄色大片在线观看 | 2019中文字幕网站 | 亚洲天堂首页 | 午夜视频在线观看欧美 | 在线免费观看麻豆 | 国产精品久久片 | 中文字幕亚洲精品在线观看 | 五月天六月婷婷 | 激情久久网 | 国产一区二区高清 | av字幕在线 | 欧美性生活一级片 | 日韩精品久久久久久久电影99爱 | 日韩伦理片一区二区三区 | 久久精品综合视频 | 91精品啪在线观看国产 | 91亚洲精品在线观看 | 婷婷色五 | 夜夜躁天天躁很躁波 | 国产丝袜| 国产性天天综合网 | 九九热免费精品视频 | 一区二区激情 | 国产一区二区三区在线 | 日韩理论在线视频 | 精品国产资源 | 婷婷深爱| 亚洲激情久久 | 国产亚洲久一区二区 | www色av| 国产成人一级电影 | 懂色av一区二区三区蜜臀 | 欧美 国产 视频 | 日韩视频在线观看免费 | 韩国精品在线观看 | 精品久久久免费 | 天天操天天射天天爽 | 婷婷av网 | 99在线精品视频 | 97色婷婷成人综合在线观看 | 香蕉视频91| 三级黄色网址 | 99久久免费看 | 日韩欧美综合在线视频 | 成人网看片 | 天堂在线视频中文网 | 激情av综合| 手机在线黄色网址 | 日本动漫做毛片一区二区 | 国产99爱 | 国产黄色在线看 | 黄色网址在线播放 | 黄色的网站免费看 | 欧美激情精品久久久久 | 亚洲午夜久久久影院 | 久久久免费观看完整版 | 日日干综合 | 欧美性色综合网站 | www.xxxx欧美| 国产精品久久久久久超碰 | 久久狠狠一本精品综合网 | 久久精品视频日本 | 手机在线永久免费观看av片 | 成人试看120秒 | www.夜夜操| 中文字幕在线中文 | 欧美成人999| 玖玖在线视频观看 | 欧美一级电影免费观看 | av在线不卡观看 | 97电院网手机版 | 成人播放器 | 毛片1000部免费看 | 国产免费又粗又猛又爽 | 九九视频在线观看视频6 | 特级西西人体444是什么意思 | 免费在线视频一区二区 | 日日草视频 | 久久综合五月婷婷 | 国产视频在线观看一区 | av福利网址导航 | 97视频免费| 亚洲理论电影网 | 国产精品九色 | a天堂最新版中文在线地址 久久99久久精品国产 | 操碰av | 不卡av在线免费观看 | 日韩欧美国产精品 | 欧美日韩一区二区三区不卡 | 日韩精品黄 | 欧美激情片在线观看 | 人人讲 | 免费黄在线观看 | 91手机电视 | 国产成人精品亚洲日本在线观看 | 91精品国产99久久久久 | 国产精品久久久久久久久久直播 | 西西444www高清大胆 | 成人国产精品免费 | 欧美一区二区在线 | 九九精品在线观看 | av中文字幕免费在线观看 | 看av免费网站 | 中文字幕丝袜制服 | 狠狠色噜噜狠狠狠合久 | 国产精品电影在线 | 九九九九热精品免费视频点播观看 | 四虎影视成人永久免费观看亚洲欧美 | 超碰在线观看av.com | 伊人av综合| 最近久乱中文字幕 | 91在线网站 | 91麻豆精品国产91久久久久 | 中文字幕中文字幕 | 亚洲日本中文字幕在线观看 | 黄色av一区二区 | 国产字幕在线看 | 精品国产欧美 | 久久这里 | 亚洲精品视频在线观看免费视频 | 丁香一区二区 | 婷婷亚洲综合五月天小说 | 日本久草电影 | 午夜视频在线观看网站 | 午夜精品一区二区国产 | 在线观看中文字幕 | 国产精品精 | 国产成人精品亚洲 | 99精品免费久久久久久日本 | 成人影片在线免费观看 | 青春草免费视频 | 玖玖在线播放 | 亚洲精品中文在线资源 | 久久午夜鲁丝片 | 成人毛片久久 | 久久久免费精品国产一区二区 | 国产天天爽 | 久久久综合香蕉尹人综合网 | 国产麻豆果冻传媒在线观看 | 国产视频日韩视频欧美视频 | 韩国av免费看 | 天天干天天操天天做 | 手机av片 | 大型av综合网站 | 天天操天天添天天吹 | 99视频偷窥在线精品国自产拍 | 欧美激情片在线观看 | 激情丁香在线 | 精品久久国产 | 天天爱天天 | 在线亚洲观看 | 香蕉影院在线播放 | 激情黄色av | 亚洲国产小视频在线观看 | 日b视频在线观看网址 | 五月天国产 | www国产精品com| 色在线亚洲 | 99成人在线视频 | 欧美一性一交一乱 | 最近免费中文字幕大全高清10 | 91av国产视频| 国产午夜精品福利视频 | 色综合久久99 | 国产成人在线免费观看 | 久久99久久精品 | 在线观看午夜av | 亚洲综合在线一区二区三区 | 国产高清视频色在线www | 黄a在线观看 | 天天操天操 | 色综合久久悠悠 | 99久久久国产精品美女 | 久99久精品视频免费观看 | 国产一区二区午夜 | 在线观看亚洲国产 | 黄色成人影院 | 国产日韩欧美精品在线观看 | 久久久久综合 | 亚洲日本色 | 国产免费资源 | 国产成人在线免费观看 | 中文字幕在线观看av | 欧美a视频| 免费色视频在线 | 欧美一级免费片 | 亚洲 在线 | 日韩视频精品在线 | 狠日日| 99久久精品日本一区二区免费 | 综合色中文 | 在线观看av麻豆 | 91av在线免费播放 | 欧美极品少妇xbxb性爽爽视频 | 综合色影院 | 久久免费国产视频 | 婷婷六月天天 | 国产日韩精品欧美 | 成人一级黄色片 | 伊人婷婷色 | 精品久久久久久久久久久久久久久久 | 娇妻呻吟一区二区三区 | av资源中文字幕 | 国产精品久久久久久久久久久久午夜 | 96视频在线 | 久久爱www.| 亚洲高清网站 | 精品成人国产 | 天天综合精品 | 天天摸日日摸人人看 | 91av电影在线观看 | 麻豆小视频在线观看 | 免费看色视频 | 久亚洲精品 | 日韩日韩日韩日韩 | 一区二区精品视频 | 久久久久免费精品视频 | 成人av电影在线播放 | 国产 日韩 欧美 自拍 | 免费高清在线一区 | 伊人久操 | 91视频啊啊啊 | 国产区精品视频 | 激情五月在线视频 | 中文字幕av专区 | 涩涩资源网 | 91在线视频免费观看 | 免费av观看网站 | av最新资源 | 激情伊人| 最新av电影网站 | 在线看国产日韩 | 91丨九色丨首页 | 九九九免费视频 | 国产精品久久久久久久久岛 | 91看片在线免费观看 | 五月天婷婷在线视频 | 五月天婷亚洲天综合网鲁鲁鲁 | 色婷婷福利 | 在线观看黄 | 人人澡人人爽欧一区 | 久久久久亚洲精品成人网小说 | 黄色app网站在线观看 | 亚洲精品大全 | 丁香免费视频 | 亚洲精品视频第一页 | 亚洲国产成人精品电影在线观看 | 国产99精品| 天天综合入口 | 九九热中文字幕 | 亚洲高清视频在线播放 |