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

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

?? fist-2.2.13.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.13-vanilla/include/linux/fs.h linux-2.2.13-fist/include/linux/fs.h--- linux-2.2.13-vanilla/include/linux/fs.h	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/include/linux/fs.h	Sun Oct 31 18:47:41 1999@@ -872,6 +872,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.13-vanilla/include/linux/mm.h linux-2.2.13-fist/include/linux/mm.h--- linux-2.2.13-vanilla/include/linux/mm.h	Wed Aug 25 20:29:52 1999+++ linux-2.2.13-fist/include/linux/mm.h	Sun Oct 31 18:47:49 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.13-vanilla/include/linux/pagemap.h linux-2.2.13-fist/include/linux/pagemap.h--- linux-2.2.13-vanilla/include/linux/pagemap.h	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/include/linux/pagemap.h	Sun Oct 31 18:48:07 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_conditional(struct inode *, unsigned long, const char *, int, unsigned long); extern void update_vm_cache(struct inode *, unsigned long, const char *, int); diff -ruN linux-2.2.13-vanilla/include/linux/swap.h linux-2.2.13-fist/include/linux/swap.h--- linux-2.2.13-vanilla/include/linux/swap.h	Tue May 11 13:35:43 1999+++ linux-2.2.13-fist/include/linux/swap.h	Sun Oct 31 18:48:10 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.13-vanilla/ipc/shm.c linux-2.2.13-fist/ipc/shm.c--- linux-2.2.13-vanilla/ipc/shm.c	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/ipc/shm.c	Tue Oct 26 01:20:34 1999@@ -358,7 +358,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 = {@@ -499,7 +499,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;@@ -538,7 +538,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);@@ -562,7 +562,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;@@ -614,7 +614,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.13-vanilla/kernel/ksyms.c linux-2.2.13-fist/kernel/ksyms.c--- linux-2.2.13-vanilla/kernel/ksyms.c	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/kernel/ksyms.c	Tue Oct 26 01:20:35 1999@@ -190,6 +190,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.13-vanilla/mm/filemap.c linux-2.2.13-fist/mm/filemap.c--- linux-2.2.13-vanilla/mm/filemap.c	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/mm/filemap.c	Tue Oct 26 01:29:47 1999@@ -269,17 +269,6 @@ }  -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,@@ -954,7 +943,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;@@ -1269,7 +1258,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.13-vanilla/mm/mmap.c linux-2.2.13-fist/mm/mmap.c--- linux-2.2.13-vanilla/mm/mmap.c	Tue Oct 19 20:14:02 1999+++ linux-2.2.13-fist/mm/mmap.c	Tue Oct 26 01:20:47 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;@@ -532,7 +532,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)@@ -821,7 +821,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一区二区三区免费野_久草精品视频
国产精品初高中害羞小美女文| 亚洲一线二线三线久久久| 国产精品丝袜一区| 亚洲午夜免费福利视频| 精品一区二区三区久久久| 91蜜桃视频在线| 欧美精品一区二区三区久久久| 亚洲视频精选在线| 精东粉嫩av免费一区二区三区| 色噜噜狠狠成人网p站| 2020国产精品| www.成人在线| 日韩精品最新网址| 亚洲大型综合色站| 91在线视频免费观看| 久久久综合视频| 热久久一区二区| 欧美乱妇23p| 一区二区三区在线视频观看| 成人高清av在线| 国产视频一区二区三区在线观看| 美女诱惑一区二区| 欧美猛男gaygay网站| 亚洲综合一区二区| 色综合夜色一区| 中文字幕在线一区免费| 成人精品小蝌蚪| 欧美极品xxx| 成人综合婷婷国产精品久久| 欧美精品一区二区在线观看| 日本欧美在线看| 91精品国产色综合久久不卡电影| 亚洲国产精品一区二区www在线| 色系网站成人免费| 一区二区三区四区激情| 欧洲精品视频在线观看| 亚洲永久精品国产| 欧美日韩黄色一区二区| 日本欧美一区二区三区乱码| 欧美一区二区精美| 国内精品伊人久久久久av影院| 精品久久久久久久久久久久久久久| 蜜芽一区二区三区| 337p粉嫩大胆色噜噜噜噜亚洲| 国内久久精品视频| 麻豆成人免费电影| 亚洲精品一区二区三区香蕉| 国产在线日韩欧美| 日本一区二区三级电影在线观看| 国产丶欧美丶日本不卡视频| 国产精品免费观看视频| 91视频免费播放| 亚洲国产欧美日韩另类综合 | 国产亚洲精品超碰| 国产精品18久久久久久久网站| 欧美高清一级片在线观看| 成人白浆超碰人人人人| 亚洲激情网站免费观看| 欧美精品日韩精品| 国产剧情av麻豆香蕉精品| 国产精品美女久久久久久| 在线欧美日韩国产| 美女视频黄频大全不卡视频在线播放| 久久久久国产精品麻豆| 99久久精品国产麻豆演员表| 午夜天堂影视香蕉久久| 久久综合狠狠综合久久综合88 | 午夜久久久久久| www亚洲一区| 91在线观看污| 免费亚洲电影在线| 中文字幕一区二区三区色视频 | 国产成人亚洲精品青草天美| 亚洲精品久久久蜜桃| 欧美成人欧美edvon| 成人a区在线观看| 日韩制服丝袜av| 国产日韩一级二级三级| 欧美日韩一二三区| 国产精品综合一区二区| 亚洲成人免费看| 国产日产欧美一区| 538在线一区二区精品国产| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 久久嫩草精品久久久精品| 色婷婷精品久久二区二区蜜臂av | 欧美午夜精品理论片a级按摩| 美腿丝袜在线亚洲一区 | 91亚洲国产成人精品一区二区三| 美女视频一区在线观看| 悠悠色在线精品| 国产精品婷婷午夜在线观看| 欧美一二三四在线| 欧美性色黄大片| 92国产精品观看| 国产成人h网站| 男男成人高潮片免费网站| 亚洲综合免费观看高清完整版 | 精品在线亚洲视频| 国产成人精品免费| 久久成人18免费观看| 亚洲制服丝袜av| 亚洲女人小视频在线观看| 日本一区二区三区国色天香 | 免费在线观看成人| 洋洋av久久久久久久一区| 日本一区二区三区四区在线视频 | 国产精品久久久久久久久图文区| 日韩一二在线观看| 欧美精品一级二级三级| 色婷婷久久久亚洲一区二区三区| av在线一区二区三区| 国产一区二区不卡| 国产一区二区精品久久91| 久草在线在线精品观看| 蜜臀精品一区二区三区在线观看| 丝袜诱惑亚洲看片| 日韩精品成人一区二区三区| 五月婷婷色综合| 日韩vs国产vs欧美| 奇米色一区二区| 狠狠色综合播放一区二区| 国内精品国产三级国产a久久| 韩国中文字幕2020精品| 国产美女在线精品| 高清久久久久久| 99久久99久久综合| 日本韩国欧美在线| 欧美欧美午夜aⅴ在线观看| 欧美一区二区三区在线观看视频| 欧美一区二区大片| www激情久久| 国产精品久久久久久久久搜平片| 综合久久久久久| 亚洲精品成人在线| 亚洲18色成人| 麻豆精品在线播放| 国产aⅴ综合色| 一本一道综合狠狠老| 欧美日韩大陆一区二区| 日韩美女一区二区三区四区| 久久久三级国产网站| 亚洲欧洲精品天堂一级 | 久久精品一区二区三区四区 | 国产精品久久久久久久久免费桃花| 亚洲欧美综合在线精品| 亚洲成人av一区二区| 蜜臀av性久久久久av蜜臀妖精 | 91免费版pro下载短视频| 欧美日韩高清在线| 国产网站一区二区| 一区二区三区电影在线播| 免费成人结看片| 91影院在线观看| 日韩三级在线免费观看| 中文字幕在线不卡视频| 天堂影院一区二区| 成人激情小说乱人伦| 欧美日韩一级黄| 国产精品久久久久天堂| 日本女人一区二区三区| www.性欧美| 日韩精品专区在线影院重磅| 中文字幕中文字幕一区| 男人的天堂亚洲一区| 91黄色免费网站| 久久精品在线观看| 天天免费综合色| 99久久久久久| www日韩大片| 五月天久久比比资源色| 成人精品小蝌蚪| 精品国产一区二区三区忘忧草| 亚洲蜜桃精久久久久久久| 国产精选一区二区三区| 欧美福利视频导航| 久久99久久99| 欧美日韩不卡一区| 中文字幕一区二区三区不卡在线| 久久av资源站| 欧美喷潮久久久xxxxx| 亚洲精品视频在线看| 国产大片一区二区| 精品国产不卡一区二区三区| 午夜视频在线观看一区二区三区| 91蜜桃传媒精品久久久一区二区| 久久网站热最新地址| 麻豆专区一区二区三区四区五区| 欧美影片第一页| 亚洲精品第1页| 99国产欧美另类久久久精品| 国产欧美日韩视频一区二区| 免费的成人av| 日韩午夜av一区| 日本特黄久久久高潮| 欧美精品18+| 亚洲444eee在线观看| 欧美日韩免费观看一区三区| 亚洲精品日韩专区silk| 色综合久久久久综合|