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

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

?? fist-2.2.12.diff

?? Solaris操作系統下的過濾驅動程序, C源碼程序.
?? DIFF
?? 第 1 頁 / 共 2 頁
字號:
+{+	struct semaphore *s1 = &d1->d_inode->i_sem;+	struct semaphore *s2 = &d2->d_inode->i_sem;++	if (s1 != s2) {+		if ((unsigned long) s1 < (unsigned long) s2) {+			struct semaphore *tmp = s2;+			s2 = s1; s1 = tmp;+		}+		down(s1);+	}+	down(s2);+}++static inline void double_unlock(struct dentry *d1, struct dentry *d2)+{+	struct semaphore *s1 = &d1->d_inode->i_sem;+	struct semaphore *s2 = &d2->d_inode->i_sem;++	up(s1);+	if (s1 != s2)+		up(s2);+	dput(d1);+	dput(d2);+}++#endif /* __KERNEL__ */++#endif	/* __LINUX_DCACHE_FUNC_H */diff -ruN linux-2.2.12-vanilla/include/linux/fs.h linux-2.2.12-fist/include/linux/fs.h--- linux-2.2.12-vanilla/include/linux/fs.h	Wed Aug 25 20:29:52 1999+++ linux-2.2.12-fist/include/linux/fs.h	Fri Aug 27 22:27:38 1999@@ -918,6 +918,7 @@ extern int generic_file_mmap(struct file *, struct vm_area_struct *); extern ssize_t generic_file_read(struct file *, char *, size_t, loff_t *); extern ssize_t generic_file_write(struct file *, const char*, size_t, loff_t*);+extern loff_t default_llseek(struct file *file, loff_t offset, int origin);  extern struct super_block *get_super(kdev_t dev); extern void put_super(kdev_t dev);diff -ruN linux-2.2.12-vanilla/include/linux/mm.h linux-2.2.12-fist/include/linux/mm.h--- linux-2.2.12-vanilla/include/linux/mm.h	Wed Aug 25 20:29:52 1999+++ linux-2.2.12-fist/include/linux/mm.h	Fri Aug 27 22:27:39 1999@@ -56,7 +56,7 @@ 	struct vm_operations_struct * vm_ops; 	unsigned long vm_offset; 	struct file * vm_file;-	unsigned long vm_pte;			/* shared mem */+	void * vm_private_data;		/* was vm_pte (shared mem) */ };  /*@@ -322,6 +322,14 @@ extern void truncate_inode_pages(struct inode *, unsigned long); extern unsigned long get_cached_page(struct inode *, unsigned long, int); extern void put_cached_page(unsigned long);+/* generic vm_area_ops exported for stackable file systems */+extern int filemap_swapout(struct vm_area_struct * vma, struct page * page);+extern pte_t filemap_swapin(struct vm_area_struct * vma,+			    unsigned long offset, unsigned long entry);+extern int filemap_sync(struct vm_area_struct * vma, unsigned long address,+			size_t size, unsigned int flags);+extern unsigned long filemap_nopage(struct vm_area_struct * area,+				    unsigned long address, int no_share);  /*  * GFP bitmasks..diff -ruN linux-2.2.12-vanilla/include/linux/pagemap.h linux-2.2.12-fist/include/linux/pagemap.h--- linux-2.2.12-vanilla/include/linux/pagemap.h	Tue May 11 13:35:49 1999+++ linux-2.2.12-fist/include/linux/pagemap.h	Fri Aug 27 22:27:45 1999@@ -148,6 +148,17 @@ 		__wait_on_page(page); } +static inline void add_to_page_cache(struct page * page,+	struct inode * inode, unsigned long offset,+	struct page **hash)+{+	atomic_inc(&page->count);+	page->flags = (page->flags & ~((1 << PG_uptodate) | (1 << PG_error))) | (1 << PG_referenced);+	page->offset = offset;+	add_page_to_inode_queue(inode, page);+	__add_page_to_hash_queue(page, hash);+}+ extern void update_vm_cache(struct inode *, unsigned long, const char *, int);  #endifdiff -ruN linux-2.2.12-vanilla/include/linux/swap.h linux-2.2.12-fist/include/linux/swap.h--- linux-2.2.12-vanilla/include/linux/swap.h	Tue May 11 13:35:43 1999+++ linux-2.2.12-fist/include/linux/swap.h	Fri Aug 27 22:27:46 1999@@ -170,6 +170,23 @@ 	return  count > 1; } +/* Run the hooks that have to be done when a page I/O has completed. */+static inline void after_unlock_page (struct page * page)+{+	if (test_and_clear_bit(PG_decr_after, &page->flags)) {+		atomic_dec(&nr_async_pages);+#ifdef DEBUG_SWAP+		printk ("DebugVM: Finished IO on page %p, nr_async_pages %d\n",+			(char *) page_address(page), +			atomic_read(&nr_async_pages));+#endif+	}+	if (test_and_clear_bit(PG_swap_unlock_after, &page->flags))+		swap_after_unlock_page(page->offset);+	if (test_and_clear_bit(PG_free_after, &page->flags))+		__free_page(page);+}+ #endif /* __KERNEL__*/  #endif /* _LINUX_SWAP_H */diff -ruN linux-2.2.12-vanilla/ipc/shm.c linux-2.2.12-fist/ipc/shm.c--- linux-2.2.12-vanilla/ipc/shm.c	Wed Aug 25 20:29:53 1999+++ linux-2.2.12-fist/ipc/shm.c	Fri Aug 27 21:49:02 1999@@ -355,7 +355,7 @@  * shmd->vm_next	next attach for task  * shmd->vm_next_share	next attach for segment  * shmd->vm_offset	offset into segment- * shmd->vm_pte		signature for this attach+ * shmd->vm_private_data		signature for this attach  */  static struct vm_operations_struct shm_vm_ops = {@@ -496,7 +496,7 @@ 		goto out; 	} -	shmd->vm_pte = SWP_ENTRY(SHM_SWP_TYPE, id);+	shmd->vm_private_data = (void *) SWP_ENTRY(SHM_SWP_TYPE, id); 	shmd->vm_start = addr; 	shmd->vm_end = addr + shp->shm_npages * PAGE_SIZE; 	shmd->vm_mm = current->mm;@@ -535,7 +535,7 @@ 	unsigned int id; 	struct shmid_kernel *shp; -	id = SWP_OFFSET(shmd->vm_pte) & SHM_ID_MASK;+	id = SWP_OFFSET((unsigned long) shmd->vm_private_data) & SHM_ID_MASK; 	shp = shm_segs[id]; 	if (shp == IPC_UNUSED) { 		printk("shm_open: unused id=%d PANIC\n", id);@@ -559,7 +559,7 @@ 	int id;  	/* remove from the list of attaches of the shm segment */-	id = SWP_OFFSET(shmd->vm_pte) & SHM_ID_MASK;+	id = SWP_OFFSET((unsigned long) shmd->vm_private_data) & SHM_ID_MASK; 	shp = shm_segs[id]; 	remove_attach(shp,shmd);  /* remove from shp->attaches */   	shp->u.shm_lpid = current->pid;@@ -611,7 +611,7 @@ 	struct shmid_kernel *shp; 	unsigned int id, idx; -	id = SWP_OFFSET(shmd->vm_pte) & SHM_ID_MASK;+	id = SWP_OFFSET((unsigned long) shmd->vm_private_data) & SHM_ID_MASK; 	idx = (address - shmd->vm_start + shmd->vm_offset) >> PAGE_SHIFT;  #ifdef DEBUG_SHMdiff -ruN linux-2.2.12-vanilla/kernel/ksyms.c linux-2.2.12-fist/kernel/ksyms.c--- linux-2.2.12-vanilla/kernel/ksyms.c	Mon Aug  9 15:04:41 1999+++ linux-2.2.12-fist/kernel/ksyms.c	Fri Aug 27 21:49:02 1999@@ -189,6 +189,16 @@ EXPORT_SYMBOL(__pollwait); EXPORT_SYMBOL(ROOT_DEV); +/* for stackable file systems (lofs, wrapfs, etc.) */+EXPORT_SYMBOL(__wait_on_page);+EXPORT_SYMBOL(default_llseek);+EXPORT_SYMBOL(filemap_nopage);+EXPORT_SYMBOL(filemap_swapout);+EXPORT_SYMBOL(filemap_sync);+EXPORT_SYMBOL(page_cache_size);+EXPORT_SYMBOL(page_hash_table);+EXPORT_SYMBOL(swap_after_unlock_page);+ #if !defined(CONFIG_NFSD) && defined(CONFIG_NFSD_MODULE) EXPORT_SYMBOL(do_nfsservctl); #endifdiff -ruN linux-2.2.12-vanilla/mm/filemap.c linux-2.2.12-fist/mm/filemap.c--- linux-2.2.12-vanilla/mm/filemap.c	Tue May 11 11:51:13 1999+++ linux-2.2.12-fist/mm/filemap.c	Fri Aug 27 21:49:02 1999@@ -242,17 +242,6 @@ 	} while (count); } -static inline void add_to_page_cache(struct page * page,-	struct inode * inode, unsigned long offset,-	struct page **hash)-{-	atomic_inc(&page->count);-	page->flags = (page->flags & ~((1 << PG_uptodate) | (1 << PG_error))) | (1 << PG_referenced);-	page->offset = offset;-	add_page_to_inode_queue(inode, page);-	__add_page_to_hash_queue(page, hash);-}- /*  * Try to read ahead in the file. "page_cache" is a potentially free page  * that we could use for the cache (if it is 0 we can try to create one,@@ -927,7 +916,7 @@  * WSH 06/04/97: fixed a memory leak and moved the allocation of new_page  * ahead of the wait if we're sure to need it.  */-static unsigned long filemap_nopage(struct vm_area_struct * area, unsigned long address, int no_share)+unsigned long filemap_nopage(struct vm_area_struct * area, unsigned long address, int no_share) { 	struct file * file = area->vm_file; 	struct dentry * dentry = file->f_dentry;@@ -1242,7 +1231,7 @@ 	return error; } -static int filemap_sync(struct vm_area_struct * vma, unsigned long address,+int filemap_sync(struct vm_area_struct * vma, unsigned long address, 	size_t size, unsigned int flags) { 	pgd_t * dir;diff -ruN linux-2.2.12-vanilla/mm/mmap.c linux-2.2.12-fist/mm/mmap.c--- linux-2.2.12-vanilla/mm/mmap.c	Wed Aug 25 20:29:53 1999+++ linux-2.2.12-fist/mm/mmap.c	Fri Aug 27 21:49:03 1999@@ -281,7 +281,7 @@ 	vma->vm_ops = NULL; 	vma->vm_offset = off; 	vma->vm_file = NULL;-	vma->vm_pte = 0;+	vma->vm_private_data = (void *) 0;  	/* Clear old maps */ 	error = -ENOMEM;@@ -535,7 +535,7 @@ 		mpnt->vm_ops = area->vm_ops; 		mpnt->vm_offset = area->vm_offset + (end - area->vm_start); 		mpnt->vm_file = area->vm_file;-		mpnt->vm_pte = area->vm_pte;+		mpnt->vm_private_data = area->vm_private_data; 		if (mpnt->vm_file) 			mpnt->vm_file->f_count++; 		if (mpnt->vm_ops && mpnt->vm_ops->open)@@ -824,7 +824,7 @@  		/* To share, we must have the same file, operations.. */ 		if ((mpnt->vm_file != prev->vm_file)||-		    (mpnt->vm_pte != prev->vm_pte)	||+		    (mpnt->vm_private_data != prev->vm_private_data)	|| 		    (mpnt->vm_ops != prev->vm_ops)	|| 		    (mpnt->vm_flags != prev->vm_flags)	|| 		    (prev->vm_end != mpnt->vm_start))

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美丝袜第三区| 在线观看91av| 麻豆国产精品777777在线| 久久精品在这里| 欧美日韩夫妻久久| 成人av在线影院| 麻豆精品视频在线| 亚洲免费观看高清完整版在线观看 | 欧美日韩精品电影| 成人网在线免费视频| 青青草91视频| 一区二区三区丝袜| 国产色综合一区| 日韩欧美国产高清| 欧美亚一区二区| 99国产精品久久| 粉嫩一区二区三区性色av| 日本在线不卡视频一二三区| 亚洲免费在线观看视频| 国产精品日韩成人| 久久久久国产免费免费| 日韩三级免费观看| 欧美放荡的少妇| 91豆麻精品91久久久久久| 丁香婷婷综合网| 国产一区二区三区在线观看免费视频| 视频一区中文字幕国产| 亚洲男人的天堂在线aⅴ视频| 欧美国产一区二区在线观看| 久久综合九色综合久久久精品综合| 欧美日韩综合在线| 欧洲精品一区二区三区在线观看| 成人激情免费视频| 高清成人在线观看| 国产麻豆日韩欧美久久| 精品亚洲aⅴ乱码一区二区三区| 强制捆绑调教一区二区| 日本欧美一区二区三区乱码 | 亚洲视频 欧洲视频| 欧美高清在线一区二区| 国产午夜精品久久| 国产亚洲福利社区一区| 国产网站一区二区三区| 日本一区二区三级电影在线观看| 久久亚洲免费视频| 久久婷婷色综合| 国产丝袜在线精品| 久久一二三国产| 国产日韩欧美精品在线| 国产精品毛片高清在线完整版| 国产精品沙发午睡系列990531| 久久精品一级爱片| 欧美激情一区二区三区全黄| 国产精品美女久久久久久久久| 中文字幕中文乱码欧美一区二区| 中文字幕亚洲一区二区va在线| 亚洲天堂2016| 亚洲高清免费在线| 毛片av中文字幕一区二区| 极品少妇xxxx偷拍精品少妇| 国产精品原创巨作av| 成人免费观看av| 91成人国产精品| 777午夜精品免费视频| 精品久久久久香蕉网| 国产欧美一区二区在线观看| 综合久久久久久| 婷婷一区二区三区| 国产一区二区日韩精品| eeuss鲁片一区二区三区| 欧美在线观看你懂的| 日韩欧美一二三四区| 国产精品人成在线观看免费| 一区二区成人在线| 美女视频第一区二区三区免费观看网站| 精品一区二区三区蜜桃| 91免费视频观看| 欧美一卡2卡3卡4卡| 欧美国产综合一区二区| 亚洲一二三区视频在线观看| 狠狠网亚洲精品| 色综合久久中文字幕| 欧美一级国产精品| 国产精品美女视频| 日韩成人伦理电影在线观看| 成人激情免费电影网址| 欧美日韩国产电影| 亚洲国产精品黑人久久久| 亚洲一区二区精品久久av| 国产在线精品一区二区三区不卡| 一本一道综合狠狠老| 精品国产乱码久久久久久牛牛| 一区二区中文视频| 精品一区二区三区在线观看国产| 色偷偷一区二区三区| 欧美成人乱码一区二区三区| 亚洲美女在线国产| 国产又粗又猛又爽又黄91精品| 色综合网色综合| 精品成人在线观看| 亚洲成a天堂v人片| 成人国产精品免费观看动漫| 日韩欧美中文字幕一区| 伊人一区二区三区| 国产精品99久久久久| 6080日韩午夜伦伦午夜伦| 亚洲婷婷综合色高清在线| 国产原创一区二区三区| 337p亚洲精品色噜噜噜| 亚洲免费视频中文字幕| 国产传媒日韩欧美成人| 日韩免费观看高清完整版| 亚洲一区二区三区激情| 成人国产精品免费观看动漫 | 国产日韩欧美高清在线| 久久不见久久见免费视频7| 欧美视频日韩视频| 专区另类欧美日韩| 高清beeg欧美| 久久久久99精品一区| 裸体健美xxxx欧美裸体表演| 精品婷婷伊人一区三区三| 国产精品久久久久久久久免费樱桃 | 欧美在线色视频| 中文字幕综合网| eeuss鲁片一区二区三区| 国产精品网站一区| 国产成人免费av在线| 久久综合色综合88| 激情小说欧美图片| 日韩精品一区二区三区在线观看| 日韩在线一区二区| 欧美日韩亚洲综合一区二区三区| 伊人夜夜躁av伊人久久| 日本精品一级二级| 一区二区三区久久| 欧美三区在线观看| 婷婷中文字幕综合| 欧美一级一区二区| 久久精品国产色蜜蜜麻豆| 日韩一级二级三级| 国产综合久久久久久鬼色| 精品日韩av一区二区| 韩国av一区二区三区四区| 亚洲精品一区二区三区99| 国产真实乱偷精品视频免| 久久日一线二线三线suv| 国产老女人精品毛片久久| 国产欧美综合色| 不卡电影一区二区三区| 亚洲青青青在线视频| 欧美体内she精高潮| 亚洲成av人片在线观看| 欧美一区二区久久久| 久久99精品国产91久久来源| 久久久不卡网国产精品二区| 成人av网在线| 亚洲一区二区四区蜜桃| 91精品国产综合久久精品| 裸体一区二区三区| 国产色综合久久| 色综合久久久久久久久| 亚洲chinese男男1069| 欧美成人精品1314www| 国产成人福利片| 成人免费一区二区三区在线观看 | 日韩欧美中文字幕公布| 国产麻豆9l精品三级站| 亚洲素人一区二区| 欧美日韩免费视频| 国产揄拍国内精品对白| 成人欧美一区二区三区1314| 欧美精品vⅰdeose4hd| 精品亚洲国内自在自线福利| 成人免费在线播放视频| 91精品国产综合久久久蜜臀图片| 国产麻豆一精品一av一免费| 亚洲精品亚洲人成人网| 91精品国产高清一区二区三区| 国产精品一区专区| 亚洲午夜激情网页| 国产香蕉久久精品综合网| 色一情一伦一子一伦一区| 奇米精品一区二区三区在线观看一 | 91视视频在线观看入口直接观看www| 亚洲一区视频在线| 久久久激情视频| 欧美影院一区二区三区| 国产精品资源在线| 性做久久久久久久久| 国产亚洲污的网站| 欧美精品三级日韩久久| av网站免费线看精品| 蜜臀99久久精品久久久久久软件| 国产精品不卡一区| 精品粉嫩aⅴ一区二区三区四区| 91老师片黄在线观看| 国产麻豆精品视频| 日日欢夜夜爽一区| 亚洲免费三区一区二区|