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

歡迎訪問 生活随笔!

生活随笔

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

linux

[转帖]关于Linux下的icotl函数

發(fā)布時間:2023/12/20 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转帖]关于Linux下的icotl函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

關(guān)于Linux下的icotl函數(shù)

?

最近接觸android開發(fā),因?yàn)橛袝r間所以就關(guān)注了下android的源碼,在跟蹤源碼過程中到最后都會遇到icotl函數(shù),雖然在Symbian中曾經(jīng)遇到過RSocketicotl函數(shù),但是當(dāng)時沒有細(xì)究,今天有時間就搜索了下,原來這個函數(shù)是跟驅(qū)動相關(guān)的。下面這篇文章在很多博客網(wǎng)站都能看到,到底是誰寫的就不細(xì)究了,但是他讓我了解了這個函數(shù)的由來。下面就是轉(zhuǎn)帖。

?

我這里說的ioctl函數(shù)是在驅(qū)動程序里的,因?yàn)槲也恢肋€有沒有別的場合用到了ioctl 所以就規(guī)定了我們討論的范圍。為什么要寫篇文章呢,是因?yàn)槲仪耙魂囎颖?/span>ioctl給搞混了,這幾天才弄明白它,于是在這里清理一下頭腦。

一、 什么是ioctl

ioctl是設(shè)備驅(qū)動程序中對設(shè)備的I/O通道進(jìn)行管理的函數(shù)。所謂對I/O通道進(jìn)行管理,就是對設(shè)備的一些特性進(jìn)行控制,例如串口的傳輸波特率、馬達(dá)的轉(zhuǎn)速等等。它的調(diào)用個數(shù)如下:

int ioctl(int fd, ind cmd, )

其中fd就是用戶程序打開設(shè)備時使用open函數(shù)返回的文件標(biāo)示符,cmd就是用戶程序?qū)υO(shè)備的控制命令,至于后面的省略號,那是一些補(bǔ)充參數(shù),一般最多一個,有或沒有是和cmd的意義相關(guān)的。

ioctl函數(shù)是文件結(jié)構(gòu)中的一個屬性分量,就是說如果你的驅(qū)動程序提供了對ioctl的支持,用戶就可以在用戶程序中使用ioctl函數(shù)控制設(shè)備的I/O通道。

二、 ioctl的必要性

如果不用ioctl的話,也可以實(shí)現(xiàn)對設(shè)備I/O通道的控制,但那就是蠻擰了。例如,我們可以在驅(qū)動程序中實(shí)現(xiàn)write的時候檢查一下是否有特殊約定的數(shù)據(jù)流通過,如果有的話,那么后面就跟著控制命令(一般在socket編程中常常這樣做)。但是如果這樣做的話,會導(dǎo)致代碼分工不明,程序結(jié)構(gòu)混亂,程序員自己也會頭昏眼花的。

所以,我們就使用ioctl來實(shí)現(xiàn)控制的功能。要記住,用戶程序所作的只是通過命令碼告訴驅(qū)動程序它想做什么,至于怎么解釋這些命令和怎么實(shí)現(xiàn)這些命令,這都是驅(qū)動程序要做的事情。

三、 ioctl如何實(shí)現(xiàn)

這是一個很麻煩的問題,我是能省則省。要說清楚它,沒有四五千字是不行的,所以我這里是不可能把它說得非常清楚了,不過如果有讀者對用戶程序怎么和驅(qū)動程序聯(lián)系起來感興趣的話,可以看我前一陣子寫的《write的奧秘》。讀者只要把write換成ioctl,就知道用戶程序的ioctl是怎么和驅(qū)動程序中的ioctl實(shí)現(xiàn)聯(lián)系在一起的了。

我這里說一個大概思路,因?yàn)槲矣X得《Linux設(shè)備驅(qū)動程序》這本書已經(jīng)說的非常清楚了,但是得化一些時間來看。

在驅(qū)動程序中實(shí)現(xiàn)的ioctl函數(shù)體內(nèi),實(shí)際上是有一個switch{case}結(jié)構(gòu),每一個case對應(yīng)一個命令碼,做出一些相應(yīng)的操作。怎么實(shí)現(xiàn)這些操作,這是每一個程序員自己的事情,因?yàn)樵O(shè)備都是特定的,這里也沒法說。關(guān)鍵在于怎么樣組織命令碼,因?yàn)樵?/span>ioctl中命令碼是唯一聯(lián)系用戶程序命令和驅(qū)動程序支持的途徑。

命令碼的組織是有一些講究的,因?yàn)槲覀円欢ㄒ龅矫詈驮O(shè)備是一一對應(yīng)的,這樣才不會將正確的命令發(fā)給錯誤的設(shè)備,或者是把錯誤的命令發(fā)給正確的設(shè)備,或者是把錯誤的命令發(fā)給錯誤的設(shè)備。這些錯誤都會導(dǎo)致不可預(yù)料的事情發(fā)生,而當(dāng)程序員發(fā)現(xiàn)了這些奇怪的事情的時候,再來調(diào)試程序查找錯誤,那將是非常困難的事情。

所以在Linux核心中是這樣定義一個命令碼的:

設(shè)備類型

序列號

方向

數(shù)據(jù)尺寸

8 bit

8 bit

2 bit

8~14bit

這樣一來,一個命令就變成了一個整數(shù)形式的命令碼。但是命令碼非常的不直觀,所以Linux Kernel中提供了一些宏,這些宏可根據(jù)便于理解的字符串生成命令碼,或者是從命令碼得到一些用戶可以理解的字符串以標(biāo)明這個命令對應(yīng)的設(shè)備類型、設(shè)備序列號、數(shù)據(jù)傳送方向和數(shù)據(jù)傳輸尺寸。

這些宏我就不在這里解釋了,具體的形式請讀者察看Linux核心源代碼中的和,文件里給除了這些宏完整的定義。這里我只多說一個地方,那就是"幻數(shù)"

幻數(shù)是一個字母,數(shù)據(jù)長度也是8,所以就用一個特定的字母來標(biāo)明設(shè)備類型,這和用一個數(shù)字是一樣的,只是更加利于記憶和理解。就是這樣,再沒有更復(fù)雜的了。

更多的說了也沒有,讀者還是看一看源代碼吧,推薦各位閱讀《Linux 設(shè)備驅(qū)動程序》所帶源代碼中的short一例,因?yàn)樗容^短小,功能比較簡單,可以看明白ioctl的功能和細(xì)節(jié)。

四、 cmd參數(shù)如何得出

這里確實(shí)要說一說,cmd參數(shù)在用戶程序端由一些宏根據(jù)設(shè)備類型、序列號、傳送方向、數(shù)據(jù)尺寸等生成,這個整數(shù)通過系統(tǒng)調(diào)用傳遞到內(nèi)核中的驅(qū)動程序,再由驅(qū)動程序使用解碼宏從這個整數(shù)中得到設(shè)備的類型、序列號、傳送方向、數(shù)據(jù)尺寸等信息,然后通過switch{case}結(jié)構(gòu)進(jìn)行相應(yīng)的操作。

要透徹理解,只能是通過閱讀源代碼,我這篇文章實(shí)際上只是一個引子。Cmd參數(shù)的組織還是比較復(fù)雜的,我認(rèn)為要搞熟它還是得花不少時間的,但是這是值得的,驅(qū)動程序中最難的是對中斷的理解。

五、 小結(jié)

ioctl其實(shí)沒有什么很難的東西需要理解,關(guān)鍵是理解cmd命令碼是怎么在用戶程序里生成并在驅(qū)動程序里解析的,程序員最主要的工作量在switch{case}結(jié)構(gòu)中,因?yàn)閷υO(shè)備的I/O控制都是通過這一部分的代碼實(shí)現(xiàn)的。

?

通過上述轉(zhuǎn)帖,大概知道了ioctl的來龍去脈,如果能來幾個實(shí)例可能相對來說更能讓人接受些,這不也有人找了些例子,具體如下例轉(zhuǎn)帖所述。

linux系統(tǒng)ioctl使用示例

These were writed and collected by kf701,

you can use and modify them but NO WARRANTY.

Contact with me : kf_701@21cn.com

程序1:檢測接口的 inet_addr,netmask,broad_addr

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#include <errno.h>

#include <unistd.h>

#include <sys/types.h>

#include <sys/socket.h>

#include <netinet/in.h>

#include <arpa/inet.h>

#include <sys/ioctl.h>

#include <net/if.h>

?

static void usage()

{

?????? printf("usage : ipconfig interface \n");

?????? exit(0);

}

int main(int argc,char **argv)

{

?????? struct sockaddr_in *addr;

?????? struct ifreq ifr;

?????? char *name,*address;

?????? int sockfd;

??????

?????? if(argc != 2)

????????????? usage();

?????? else

????????????? name = argv[1];

?

?????? sockfd = socket(AF_INET,SOCK_DGRAM,0);

?????? strncpy(ifr.ifr_name,name,IFNAMSIZ-1);

??????

?????? if(ioctl(sockfd,SIOCGIFADDR,&ifr) == -1)

????????????? perror("ioctl error"),exit(1);

??????

?????? addr = (struct sockaddr_in *)&(ifr.ifr_addr);

?????? address = inet_ntoa(addr->sin_addr);

?????? printf("inet addr: %s ",address);

??????

?????? if(ioctl(sockfd,SIOCGIFBRDADDR,&ifr) == -1)

????????????? perror("ioctl error"),exit(1);

??????

?????? addr = (struct sockaddr_in *)&ifr.ifr_broadaddr;

?????? address = inet_ntoa(addr->sin_addr);

?????? printf("broad addr: %s ",address);

??????

?????? if(ioctl(sockfd,SIOCGIFNETMASK,&ifr) == -1)

???????????????????? perror("ioctl error"),exit(1);

??????

?????? addr = (struct sockaddr_in *)&ifr.ifr_addr;

?????? address = inet_ntoa(addr->sin_addr);

?????? printf("inet mask: %s ",address);

?????? printf("\n");

?????? exit(0);

}

?

程序2:檢查接口的物理連接是否正常

#include <stdio.h>

#include <string.h>

#include <errno.h>

#include <fcntl.h>

#include <getopt.h>

#include <sys/socket.h>

#include <sys/ioctl.h>

#include <net/if.h>

#include <stdlib.h>

#include <unistd.h>

typedef unsigned short u16;

typedef unsigned int u32;

typedef unsigned char u8;

#include <linux/ethtool.h>

#include <linux/sockios.h>

int detect_mii(int skfd, char *ifname)

{

?????? struct ifreq ifr;

?????? u16 *data, mii_val;

?????? unsigned phy_id;

?????? /* Get the vitals from the interface. */

?????? strncpy(ifr.ifr_name, ifname, IFNAMSIZ);

?????? if (ioctl(skfd, SIOCGMIIPHY, &ifr) < 0)

?????? {

????????????? fprintf(stderr, "SIOCGMIIPHY on %s failed: %s\n", ifname,

????????????? strerror(errno));

????????????? (void) close(skfd);

????????????? return 2;

?????? }

?

?????? data = (u16 *)(&ifr.ifr_data);

?????? phy_id = data[0];

?????? data[1] = 1;

?????? if (ioctl(skfd, SIOCGMIIREG, &ifr) < 0)

?????? {

????????????? fprintf(stderr, "SIOCGMIIREG on %s failed: %s\n", ifr.ifr_name,

????????????? strerror(errno));

????????????? return 2;

?????? }

?

?????? mii_val = data[3];

?????? return(((mii_val & 0x0016) == 0x0004) ? 0 : 1);

}

?

int detect_ethtool(int skfd, char *ifname)

{

?????? struct ifreq ifr;

?????? struct ethtool_value edata;

?????? memset(&ifr, 0, sizeof(ifr));

?????? edata.cmd = ETHTOOL_GLINK;

?????? strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)-1);

?????? ifr.ifr_data = (char *) &edata;

?????? if (ioctl(skfd, SIOCETHTOOL, &ifr) == -1)

?????? {

????????????? printf("ETHTOOL_GLINK failed: %s\n", strerror(errno));

????????????? return 2;

?????? }

?????? return (edata.data ? 0 : 1);

}

?

int main(int argc, char **argv)

{

?????? int skfd = -1;

?????? char *ifname;

?????? int retval;

?????? if( argv[1] )

????????????? ifname = argv[1];

?????? else

????????????? ifname = "eth0";

?????? /* Open a socket. */

?????? if (( skfd = socket( AF_INET, SOCK_DGRAM, 0 ) ) < 0 )

?????? {

????????????? printf("socket error\n");

????????????? exit(-1);

?????? }

?????? retval = detect_ethtool(skfd, ifname);

?????? if (retval == 2)

????????????? retval = detect_mii(skfd, ifname);

?????? close(skfd);

?????? if (retval == 2)

????????????? printf("Could not determine status\n");

?????? if (retval == 1)

????????????? printf("Link down\n");

?????? if (retval == 0)

????????????? printf("Link up\n");

?????? return retval;

}

?

程序3:更簡單一點(diǎn)測試物理連接

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <errno.h>

#include <net/if.h>

#include <linux/sockios.h>

#include <sys/ioctl.h>

#define LINKTEST_GLINK 0x0000000a

struct linktest_value

{

?????? unsigned int??? cmd;

?????? unsigned int??? data;

};

?

static void usage(const char * pname)

{

?????? fprintf(stderr, "usage: %s <device>\n", pname);

?????? fprintf(stderr, "returns: \n");

?????? fprintf(stderr, "\t 0: link detected\n");

?????? fprintf(stderr, "\t%d: %s\n", ENODEV, strerror(ENODEV));

?????? fprintf(stderr, "\t%d: %s\n", ENONET, strerror(ENONET));

?????? fprintf(stderr, "\t%d: %s\n", EOPNOTSUPP, strerror(EOPNOTSUPP));

?????? exit(EXIT_FAILURE);

}

?

static int linktest(const char * devname)

{

?????? struct ifreq ifr;

?????? struct linktest_value edata;

?????? int fd;

?????? /* setup our control structures. */

?????? memset(&ifr, 0, sizeof(ifr));

?????? strcpy(ifr.ifr_name, devname);

?????? /* open control socket. */

?????? fd=socket(AF_INET, SOCK_DGRAM, 0);

?????? if(fd < 0 )

?????? {

????????????? return -ECOMM;

?????? }

??????

?????? errno=0;

?????? edata.cmd = LINKTEST_GLINK;

?????? ifr.ifr_data = (caddr_t)&edata;

?????? if(!ioctl(fd, SIOCETHTOOL, &ifr))

?????? {

????????????? if(edata.data)

????????????? {

???????????????????? fprintf(stdout, "link detected on %s\n", devname);

???????????????????? return 0;

????????????? }

????????????? else

????????????? {

???????????????????? errno=ENONET;

????????????? }

?????? }

?

?????? perror("linktest");

?????? return errno;

}

?

int?? main(int argc, char *argv[])

{

?????? if(argc != 2)

?????? {

????????????? usage(argv[0]);

?????? }

?????? return linktest(argv[1]);

}

?

程序4:調(diào)節(jié)音量

#include <sys/types.h>

#include <sys/stat.h>

#include <fcntl.h>

#include <sys/ioctl.h>

#include <sys/soundcard.h>

#include <stdio.h>

#include <unistd.h>

#include <math.h>

#include <string.h>

#include <stdlib.h>

#define? BASE_VALUE 257

int main(int argc,char *argv[])

{

?????? int mixer_fd=0;

?????? char *names[SOUND_MIXER_NRDEVICES]=SOUND_DEVICE_LABELS;

?????? int value,i;

?????? printf("\nusage:%s dev_no.[0..24] value[0..100]\n\n",argv[0]);

?????? printf("eg. %s 0 100\n",argv[0]);

?????? printf(" will change the volume to MAX volume.\n\n");

?????? printf("The dev_no. are as below:\n");

?????? for (i=0;i<SOUND_MIXER_NRDEVICES;i++)

?????? {

????????????? if (i%3==0) printf("\n");

????????????? printf("%s:%d\t\t",names[i],i);

?????? }

?

?????? printf("\n\n");

?????? if (argc<3)

????????????? exit(1);

?????? if ((mixer_fd = open("/dev/mixer",O_RDWR)))

?????? {

????????????? printf("Mixer opened successfully,working...\n");

????????????? value=BASE_VALUE*atoi(argv[2]);

????????????? if (ioctl(mixer_fd,MIXER_WRITE(atoi(argv[1])),&value)==0)

???????????????????? printf("successfully.....");

????????????? else

???????????????????? printf("unsuccessfully.....");

????????????? printf("done.\n");

?????? }

?????? else

????????????? printf("can't open /dev/mixer error....\n");

?????? exit(0);

}

原文例子代碼前面有段文字,太過冗長了,我也沒去看,因?yàn)榭戳讼碌谝黄D(zhuǎn)帖和例子代碼,差不離就滿足我對icotl函數(shù)理解的需要的,但是轉(zhuǎn)帖還是要轉(zhuǎn)完整,順便把原文的長篇文轉(zhuǎn)帖如下,以后有需要也可以來看看

一般的說,,用戶空間的IOCTL系統(tǒng)調(diào)用如下所示: ioctl(int fd, int command, (char *) argstruct)因?yàn)檫@個調(diào)用擁有與網(wǎng)絡(luò)相關(guān)的代碼,所以文件描述符號fd就是socket()系統(tǒng)調(diào)用所返回的,command參數(shù)可以是 /usr/include/linux/sockios.h頭文件中的任何一個,這些個命令根據(jù)它可以解決的問題所涉及的方面被分為多種的類型.

比如:

改變路由表(SIOCADDRT, SIOCDELRT

讀取或更新ARP/RARP緩存(SIOCDARP, SIOCSRARP

一般的和網(wǎng)絡(luò)有關(guān)的函數(shù)(SIOCGIFNAME, SIOCSIFADDR等等)

Goodies目錄中包含了很多展示ioctl用法的示例程序,看這些程序的時候,注意根據(jù)ioctl的命令類型來學(xué)習(xí)具體的調(diào)用參數(shù)結(jié)構(gòu),比如:和路由表相關(guān)的IOCTLRTENTRY結(jié)構(gòu), rtentry結(jié)構(gòu)是被定義在/usr/include/linux/route.h文件中的,再一個和ARP相關(guān)的ioctl調(diào)用用到的arpreq結(jié)構(gòu)被定義在/usr/include/linux/if_arp.h文件之中.網(wǎng)絡(luò)接口相關(guān)的ioctl命令最具有代表性的特征為都是以SG開頭,其實(shí)就是設(shè)置或得到數(shù)據(jù), getifinfo.c程序用這些命令去讀取IP地址信息,硬件地址信息,廣播地址信息,和與網(wǎng)絡(luò)接口相關(guān)的標(biāo)志.對于這些ioctl,第三個參數(shù)是一個 IFREQ結(jié)構(gòu)體,這個結(jié)構(gòu)體被定義在/usr/include/linux/if.h頭文件中,在一些情況下,新的ioctl命令可能被需要(除了在那 個頭文件中被定義的之外),比如 WAVELAN無線網(wǎng)卡保持著無線信號強(qiáng)度的信息,這些信西可能要 對用戶程序有用.用戶程序是怎么訪問到這些信息的呢?我們的第一反應(yīng)就是定義一個新的命令在sockios.h頭文件中,比如 SIOCGIFWVLNSS,不幸的是,這個命令在其他的網(wǎng)絡(luò)接口上是根本沒有意義的,另外試圖在其他接口上用這個名另而并非是在無線網(wǎng)口上用會出現(xiàn)違規(guī) 訪問,我們需要的是定義新特性接口命令的機(jī)理。幸運(yùn)的是,LINUX操作系統(tǒng)為此目的內(nèi)置了鉤子,如果你再看一下那個頭文件sockios.h你會注意到 每一個設(shè)備都有一個預(yù)定義的SIOCDEVPRIVATE命令,實(shí)現(xiàn)它的任務(wù)就全權(quán)交給了寫這個設(shè)備驅(qū)動的程序員了.根據(jù)常規(guī)約定,一個用戶程序調(diào)用一個 特定的ioctl命令如下: ioctl(sockid, SIOCDEVPRIVATE, (char *) &ifr)這里ifr是一個ifreq結(jié)構(gòu)體變量,它用一個和這個設(shè)備聯(lián)系的接口名稱填充ifrifr NAME,比如,前述的無線網(wǎng)卡接口名稱為eth1

不失一般性,一個用戶程序?qū)⑼瑯右c內(nèi)核交換命令參數(shù)和操作結(jié)果,而這些已經(jīng)通過一個域ifr.ifr_data的填充而做到了,比如,這個網(wǎng) 卡的信號強(qiáng)度信息被返回到這個域當(dāng)中。LINUX源代碼已經(jīng)包含了兩個特殊設(shè)備de4x5ewrk3,他們定義和實(shí)現(xiàn)了特殊的ioctl命令.,這些設(shè) 備的源代碼在以下的文件中:de4x5.h, de4x5.c, ewrk3.h, ewrk3.c, 他們兩個設(shè)備都為在用戶空間和驅(qū)動間交換數(shù)據(jù)定義了他們自己的私有結(jié)構(gòu),ioctl之前,用戶程序填充了需要的數(shù)據(jù)并且將ifr.ifr_data指向 這個結(jié)構(gòu)體.

我們在兩個驅(qū)動中走的更遠(yuǎn)些從而進(jìn)入代碼前,讓我們跟蹤一下處理ioctl系統(tǒng)調(diào)用的若干步驟,,所有接口類型的ioctl請求都導(dǎo)致 dev_ioctl()被調(diào)用,這個ioctl僅僅是個包裝,大部分的真實(shí)的操作留給了dev_ifsioc().,這個dev_ioctl()要做的唯 一一個事情就是檢查調(diào)用過程是否擁有合適的許可去核發(fā)這個命令,然后dev_ifsioc()首先要做的事情之一就是得到和名字域 ifr.ifr_name中所對應(yīng)的設(shè)備結(jié)構(gòu),這在一個很大的switch語塊的代碼后實(shí)現(xiàn)。

SIOCDEVPRIVATE命令和SIOCDEVPRIVATE+15的命令參數(shù)全部交給了默認(rèn)操作,這些都是switch的分支語句.這里 發(fā)生的是,內(nèi)核檢查是否一個設(shè)備特殊的ioctl的回調(diào)已經(jīng)在設(shè)備結(jié)構(gòu)中被設(shè)置,這個回調(diào)是保持在設(shè)備結(jié)構(gòu)中的一個函數(shù)指針。如果回調(diào)已經(jīng)被設(shè)置了.內(nèi)核 就會調(diào)用它.

所以,為了實(shí)現(xiàn)一個特殊的ioctl,需要做的就是寫一個特殊ioctl的回調(diào),然后讓device結(jié)構(gòu)中的do_ioctl域指向它,對于 EWK3設(shè)備,這個函數(shù)叫做ewrk3_ioctl(),對應(yīng)的設(shè)備結(jié)構(gòu)在ewrk3_init()中被初始化,ewrk3_ioctl()的代碼清晰的 展示了ifr.ifr_data的作用 ,是為了在用戶程序和驅(qū)動之間交換信息。注意,內(nèi)存的這個區(qū)域有雙方向交換數(shù)據(jù)的作用,例如,ewrk3驅(qū)動代碼中,ifr.ifr_data最初的2 個字節(jié)被用做向驅(qū)動傳遞預(yù)想要的動作。同樣第五個字節(jié)指向的緩沖區(qū)用于交換其他的信息。

當(dāng)你瀏覽ewrk3_ioctl()代碼的時候,記住在一個應(yīng)用中用戶空間的指令是無法訪問內(nèi)核空間的,由于這個原因 ,2個特殊的步驟提供給了驅(qū)動編寫人員.他們是memcpy_tofs()memcpy_fromfs()。內(nèi)核里的做法是用 memcpy_tofs() 拷貝內(nèi)核數(shù)據(jù)到用戶空間,類似的memcpy_fromfs()也是這樣的,只是他拷貝用戶數(shù)據(jù)到內(nèi)核空間.。這些程序步驟是由于調(diào)用 verify_area()而被執(zhí)行的,目的是確認(rèn)數(shù)據(jù)訪問不會違法。同樣記住printk()的用法是打印調(diào)試信息,這個函數(shù)和printf()很相 ,但是它不能處理浮點(diǎn)數(shù)據(jù),printf()函數(shù)在內(nèi)核中是不能被使用的。由printk()產(chǎn)生的輸出被轉(zhuǎn)儲到了一個目錄./usr/adm /messages

?

轉(zhuǎn)載于:https://www.cnblogs.com/franksunny/archive/2011/10/20/2218984.html

總結(jié)

以上是生活随笔為你收集整理的[转帖]关于Linux下的icotl函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

国产精品原创视频 | 国产情侣一区 | 日本在线成人 | 天天躁日日躁狠狠躁av麻豆 | 久久国内精品 | 久久精品国产免费观看 | 天天天天综合 | 国产精品免费在线观看视频 | 高清免费av在线 | 黄色在线成人 | 99精品在线播放 | 中文字幕在线观看完整版 | 69xxxx欧美| 久久九九久久精品 | 国产精品久久久久久久毛片 | 黄色一级免费电影 | 欧美最猛性xxxxx亚洲精品 | 国产精品久久二区 | 亚洲综合日韩在线 | 四虎影视成人永久免费观看亚洲欧美 | 在线播放精品一区二区三区 | 色综合久久88色综合天天 | 成人啪啪18免费游戏链接 | 999国产| av黄色亚洲 | 中文字幕中文中文字幕 | 麻豆视频免费在线观看 | 精品高清视频 | www久久九 | 久久精品xxx | 制服丝袜天堂 | 亚洲aⅴ一区二区三区 | 免费网站看v片在线a | 中文字幕精品一区久久久久 | 超碰97在线人人 | 黄色一级免费 | 亚洲一区网站 | 在线97| 亚洲一级片 | 欧美日韩视频观看 | 天天爽夜夜爽人人爽一区二区 | 99精彩视频在线观看免费 | 操操日日 | 欧美另类视频 | 久久96国产精品久久99软件 | 91粉色视频| 国产精品免费久久久 | 久久久久久福利 | 国产69久久精品成人看 | 国产中文欧美日韩在线 | 一区二区伦理电影 | 欧美 国产 视频 | 日本视频精品 | 色欧美88888久久久久久影院 | 国产自产在线视频 | a成人v在线 | 在线观看911视频 | 成人黄色中文字幕 | 激情综合网五月婷婷 | 亚洲一区网站 | 国产高清在线精品 | 久久久久久久久影视 | 97av免费视频 | 中文字幕一区2区3区 | 狠狠躁日日躁狂躁夜夜躁av | 久久九九九九 | 天躁狠狠躁 | 99久精品| 永久免费毛片在线观看 | 亚洲精品色婷婷 | 久久精品国亚洲 | 91精品小视频 | 成人午夜毛片 | 成人黄色小说在线观看 | 精品主播网红福利资源观看 | 一级免费黄色 | 国产不卡免费av | 国产精品成人一区二区 | 日韩久久午夜一级啪啪 | 免费a网 | 97精品视频在线播放 | 韩国在线一区二区 | 国产伦精品一区二区三区四区视频 | 国产精品嫩草影院9 | 免费精品视频在线 | 国偷自产中文字幕亚洲手机在线 | 中文字幕在线乱 | 久久精品中文视频 | 日韩在线一二三区 | 日韩电影在线观看一区 | 亚洲蜜桃av | 日日日日| 欧美日韩性 | 亚洲影院色 | 久久久精品欧美一区二区免费 | 免费观看www7722午夜电影 | 欧美大香线蕉线伊人久久 | 亚洲激情视频在线 | 99精品国产成人一区二区 | 四虎在线免费观看视频 | 国产成人精品一区二区三区福利 | 激情丁香婷婷 | 色综合久久久网 | 日韩在线字幕 | 日韩国产欧美视频 | 久久无码av一区二区三区电影网 | 免费aa大片| 亚洲国产网站 | 亚洲成人av电影 | 国产一区二区在线免费播放 | 精品国产自在精品国产精野外直播 | 一区二区三区韩国免费中文网站 | 亚洲国内精品视频 | 久久国产精品一国产精品 | 亚洲三级黄色 | 91插插插免费视频 | 蜜桃麻豆www久久囤产精品 | 亚洲国产影院 | 国产精品1区2区3区 久久免费视频7 | 亚洲黄色免费在线 | 最近中文字幕免费 | 国产99久久精品 | 91成人免费看片 | 中文字幕免费在线看 | 欧美日韩精品网站 | 人人插人人 | 成人黄色毛片视频 | 亚洲精品麻豆 | 人人看看人人 | 99免费看片 | 天躁狠狠躁 | 国产精品国产三级在线专区 | 成人在线视频观看 | 精品久久久久久久久久久院品网 | 黄色软件大全网站 | 国产又黄又硬又爽 | 国产精品国产三级国产不产一地 | 在线www色 | 精品99免费 | 国产日韩中文字幕 | 精品国产黄色片 | 国产色婷婷精品综合在线手机播放 | 麻豆久久一区二区 | 狠狠狠色丁香婷婷综合久久88 | 精品在线播放视频 | 97视频免费在线看 | 美女黄濒 | 久久综合九色综合97_ 久久久 | 国产精品你懂的在线观看 | 91精品推荐| 国产精品一区二区在线免费观看 | 91高清视频 | 日本精品视频在线观看 | 婷婷五天天在线视频 | 在线国产激情视频 | 亚洲最新精品 | 五月婷婷色 | 视频一区二区在线观看 | 精品国产伦一区二区三区观看体验 | 福利视频网址 | 午夜视频在线观看一区二区 | av电影不卡在线 | 亚洲片在线 | 成人av在线直播 | 99久久99久久综合 | 97人人澡人人爽人人模亚洲 | 日韩xxxx视频 | 色丁香婷婷 | 最新成人在线 | 天天摸天天干天天操天天射 | 国产午夜精品免费一区二区三区视频 | 久久国内免费视频 | 亚洲性xxxx| 精品久久精品久久 | 久久国产电影院 | 国产一区在线免费观看 | 91丨九色丨丝袜 | 久久久精品国产一区二区三区 | 精精国产xxxx视频在线播放 | 精品国产视频在线 | 日操操 | 91片网| 国产精品区在线观看 | 久久久www成人免费精品 | 黄网站app在线观看免费视频 | 91chinesexxx| 美女黄频免费 | 91精品久久久久久粉嫩 | 超碰电影在线观看 | 成人黄在线 | 欧美日韩国产亚洲乱码字幕 | 国产亚洲人成网站在线观看 | 日韩美av在线 | 久久国产经典视频 | 国产高清在线永久 | 国产精成人品免费观看 | 精品免费一区二区三区 | 日韩电影久久 | 欧美在线观看禁18 | 国产午夜精品在线 | 中文字幕日韩电影 | 97国产一区二区 | 97电院网手机版 | 国产成人资源 | 狠狠色噜噜狠狠狠狠 | 久久久久| 日本精品视频网站 | 成人九九视频 | 中文字幕免费一区二区 | 不卡的av电影 | 一区二区精品视频 | 国产精品免费久久久久久久久久中文 | 在线看成人 | 中文字幕一区二区三区乱码不卡 | 久一网站| 欧美日韩在线观看一区二区三区 | 91九色视频导航 | 亚洲精品国产精品国 | 狠狠色狠狠综合久久 | 久久久午夜电影 | 天天看天天干 | 国产在线污 | 三级在线视频播放 | 国产高清永久免费 | 国内精品久久久久影院优 | 亚洲精品欧美成人 | 一区二区三区观看 | 天天天综合 | 欧美激情综合五月色丁香小说 | 国产123区在线观看 国产精品麻豆91 | 国产精品久免费的黄网站 | 国产精品黄网站在线观看 | 国产精品福利在线播放 | 国产精品岛国久久久久久久久红粉 | 黄网站色视频免费观看 | 国产精品9999| 99久久精品无免国产免费 | 超碰人人av| 婷香五月 | 久久精品网址 | 亚洲国产小视频在线观看 | 黄视频网站大全 | 在线免费观看的av网站 | 久久久私人影院 | 偷拍福利视频一区二区三区 | 久久www免费视频 | 在线电影日韩 | 91人人网 | 日韩在线播放欧美字幕 | 91粉色视频 | 日韩专区在线 | 国产三级视频在线 | 中文字幕在线国产 | 超碰九九 | 久久久久久久久国产 | 国产成人精品久久亚洲高清不卡 | 特级黄色片免费看 | 手机成人av在线 | 久久久免费观看视频 | 欧美一二在线 | 亚洲无人区小视频 | 日韩精品视频在线观看免费 | 天天色棕合合合合合合 | 91色一区二区三区 | 欧美老人xxxx18 | 中文字幕在线乱 | 国产综合91 | 亚洲va男人天堂 | 久草在线91 | 国产成人精品一区一区一区 | 国产精品第三页 | 在线影院中文字幕 | 免费观看全黄做爰大片国产 | 三级av在线 | 97精品欧美91久久久久久 | 高清在线一区 | 久久视精品 | 久草资源在线观看 | 一级片视频免费观看 | 中文免费在线观看 | 99久久99| 国产精品美女久久久久久网站 | 国产91精品一区二区麻豆网站 | 久久综合九色欧美综合狠狠 | 99视频在线精品国自产拍免费观看 | 久久久精品99 | av 一区二区三区 | 国外av在线 | 国产一级电影免费观看 | 久久成年人网站 | 四虎永久免费在线观看 | 在线观看av免费观看 | 久久精品亚洲一区二区三区观看模式 | 88av网站| 亚洲综合色丁香婷婷六月图片 | av 一区 二区 久久 | 四虎国产视频 | 欧美精品一区二区三区四区在线 | 国产99久久久欧美黑人 | 在线观看视频黄 | japanesexxxxfreehd乱熟 | 日本三级香港三级人妇99 | 日日操日日操 | 婷婷丁香在线观看 | 国产精品久久久久三级 | 在线 国产一区 | 在线性视频日韩欧美 | 精品美女在线观看 | 久久综合狠狠综合 | av导航福利 | 国产精品毛片久久久久久 | 97狠狠干| 久99久精品 | 69久久99精品久久久久婷婷 | 最近2019好看的中文字幕免费 | 日韩中文字幕视频在线 | 香蕉影视在线观看 | 在线只有精品 | av看片在线 | 国产精品 9999| 精品国产福利在线 | 日日干精品 | 色综合天天色 | 中文字幕在线观看网址 | 亚洲mv大片欧洲mv大片免费 | 午夜视频在线观看一区二区三区 | 91传媒激情理伦片 | 午夜久久久精品 | 久久人人爽爽 | 久久国产精品色婷婷 | 色婷婷亚洲综合 | 久久久首页 | 国产精品青草综合久久久久99 | 日本精品久久久一区二区三区 | 一区二区三区视频网站 | 国内精品视频免费 | 国产精品成人免费 | 激情小说网站亚洲综合网 | 在线免费观看国产黄色 | 蜜桃av人人夜夜澡人人爽 | 欧美一级久久 | 西西44人体做爰大胆视频 | 在线一二三四区 | av片中文字幕 | 精品亚洲欧美无人区乱码 | 少妇超碰在线 | 久久综合久久久 | a黄色| av电影av在线 | 欧美一级片| 国产专区精品视频 | www.国产在线| 99在线看 | 高清免费在线视频 | 亚洲一区美女视频在线观看免费 | 久久国际影院 | 最新av在线播放 | 成人av免费播放 | 精品久久福利 | 久久久美女 | 免费视频资源 | 天天操天天干天天操天天干 | 在线天堂中文在线资源网 | 久久久久久久久久久久国产精品 | 亚洲国产精品va在线看 | 久久在线一区 | 在线天堂中文www视软件 | 亚洲成人av在线 | 国产精品亚洲片夜色在线 | 女人18毛片90分钟 | 久久99久久99精品免观看软件 | 国产男女无遮挡猛进猛出在线观看 | 少妇bbb搡bbbb搡bbbb′ | 九九九九免费视频 | 色人久久 | 亚洲国产一区二区精品专区 | 91在线小视频 | 四虎在线观看精品视频 | 亚洲 欧美 综合 在线 精品 | 五月婷婷中文字幕 | 中文字幕文字幕一区二区 | 亚洲精品在线视频观看 | 亚洲韩国一区二区三区 | 国产亚洲永久域名 | 欧美激情综合色 | 国产亚洲视频系列 | 91精品久久久久久久久久久久久 | 精品久久久久久亚洲综合网站 | 国内精品视频免费 | 欧美性免费 | 草久在线视频 | 天天干,天天射,天天操,天天摸 | 99久久999久久久精玫瑰 | 久色 网 | 亚洲丁香日韩 | 精品一区二区综合 | 久草在线免费看视频 | 这里只有精品视频在线观看 | 久久99亚洲网美利坚合众国 | 日本性生活一级片 | 韩国在线一区二区 | 日韩欧美高清不卡 | 人人爽人人插 | 天天草天天干天天射 | 国产91aaa| 五月天中文字幕 | 婷婷色网视频在线播放 | 欧美最猛性xxxxx免费 | 久草在线免费看视频 | 日日夜夜噜 | 国产精品日韩在线播放 | 日韩一区二区免费播放 | 五月视频| 免费人成在线观看网站 | 在线视频专区 | 日韩特级毛片 | 日本精品一区二区在线观看 | 久久视频在线观看免费 | 777xxx欧美 | 欧美日韩视频在线观看一区二区 | 黄色三级免费网址 | 中文字幕亚洲综合久久五月天色无吗'' | 国产91在线免费视频 | www黄色 | 婷婷成人亚洲综合国产xv88 | 久草久视频 | 日韩久久视频 | 国产成人不卡 | 狠狠色狠狠色综合日日92 | 一区二区三区免费在线观看 | 在线看欧美 | 免费在线观看国产精品 | 亚洲免费小视频 | 免费亚洲成人 | 欧美日韩视频在线 | 国产精品丝袜在线 | 一区二区久久久久 | 人人爽人人爽人人 | 999电影免费在线观看 | 亚洲第一区在线播放 | 狠狠狠色丁香婷婷综合久久五月 | va视频在线 | 精品字幕在线 | 91爱爱视频| av直接看 | 欧美一级大片在线观看 | 久久婷婷丁香 | 我要看黄色一级片 | 成人国产精品一区二区 | 五月婷网站 | 久久艹国产 | 在线观看免费视频 | 午夜精品久久久久久久久久 | 黄色天堂在线观看 | 777奇米四色 | 蜜桃av观看 | 五月婷婷.com | 久久久久国产精品www | 一区二区三区在线免费观看视频 | 国产成人在线免费观看 | 国产一区二区高清视频 | 国产伦精品一区二区三区在线 | 日日草天天草 | 天天射天天干天天操 | 99成人在线视频 | 国产精品6 | 日韩精品视频一二三 | 久久玖 | 新版资源中文在线观看 | 成人三级视频 | 日韩视频免费观看高清完整版在线 | 久久久久久久综合色一本 | 久久这里只有精品23 | 久久午夜电影院 | 中文字幕丰满人伦在线 | 亚洲精品午夜国产va久久成人 | 综合激情伊人 | 国产一级性生活视频 | 精品久久久免费 | 国产 日韩 欧美 在线 | 中文字幕免费在线看 | 中文字幕日韩无 | 综合久久精品 | 久青草视频 | 久久久久久国产精品久久 | av免费片| 日韩一区精品 | 五月天综合网站 | 日韩欧美精品一区二区三区经典 | 欧美日韩一区二区三区免费视频 | 在线观看精品一区 | 亚洲精品玖玖玖av在线看 | 国内精品久久久久久久影视麻豆 | 成人av免费在线 | 人人草在线视频 | 天天干天天干天天 | 成年人黄色大片在线 | 永久免费av在线播放 | 97超级碰| 色综合亚洲精品激情狠狠 | 人人干网站 | 天天操天天能 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 欧美一级电影免费观看 | 精品一区电影 | 视频一区亚洲 | 欧美日韩免费观看一区二区三区 | 日韩精品中文字幕在线不卡尤物 | 日韩视频1| 中文字幕第一页在线视频 | 国产一区二区三区在线免费观看 | 国产不卡免费 | 美女免费视频一区二区 | 天天爽天天爽 | 国产精品 999 | 色综合久久久网 | 精品国产免费久久 | 又长又大又黑又粗欧美 | 亚洲一区二区高潮无套美女 | 国内视频在线观看 | 久久久高清免费视频 | 美女免费视频网站 | 成人av免费在线 | 国产视频一区二区在线 | 国产又黄又爽又猛视频日本 | 欧美va天堂va视频va在线 | 国产又黄又爽又猛视频日本 | 成人午夜剧场在线观看 | 三级性生活视频 | 国产精品18久久久久久不卡孕妇 | 麻豆精品在线视频 | 日韩精品一区二区免费 | 五月婷婷国产 | 天天操天天操天天操天天操天天操天天操 | 永久免费精品视频 | 一级成人免费视频 | 亚洲成a人片在线观看网站口工 | 国产精品女人网站 | 国产精品美女久久久久久免费 | 国产成人三级在线观看 | 九九免费在线看完整版 | 91九色在线观看 | 国产五月婷 | 啪啪免费试看 | 精品国产区在线 | 免费av片在线 | 岛国大片免费视频 | 奇米影视777影音先锋 | 国内精品国产三级国产aⅴ久 | 2023年中文无字幕文字 | 亚洲欧洲国产视频 | 欧美日韩1区| av噜噜噜在线播放 | 911精品视频 | 国产小视频免费在线观看 | 深夜免费小视频 | 超碰在线免费97 | 999国内精品永久免费视频 | 国内精品久久久久久中文字幕 | 91久久久久久国产精品 | 激情网色 | 久久99久久99精品中文字幕 | 国产精品美女久久 | 国产小视频在线观看 | 在线免费色视频 | 中文字幕观看av | 免费一级特黄毛大片 | 国产高清在线免费视频 | 天天插视频 | 国产69熟 | 91日韩免费| 7777精品伊人久久久大香线蕉 | 色婷婷av国产精品 | 超级碰碰碰碰 | av在线播放亚洲 | 日韩免费视频观看 | av中文字幕在线观看网站 | 青青河边草免费观看完整版高清 | 中中文字幕av在线 | 伊人色综合久久天天 | 粉嫩av一区二区三区四区在线观看 | 香蕉久久久久久av成人 | 国产人成一区二区三区影院 | 网站免费黄色 | av电影免费看 | 激情综合久久 | 亚洲精品日韩一区二区电影 | 91视频3p| 毛片888| 午夜久久久久久久久久影院 | 国产美女精品视频免费观看 | 免费欧美高清视频 | 在线免费观看视频 | 亚洲精品综合一区二区 | 久久99影院 | 国产日韩精品视频 | 国产精久久久久久久 | 在线直播av | 日韩精品电影在线播放 | 日韩有码在线观看视频 | 国产精品麻豆果冻传媒在线播放 | 麻豆超碰| 91色九色 | 超碰在线个人 | 色综合久久99 | 免费黄在线看 | 日韩高清黄色 | 色噜噜噜 | 国产亚洲欧美在线视频 | 欧美日韩亚洲在线观看 | 特黄免费av | 国产日韩精品一区二区三区 | 亚洲成色777777在线观看影院 | 亚洲va欧美va人人爽春色影视 | 日日躁天天躁 | 特黄色大片 | 91精品国产乱码久久 | 免费看久久久 | 国产在线视频一区二区 | 国产精品综合久久 | 456免费视频 | 国产明星视频三级a三级点| 奇米影视777影音先锋 | 亚洲精品人人 | 日韩av在线免费看 | 免费一区在线 | 国产精品久久一区二区无卡 | 国产中文在线观看 | www久久国产 | 国产精品久久综合 | www色片| 欧美在线视频精品 | 免费av观看 | 天天色 天天 | 久久久久久久亚洲精品 | 四虎影视8848aamm | 欧美国产91 | av在线免费网站 | 国产一级三级 | 欧美日韩免费一区二区 | 免费视频你懂的 | 爱色av.com| 在线观看91视频 | 亚洲精品国产高清 | 日韩在线观看中文 | 久久视频在线视频 | 成年美女黄网站色大片免费看 | 久久一视频 | 亚洲专区 国产精品 | 国产又粗又猛又爽又黄的视频免费 | 国产成人精品网站 | 天天操天天舔天天爽 | 丁香六月综合网 | 久久久久久久久久伊人 | 国产精品日韩在线观看 | 黄色在线观看免费 | 狠狠狠狠狠狠狠狠干 | 国产精彩在线视频 | av一二三区| 97视频免费观看 | 黄色小说免费观看 | 亚洲性xxxx | 97热久久免费频精品99 | 四虎在线永久免费观看 | 国产精品黄网站在线观看 | av电影中文字幕 | 日韩欧美在线观看 | 国产区 在线 | 日韩中文字幕在线不卡 | 国产精品网址在线观看 | 国产精品久久久久久久久久久久久久 | a级成人毛片 | 亚洲激情电影在线 | 91爱爱视频 | 91自拍视频在线观看 | 天天干天天操天天爱 | 中文在线字幕免费观 | 在线韩国电影免费观影完整版 | 午夜色性片 | 最近中文字幕免费 | 99国产精品久久久久老师 | 久久久精品久久日韩一区综合 | 麻豆传媒电影在线观看 | 人人艹人人 | 中文字幕乱偷在线 | 啪啪小视频网站 | 国产精品少妇 | 日韩影视在线观看 | 久久国产片 | 97在线观看视频国产 | 欧美日韩高清一区二区 | 欧美日韩久 | www狠狠| 日韩欧美在线高清 | 999久久a精品合区久久久 | 91久久电影| 99国产高清 | 日本精品久久久久中文字幕 | 国产字幕av| 狠狠躁天天躁综合网 | 久操久| 开心激情网五月天 | 午夜精品福利一区二区三区蜜桃 | 久久99国产综合精品免费 | 国产 欧美 在线 | 国产精品久久久久久一区二区 | 亚洲欧美日本国产 | 五月婷婷操 | 色在线视频 | 天天色天天操综合网 | 午夜精品剧场 | 免费观看黄 | 成人app在线免费观看 | 色狠狠综合天天综合综合 | 色婷婷成人网 | 日韩精品综合在线 | 午夜精品久久久久久中宇69 | 色伊人网 | 国产手机视频精品 | 国产精品久久电影网 | 亚洲精品久久久久久久蜜桃 | 国产伦理久久 | 少妇bbr搡bbb搡bbb | 亚洲精品99久久久久中文字幕 | 亚洲激情在线 | 人人澡超碰碰97碰碰碰软件 | 欧美日韩一区二区在线观看 | 国产亚洲欧美精品久久久久久 | .精品久久久麻豆国产精品 亚洲va欧美 | 婷婷色五| 91色蜜桃 | 综合精品在线 | 91亚·色| 中字幕视频在线永久在线观看免费 | 日日爱影视 | 91九色在线视频观看 | 手机在线日韩视频 | 国产不卡一二三区 | 蜜桃视频日本 | 久久久麻豆视频 | 日日夜夜精品免费视频 | 91在线视频导航 | 亚洲精品理论片 | 免费看成人av | www.伊人网.com | 亚洲电影久久 | 国产成人三级一区二区在线观看一 | 国产 日韩 在线 亚洲 字幕 中文 | 草久视频在线 | 久久精品男人的天堂 | 国产一级免费在线 | 日韩精品在线视频免费观看 | 日韩精品中文字幕在线不卡尤物 | 亚洲jizzjizz日本少妇 | 欧美成人a在线 | 欧美 亚洲 另类 激情 另类 | 欧美精品免费视频 | jizz18欧美18 | 成年人免费看的视频 | 国产精品一区二区三区观看 | 人人爽影院 | 久久精品一区二区三区国产主播 | 成人在线视频一区 | 色中文字幕在线观看 | 欧美激情亚洲综合 | 欧美一级性生活视频 | 国产亚洲精品久久久网站好莱 | 亚洲精品久久久久中文字幕m男 | 欧美性色黄大片在线观看 | 中文资源在线官网 | 日b视频在线观看网址 | 国产精品手机播放 | 91av播放 | 丁香激情综合久久伊人久久 | 欧美精品你懂的 | 玖玖精品在线 | 国产婷婷视频在线 | 日韩av在线网站 | 国产精品1区2区在线观看 | 九月婷婷人人澡人人添人人爽 | 久久高清毛片 | 天天射天天干天天 | 可以免费观看的av片 | 综合久久2023 | 久久99日韩| 欧美极品裸体 | 99免费看片 | 欧美与欧洲交xxxx免费观看 | 色就色,综合激情 | 亚洲国产久 | 免费福利在线播放 | 色综合天天综合网国产成人网 | a级片网站 | 国产一区免费看 | 日韩丝袜视频 | 欧美精品二| 久在线观看视频 | 成人综合日日夜夜 | 成年人在线免费看视频 | 五月婷婷六月丁香在线观看 | 999视频网| 韩国一区二区三区视频 | 午夜av电影 | 欧美 日韩 性 | 亚洲高清av在线 | 亚洲黄色免费在线 | 激情在线免费视频 | 国产亚洲人成网站在线观看 | 亚洲精品在线观 | 高清免费在线视频 | 日韩特黄av | 又紧又大又爽精品一区二区 | 美女很黄免费网站 | 四虎成人精品永久免费av | 久久久久亚洲精品国产 | 精品在线观看一区二区三区 | 亚洲日韩欧美视频 | 成人在线你懂得 | 成人av免费网站 | 国产a级精品 | 一区二区三区免费在线播放 | 亚洲黄色在线免费观看 | 国产一区二区在线免费播放 | 色婷婷狠狠18 | 日韩三级视频 | 日韩欧美精品一区二区三区经典 | 久久综合久久综合九色 | 精品国产伦一区二区三区免费 | 一区在线电影 | 一区二区电影在线观看 | 国产成人一级 | 最近中文字幕在线中文高清版 | 9在线观看免费高清完整版在线观看明 | 996久久国产精品线观看 | 亚洲91中文字幕无线码三区 | 麻豆果冻剧传媒在线播放 | 玖玖视频精品 | 操操操com| 国产在线观看xxx | 不卡av在线 | 亚洲在线高清 | 五月婷婷.com | 日韩免费电影一区二区 | 欧美黄网站| 欧洲色综合 | 亚洲经典中文字幕 | 四虎在线视频免费观看 | 国产精品99久久久久久宅男 | 亚洲国产黄色片 | 国产福利久久 | 91视频免费网站 | 国产高清不卡一区二区三区 | 9999在线观看 | 在线视频 国产 日韩 | 五月天婷婷丁香花 | 久久综合国产伦精品免费 | 伊人宗合网| 日本在线观看视频一区 | 日韩av成人免费看 | 国产精品区免费视频 | 国产糖心vlog在线观看 | 综合色狠狠 | 亚洲资源| 18做爰免费视频网站 | 久久国产精品99精国产 | 少妇精品久久久一区二区免费 | 91精品国产成人观看 | 天天色天天操综合 | 日韩av不卡在线播放 | 亚洲黄色精品 | 九九交易行官网 | 国内免费的中文字幕 | 午夜影院日本 | 狠狠色噜噜狠狠狠合久 | 九九热中文字幕 | 国产一区二区不卡在线 | 亚洲在线看 | 在线观看免费高清视频大全追剧 | 日韩欧美国产成人 | 精品视频9999| 免费a级观看 | av中文字幕不卡 | 尤物一区二区三区 | 天天操 夜夜操 | 国产精品黄色在线观看 | 欧美成人精品在线 | 九九免费在线观看视频 | 欧美天天干| 亚洲精品乱码久久久久 | 天天干天天操天天射 | 精品国产伦一区二区三区观看体验 | 免费在线观看av网站 | 亚洲一区二区视频在线播放 | www国产亚洲精品 | 国产剧情av在线播放 | 97精品欧美91久久久久久 | 特级毛片网站 | av成人亚洲 | 久久99精品久久久久久秒播蜜臀 | 亚洲日本精品视频 | av三级在线看| 色综合久久精品 | 国产高清日韩欧美 | 操久久免费视频 | 日日操日日干 | 亚洲精品小区久久久久久 | 在线 日韩 av | 免费福利片2019潦草影视午夜 | 日本aaa在线观看 | 国产日韩欧美精品在线观看 | 正在播放国产一区二区 | 欧美色噜噜 | 一区二区av | 亚洲电影院 | 免费高清国产 | 亚洲女欲精品久久久久久久18 | 中文字幕 国产视频 | 色综合久久88色综合天天6 | 91香蕉嫩草| 日韩三级在线 | 日韩高清三区 | 国内99视频 | 欧美精品久久 | 精品久久国产一区 | 久久人人爽人人片 | 久久免费看a级毛毛片 | 日本特黄特色aaa大片免费 | 亚洲三级黄 | 国产剧情一区二区 | 久久精品久久国产 | 日韩高清在线一区二区三区 | 亚洲激情综合 | 欧美精品在线一区 | av在线等 | 日韩一级网站 | 日韩大片免费在线观看 | 日日干夜夜草 | 特级黄色片免费看 | 国产精品久久久毛片 | 色婷婷福利视频 | 久久不色| 婷婷免费在线视频 | 97碰碰碰 | 一级国产视频 | 狠日日| 在线观看中文字幕网站 | 日韩av一区二区三区四区 | 国产精品久久久区三区天天噜 | 天堂在线视频中文网 | 91视频91色 | 中文字幕免费观看 | 夜夜爽天天爽 | 五月天色综合 | 亚洲成人在线免费 | 91久久丝袜国产露脸动漫 | 五月婷婷伊人网 | 黄色小网站在线观看 | 激情av资源| 岛国av在线不卡 | av在线免费在线观看 | 中文字幕频道 | 五月婷婷.com| 国产一级a毛片视频爆浆 | 免费日韩一区二区三区 | 五月天婷婷狠狠 | 98久久| 国产精品九九久久久久久久 | 欧美日韩在线视频免费 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 人人舔人人爽 | 色婷婷99 | 亚洲精品乱码久久久一二三 | 国产精品密入口果冻 | 91日韩在线专区 | 97精品久久人人爽人人爽 | 日韩三区在线 | 韩国一区视频 | 午夜视频免费播放 | 天天操天天添天天吹 | 精品主播网红福利资源观看 | 中文字幕亚洲国产 | 日日夜夜网 | 亚洲高清视频在线播放 | 国产精品原创 | 麻豆视频成人 | 在线观看一级 | 成人一级视频在线观看 | 成年人视频在线免费播放 | 久久亚洲人| 国产区精品视频 | 国产精品ⅴa有声小说 | 久久久久免费精品视频 | 久久99久久99精品免观看软件 | 亚洲精品字幕 | 国产在线超碰 | 最近免费中文字幕大全高清10 | 2019中文字幕第一页 | 久久九九免费 |