Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
3870a237
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
3870a237
编写于
11月 20, 2018
作者:
J
Jonathan Corbet
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'kmalloc' into docs-next
jc: fixed conflict with willy's memory-allocation tag patch.
上级
acf0f57a
01598ba6
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
27 addition
and
28 deletion
+27
-28
include/linux/slab.h
include/linux/slab.h
+27
-28
未找到文件。
include/linux/slab.h
浏览文件 @
3870a237
...
...
@@ -486,48 +486,47 @@ static __always_inline void *kmalloc_large(size_t size, gfp_t flags)
* kmalloc is the normal method of allocating memory
* for objects smaller than page size in the kernel.
*
* The @flags argument may be one of:
* The @flags argument may be one of the GFP flags defined at
* include/linux/gfp.h and described at
* :ref:`Documentation/core-api/mm-api.rst <mm-api-gfp-flags>`
*
* %GFP_USER - Allocate memory on behalf of user. May sleep.
* The recommended usage of the @flags is described at
* :ref:`Documentation/core-api/memory-allocation.rst <memory-allocation>`
*
*
%GFP_KERNEL - Allocate normal kernel ram. May sleep.
*
Below is a brief outline of the most useful GFP flags
*
* %GFP_
ATOMIC - Allocation will not sleep. May use emergency pools.
*
For example, use this inside interrupt handlers
.
* %GFP_
KERNEL
*
Allocate normal kernel ram. May sleep
.
*
* %GFP_HIGHUSER - Allocate pages from high memory.
* %GFP_NOWAIT
* Allocation will not sleep.
*
* %GFP_NOIO - Do not do any I/O at all while trying to get memory.
* %GFP_ATOMIC
* Allocation will not sleep. May use emergency pools.
*
* %GFP_NOFS - Do not make any fs calls while trying to get memory.
*
* %GFP_NOWAIT - Allocation will not sleep.
*
* %__GFP_THISNODE - Allocate node-local memory only.
*
* %GFP_DMA - Allocation suitable for DMA.
* Should only be used for kmalloc() caches. Otherwise, use a
* slab created with SLAB_DMA.
* %GFP_HIGHUSER
* Allocate memory from high memory on behalf of user.
*
* Also it is possible to set different flags by OR'ing
* in one or more of the following additional @flags:
*
* %__GFP_HIGH - This allocation has high priority and may use emergency pools.
*
* %__GFP_NOFAIL - Indicate that this allocation is in no way allowed to fail
* (think twice before using).
* %__GFP_HIGH
* This allocation has high priority and may use emergency pools.
*
* %__GFP_NORETRY - If memory is not immediately available,
* then give up at once.
* %__GFP_NOFAIL
* Indicate that this allocation is in no way allowed to fail
* (think twice before using).
*
* %__GFP_NOWARN - If allocation fails, don't issue any warnings.
* %__GFP_NORETRY
* If memory is not immediately available,
* then give up at once.
*
* %__GFP_
RETRY_MAYFAIL - Try really hard to succeed the allocation but fail
*
eventually
.
* %__GFP_
NOWARN
*
If allocation fails, don't issue any warnings
.
*
*
There are other flags available as well, but these are not intended
*
for general use, and so are not documented here. For a full list of
*
potential flags, always refer to linux/gfp.h
.
*
%__GFP_RETRY_MAYFAIL
*
Try really hard to succeed the allocation but fail
*
eventually
.
*/
static
__always_inline
void
*
kmalloc
(
size_t
size
,
gfp_t
flags
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录