亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? itimer.c

?? Linux2.4.20針對三星公司的s3c2410開發板的內核改造。
?? C
字號:
/* * linux/kernel/itimer.c * * Copyright (C) 1992 Darren Senn *//* These are all the functions necessary to implement itimers */#include <linux/mm.h>#include <linux/smp_lock.h>#include <linux/interrupt.h>#include <linux/trace.h>#include <asm/uaccess.h>/* * change timeval to jiffies, trying to avoid the  * most obvious overflows.. * * The tv_*sec values are signed, but nothing seems to  * indicate whether we really should use them as signed values * when doing itimers. POSIX doesn't mention this (but if * alarm() uses itimers without checking, we have to use unsigned * arithmetic). */static unsigned long tvtojiffies(struct timeval *value){	unsigned long sec = (unsigned) value->tv_sec;	unsigned long usec = (unsigned) value->tv_usec;	if (sec > (ULONG_MAX / HZ))		return ULONG_MAX;	usec += 1000000 / HZ - 1;	usec /= 1000000 / HZ;	return HZ*sec+usec;}static void jiffiestotv(unsigned long jiffies, struct timeval *value){	value->tv_usec = (jiffies % HZ) * (1000000 / HZ);	value->tv_sec = jiffies / HZ;}int do_getitimer(int which, struct itimerval *value){	register unsigned long val, interval;	switch (which) {	case ITIMER_REAL:		interval = current->it_real_incr;		val = 0;		/* 		 * FIXME! This needs to be atomic, in case the kernel timer happens!		 */		if (timer_pending(&current->real_timer)) {			val = current->real_timer.expires - jiffies;			/* look out for negative/zero itimer.. */			if ((long) val <= 0)				val = 1;		}		break;	case ITIMER_VIRTUAL:		val = current->it_virt_value;		interval = current->it_virt_incr;		break;	case ITIMER_PROF:		val = current->it_prof_value;		interval = current->it_prof_incr;		break;	default:		return(-EINVAL);	}	jiffiestotv(val, &value->it_value);	jiffiestotv(interval, &value->it_interval);	return 0;}/* SMP: Only we modify our itimer values. */asmlinkage long sys_getitimer(int which, struct itimerval *value){	int error = -EFAULT;	struct itimerval get_buffer;	if (value) {		error = do_getitimer(which, &get_buffer);		if (!error &&		    copy_to_user(value, &get_buffer, sizeof(get_buffer)))			error = -EFAULT;	}	return error;}void it_real_fn(unsigned long __data){	struct task_struct * p = (struct task_struct *) __data;	unsigned long interval;	TRACE_TIMER(TRACE_EV_TIMER_EXPIRED, 0, 0, 0);	send_sig(SIGALRM, p, 1);	interval = p->it_real_incr;	if (interval) {		if (interval > (unsigned long) LONG_MAX)			interval = LONG_MAX;		p->real_timer.expires = jiffies + interval;		add_timer(&p->real_timer);	}}int do_setitimer(int which, struct itimerval *value, struct itimerval *ovalue){	register unsigned long i, j;	int k;	i = tvtojiffies(&value->it_interval);	j = tvtojiffies(&value->it_value);	if (ovalue && (k = do_getitimer(which, ovalue)) < 0)		return k;	TRACE_TIMER(TRACE_EV_TIMER_SETITIMER, which, i, j);	switch (which) {		case ITIMER_REAL:			del_timer_sync(&current->real_timer);			current->it_real_value = j;			current->it_real_incr = i;			if (!j)				break;			if (j > (unsigned long) LONG_MAX)				j = LONG_MAX;			i = j + jiffies;			current->real_timer.expires = i;			add_timer(&current->real_timer);			break;		case ITIMER_VIRTUAL:			if (j)				j++;			current->it_virt_value = j;			current->it_virt_incr = i;			break;		case ITIMER_PROF:			if (j)				j++;			current->it_prof_value = j;			current->it_prof_incr = i;			break;		default:			return -EINVAL;	}	return 0;}/* SMP: Again, only we play with our itimers, and signals are SMP safe *      now so that is not an issue at all anymore. */asmlinkage long sys_setitimer(int which, struct itimerval *value,			      struct itimerval *ovalue){	struct itimerval set_buffer, get_buffer;	int error;	if (value) {		if(copy_from_user(&set_buffer, value, sizeof(set_buffer)))			return -EFAULT;	} else		memset((char *) &set_buffer, 0, sizeof(set_buffer));	error = do_setitimer(which, &set_buffer, ovalue ? &get_buffer : 0);	if (error || !ovalue)		return error;	if (copy_to_user(ovalue, &get_buffer, sizeof(get_buffer)))		return -EFAULT; 	return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩国产另类专区| 日韩一二三区视频| 久久精品国内一区二区三区| 亚洲天堂精品在线观看| 久久亚洲一级片| 日韩视频永久免费| 欧美精品三级在线观看| 在线免费观看日本一区| 99久久精品国产网站| 国产在线播放一区二区三区| 亚洲mv在线观看| 国产精品婷婷午夜在线观看| 亚洲精品一线二线三线| 欧美视频在线播放| 欧美午夜精品一区二区三区| 在线观看视频欧美| 日本乱码高清不卡字幕| 色综合天天做天天爱| 国产a视频精品免费观看| 国产乱淫av一区二区三区| 精品一区二区久久| 日本不卡的三区四区五区| 亚洲制服丝袜av| 亚洲成人自拍偷拍| 亚洲日穴在线视频| 亚洲国产高清在线观看视频| 日韩精品中文字幕在线一区| 4438x亚洲最大成人网| 欧美精品亚洲二区| 精品久久久久久久久久久久久久久久久| 制服丝袜亚洲精品中文字幕| 日韩欧美在线综合网| 久久亚洲综合色一区二区三区| 精品人在线二区三区| 国产欧美日韩麻豆91| 国产精品美女久久久久久2018| 欧美国产日本韩| 日韩理论片中文av| 午夜精品久久久久影视| 免费高清视频精品| 国产乱对白刺激视频不卡| 国产一区二区在线视频| 狠狠色狠狠色综合日日91app| 精品一区二区三区蜜桃| 国产99久久久国产精品潘金| 色综合一区二区三区| 欧美日韩一级黄| 欧美大片国产精品| 国产精品人成在线观看免费| 亚洲午夜在线观看视频在线| 日韩精品欧美精品| 国产不卡在线播放| 欧美三区免费完整视频在线观看| 欧美一级艳片视频免费观看| 久久久久国产精品人| 国产精品每日更新| 精品夜夜嗨av一区二区三区| 国产精品一区二区在线观看网站 | 亚洲尤物在线视频观看| 视频一区免费在线观看| 成人免费视频caoporn| 欧美午夜精品免费| 久久理论电影网| 国产日韩欧美一区二区三区综合 | 美女性感视频久久| 不卡的av电影| 欧美精品一区二区三区在线| 亚洲另类在线制服丝袜| 国产麻豆精品一区二区| 欧美日韩精品欧美日韩精品一 | 不卡区在线中文字幕| 91福利精品视频| 欧美丰满一区二区免费视频| 亚洲欧洲精品一区二区三区| 狠狠色狠狠色综合系列| 日韩视频一区在线观看| 亚洲成人免费av| 91浏览器入口在线观看| 欧美国产一区视频在线观看| 日韩不卡免费视频| 欧美日韩卡一卡二| 亚洲精品国产a| 成人h动漫精品一区二区| 日韩视频免费观看高清完整版在线观看| 1024成人网| 国产 欧美在线| 日韩一卡二卡三卡| 午夜影视日本亚洲欧洲精品| 91高清在线观看| 亚洲精品国产a| 日本福利一区二区| 亚洲精品乱码久久久久久日本蜜臀| 成人性色生活片免费看爆迷你毛片| 欧美岛国在线观看| 国产真实精品久久二三区| 日韩女优av电影| 久久99国产精品尤物| 欧美日韩不卡在线| 樱花影视一区二区| 9i在线看片成人免费| 国产片一区二区| 粉嫩aⅴ一区二区三区四区五区| 精品精品欲导航| 国产精品影视在线| 中文字幕av免费专区久久| 成人黄色免费短视频| 国产精品久久久久久久午夜片| 粉嫩蜜臀av国产精品网站| 国产精品国产自产拍在线| 91天堂素人约啪| 午夜电影久久久| 欧美日韩精品高清| 亚洲成人免费视频| 欧美三级视频在线观看| 久久99精品久久久久| 日本一区二区三区高清不卡| www.视频一区| 亚洲成av人在线观看| 日韩免费高清av| 成人av网站免费观看| 亚洲精品日韩一| 欧美日韩国产影片| 国产在线视频不卡二| 国产精品久久毛片| 欧美美女喷水视频| 国产成人一级电影| 亚洲电影一级片| 国产欧美一二三区| 欧美手机在线视频| 麻豆91小视频| 亚洲国产成人一区二区三区| 9久草视频在线视频精品| 亚洲va天堂va国产va久| 国产亚洲一二三区| 欧美又粗又大又爽| 国产精品一区二区三区乱码| 一区二区欧美精品| 欧美国产日韩亚洲一区| 欧美日韩国产综合视频在线观看| 九九视频精品免费| 国产精品午夜在线观看| 日韩一区二区在线观看视频| 色综合久久综合网| 国产精品911| 免费精品99久久国产综合精品| 中文字幕中文字幕在线一区 | 秋霞成人午夜伦在线观看| 国产亚洲va综合人人澡精品| 欧美高清dvd| 色综合天天综合在线视频| 国产精品99久久久久久宅男| 亚洲五码中文字幕| 亚洲欧美日韩一区二区 | 捆绑调教美女网站视频一区| 亚洲美女偷拍久久| 国产精品福利一区| 日韩视频不卡中文| 韩国av一区二区| 国产亚洲人成网站| 日本一区二区三区四区| 国产日本欧美一区二区| 久久久国产综合精品女国产盗摄| 久久午夜羞羞影院免费观看| 精品国产99国产精品| 国产亚洲欧美在线| 中文字幕一区二区在线播放| 亚洲人亚洲人成电影网站色| 亚洲女与黑人做爰| 婷婷国产在线综合| 美女一区二区三区| 国产91在线看| 91免费视频网| 欧美一区二区视频观看视频| 日韩免费看的电影| 中文字幕不卡三区| 亚洲午夜免费电影| 九九国产精品视频| 波多野结衣欧美| 91麻豆精品国产91久久久久久久久| 91精品国产色综合久久不卡电影| 欧美videofree性高清杂交| 中文字幕精品一区二区精品绿巨人 | 免费观看久久久4p| 国产不卡视频在线播放| 色94色欧美sute亚洲线路一久| 91精品国产乱码| 国产日本亚洲高清| 亚洲成人在线免费| 成人性视频免费网站| 在线观看日韩电影| 2017欧美狠狠色| 天天影视涩香欲综合网 | 一区二区三国产精华液| 免费成人av在线播放| 成人精品一区二区三区四区| 欧美日韩不卡一区二区| 国产精品免费视频观看| 精品一区二区国语对白| 欧洲中文字幕精品| 国产午夜亚洲精品羞羞网站|