您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ INC_CACHE_INFO函数代码示例

51自学网 2021-06-01 21:29:52
  C++
这篇教程C++ INC_CACHE_INFO函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中INC_CACHE_INFO函数的典型用法代码示例。如果您正苦于以下问题:C++ INC_CACHE_INFO函数的具体用法?C++ INC_CACHE_INFO怎么用?C++ INC_CACHE_INFO使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了INC_CACHE_INFO函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: lookup_swap_cache

/* * Lookup a swap entry in the swap cache. A found page will be returned * unlocked and with its refcount incremented - we rely on the kernel * lock getting page table operations atomic even if we drop the page * lock before returning. */struct page * lookup_swap_cache(swp_entry_t entry){	struct page *page;	page = find_get_page(&swapper_space, entry.val);	if (page)		INC_CACHE_INFO(find_success);	INC_CACHE_INFO(find_total);	return page;}
开发者ID:0xroot,项目名称:Blackphone-BP1-Kernel,代码行数:18,


示例2: lookup_swap_cache

/* * Lookup a swap entry in the swap cache. A found page will be returned * unlocked and with its refcount incremented - we rely on the kernel * lock getting page table operations atomic even if we drop the page * lock before returning. */struct page * lookup_swap_cache(swp_entry_t entry){    struct page *page;    page = find_get_page(swap_address_space(entry), entry.val);    if (page) {        INC_CACHE_INFO(find_success);        if (TestClearPageReadahead(page))            atomic_inc(&swapin_readahead_hits);    }    INC_CACHE_INFO(find_total);    return page;}
开发者ID:oldzhu,项目名称:linux,代码行数:21,


示例3: lookup_swap_cache

/* * Lookup a swap entry in the swap cache. A found page will be returned * unlocked and with its refcount incremented - we rely on the kernel * lock getting page table operations atomic even if we drop the page * lock before returning. */struct page * lookup_swap_cache(swp_entry_t entry){	struct page *page;	page = find_get_page(swap_address_space(entry), swp_offset(entry));	if (page && likely(!PageTransCompound(page))) {		INC_CACHE_INFO(find_success);		if (TestClearPageReadahead(page))			atomic_inc(&swapin_readahead_hits);	}	INC_CACHE_INFO(find_total);	return page;}
开发者ID:mdamt,项目名称:linux,代码行数:21,


示例4: add_to_swap_cache

/* * add_to_swap_cache resembles add_to_page_cache_locked on swapper_space, * but sets SwapCache flag and private instead of mapping and index. */int add_to_swap_cache(struct page *page, swp_entry_t entry, gfp_t gfp_mask){	int error;	VM_BUG_ON(!PageLocked(page));	VM_BUG_ON(PageSwapCache(page));	VM_BUG_ON(!PageSwapBacked(page));	error = radix_tree_preload(gfp_mask);	if (!error) {		page_cache_get(page);		SetPageSwapCache(page);		set_page_private(page, entry.val);		spin_lock_irq(&swapper_space.tree_lock);		error = radix_tree_insert(&swapper_space.page_tree,						entry.val, page);		if (likely(!error)) {			total_swapcache_pages++;			__inc_zone_page_state(page, NR_FILE_PAGES);			INC_CACHE_INFO(add_total);		}		spin_unlock_irq(&swapper_space.tree_lock);		radix_tree_preload_end();		if (unlikely(error)) {			set_page_private(page, 0UL);			ClearPageSwapCache(page);			page_cache_release(page);		}	}	return error;}
开发者ID:feravolt,项目名称:FeraLab_GB_Firmware--archive,代码行数:37,


示例5: __add_to_swap_cache

/* * __add_to_swap_cache resembles add_to_page_cache_locked on swapper_space, * but sets SwapCache flag and private instead of mapping and index. */static int __add_to_swap_cache(struct page *page, swp_entry_t entry){	int error;	VM_BUG_ON(!PageLocked(page));	VM_BUG_ON(PageSwapCache(page));	VM_BUG_ON(!PageSwapBacked(page));	page_cache_get(page);	SetPageSwapCache(page);	set_page_private(page, entry.val);	spin_lock_irq(&swapper_space.tree_lock);	error = radix_tree_insert(&swapper_space.page_tree, entry.val, page);	if (likely(!error)) {		total_swapcache_pages++;		__inc_zone_page_state(page, NR_FILE_PAGES);		INC_CACHE_INFO(add_total);	}	spin_unlock_irq(&swapper_space.tree_lock);	if (unlikely(error)) {		/*		 * Only the context which have set SWAP_HAS_CACHE flag		 * would call add_to_swap_cache().		 * So add_to_swap_cache() doesn't returns -EEXIST.		 */		VM_BUG_ON(error == -EEXIST);		set_page_private(page, 0UL);		ClearPageSwapCache(page);		page_cache_release(page);	}	return error;}
开发者ID:yl849646685,项目名称:linux-2.6.32,代码行数:39,


示例6: add_to_swap

/** * add_to_swap - allocate swap space for a page * @page: page we want to move to swap * * Allocate swap space for the page and add the page to the * swap cache.  Caller needs to hold the page lock.  */int add_to_swap(struct page * page, gfp_t gfp_mask){	swp_entry_t entry;	int err;	if (!PageLocked(page))		BUG();	for (;;) {		entry = get_swap_page();		if (!entry.val)			return 0;		/*		 * Radix-tree node allocations from PF_MEMALLOC contexts could		 * completely exhaust the page allocator. __GFP_NOMEMALLOC		 * stops emergency reserves from being allocated.		 *		 * TODO: this could cause a theoretical memory reclaim		 * deadlock in the swap out path.		 */		/*		 * Add it to the swap cache and mark it dirty		 */		err = __add_to_swap_cache(page, entry,				gfp_mask|__GFP_NOMEMALLOC|__GFP_NOWARN);		switch (err) {		case 0:				/* Success */			SetPageUptodate(page);			SetPageDirty(page);			INC_CACHE_INFO(add_total);			return 1;		case -EEXIST:			/* Raced with "speculative" read_swap_cache_async */			INC_CACHE_INFO(exist_race);			swap_free(entry);			continue;		default:			/* -ENOMEM radix-tree allocation failure */			swap_free(entry);			return 0;		}	}}
开发者ID:jameshilliard,项目名称:actiontec_opensrc_mi424wr-rev-e-f_fw-20-10-7-5,代码行数:52,


示例7: __delete_from_swap_cache

/** * __delete_from_swap_cache:page从交换区高速缓存中删去 */void __delete_from_swap_cache(struct page *page){	VM_BUG_ON(!PageLocked(page));	VM_BUG_ON(!PageSwapCache(page));	VM_BUG_ON(PageWriteback(page));	radix_tree_delete(&swapper_space.page_tree, page_private(page));	set_page_private(page, 0);	ClearPageSwapCache(page);	total_swapcache_pages--;	__dec_zone_page_state(page, NR_FILE_PAGES);	INC_CACHE_INFO(del_total);}
开发者ID:yl849646685,项目名称:linux-2.6.32,代码行数:16,


示例8: __delete_from_swap_cache

/* * This must be called only on pages that have * been verified to be in the swap cache. */void __delete_from_swap_cache(struct page *page){	BUG_ON(!PageLocked(page));	BUG_ON(!PageSwapCache(page));	BUG_ON(PageWriteback(page));	BUG_ON(PagePrivate(page));	radix_tree_delete(&swapper_space.page_tree, page_private(page));	set_page_private(page, 0);	ClearPageSwapCache(page);	total_swapcache_pages--;	pagecache_acct(-1);	INC_CACHE_INFO(del_total);}
开发者ID:jameshilliard,项目名称:actiontec_opensrc_mi424wr-rev-e-f_fw-20-10-7-5,代码行数:18,


示例9: __delete_from_swap_cache

/* * This must be called only on pages that have * been verified to be in the swap cache. */void __delete_from_swap_cache(struct page *page){    swp_entry_t entry;    struct address_space *address_space;    VM_BUG_ON_PAGE(!PageLocked(page), page);    VM_BUG_ON_PAGE(!PageSwapCache(page), page);    VM_BUG_ON_PAGE(PageWriteback(page), page);    entry.val = page_private(page);    address_space = swap_address_space(entry);    radix_tree_delete(&address_space->page_tree, page_private(page));    set_page_private(page, 0);    ClearPageSwapCache(page);    address_space->nrpages--;    __dec_zone_page_state(page, NR_FILE_PAGES);    INC_CACHE_INFO(del_total);}
开发者ID:oldzhu,项目名称:linux,代码行数:22,


示例10: __add_to_swap_cache

/* * __add_to_swap_cache resembles add_to_page_cache_locked on swapper_space, * but sets SwapCache flag and private instead of mapping and index. */int __add_to_swap_cache(struct page *page, swp_entry_t entry){    int error;    struct address_space *address_space;    VM_BUG_ON_PAGE(!PageLocked(page), page);    VM_BUG_ON_PAGE(PageSwapCache(page), page);    VM_BUG_ON_PAGE(!PageSwapBacked(page), page);    get_page(page);    SetPageSwapCache(page);    set_page_private(page, entry.val);    address_space = swap_address_space(entry);    spin_lock_irq(&address_space->tree_lock);    error = radix_tree_insert(&address_space->page_tree,                              entry.val, page);    if (likely(!error)) {        address_space->nrpages++;        __inc_zone_page_state(page, NR_FILE_PAGES);        INC_CACHE_INFO(add_total);    }    spin_unlock_irq(&address_space->tree_lock);    if (unlikely(error)) {        /*         * Only the context which have set SWAP_HAS_CACHE flag         * would call add_to_swap_cache().         * So add_to_swap_cache() doesn't returns -EEXIST.         */        VM_BUG_ON(error == -EEXIST);        set_page_private(page, 0UL);        ClearPageSwapCache(page);        put_page(page);    }    return error;}
开发者ID:oldzhu,项目名称:linux,代码行数:42,



注:本文中的INC_CACHE_INFO函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ INC_DEC函数代码示例
C++ INCCS函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。