Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
7a275fd7
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看板
提交
7a275fd7
编写于
10月 12, 2019
作者:
I
Ingo Molnar
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'x86/urgent' into perf/urgent, to pick up new CPU model definitions
Signed-off-by:
N
Ingo Molnar
<
mingo@kernel.org
>
上级
df4d2973
8d7c6ac3
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
27 addition
and
26 deletion
+27
-26
arch/x86/include/asm/intel-family.h
arch/x86/include/asm/intel-family.h
+3
-0
arch/x86/include/asm/mwait.h
arch/x86/include/asm/mwait.h
+1
-1
arch/x86/kernel/cpu/vmware.c
arch/x86/kernel/cpu/vmware.c
+1
-1
arch/x86/lib/delay.c
arch/x86/lib/delay.c
+2
-2
include/linux/string.h
include/linux/string.h
+20
-1
lib/string.c
lib/string.c
+0
-21
未找到文件。
arch/x86/include/asm/intel-family.h
浏览文件 @
7a275fd7
...
...
@@ -83,6 +83,9 @@
#define INTEL_FAM6_TIGERLAKE_L 0x8C
#define INTEL_FAM6_TIGERLAKE 0x8D
#define INTEL_FAM6_COMETLAKE 0xA5
#define INTEL_FAM6_COMETLAKE_L 0xA6
/* "Small Core" Processors (Atom) */
#define INTEL_FAM6_ATOM_BONNELL 0x1C
/* Diamondville, Pineview */
...
...
arch/x86/include/asm/mwait.h
浏览文件 @
7a275fd7
...
...
@@ -21,7 +21,7 @@
#define MWAIT_ECX_INTERRUPT_BREAK 0x1
#define MWAITX_ECX_TIMER_ENABLE BIT(1)
#define MWAITX_MAX_LOOPS ((u32)-1)
#define MWAITX_DISABLE_CSTATES 0xf
#define MWAITX_DISABLE_CSTATES 0xf
0
static
inline
void
__monitor
(
const
void
*
eax
,
unsigned
long
ecx
,
unsigned
long
edx
)
...
...
arch/x86/kernel/cpu/vmware.c
浏览文件 @
7a275fd7
...
...
@@ -49,7 +49,7 @@
#define VMWARE_CMD_VCPU_RESERVED 31
#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \
__asm__("inl (%%dx)
" :
\
__asm__("inl (%%dx)
, %%eax" :
\
"=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \
"a"(VMWARE_HYPERVISOR_MAGIC), \
"c"(VMWARE_CMD_##cmd), \
...
...
arch/x86/lib/delay.c
浏览文件 @
7a275fd7
...
...
@@ -113,8 +113,8 @@ static void delay_mwaitx(unsigned long __loops)
__monitorx
(
raw_cpu_ptr
(
&
cpu_tss_rw
),
0
,
0
);
/*
* AMD, like Intel
, supports the EAX hint and EAX=0xf
* means, do not enter any deep C-state and we use it
* AMD, like Intel
's MWAIT version, supports the EAX hint and
*
EAX=0xf0
means, do not enter any deep C-state and we use it
* here in delay() to minimize wakeup latency.
*/
__mwaitx
(
MWAITX_DISABLE_CSTATES
,
delay
,
MWAITX_ECX_TIMER_ENABLE
);
...
...
include/linux/string.h
浏览文件 @
7a275fd7
...
...
@@ -227,7 +227,26 @@ static inline bool strstarts(const char *str, const char *prefix)
}
size_t
memweight
(
const
void
*
ptr
,
size_t
bytes
);
void
memzero_explicit
(
void
*
s
,
size_t
count
);
/**
* memzero_explicit - Fill a region of memory (e.g. sensitive
* keying data) with 0s.
* @s: Pointer to the start of the area.
* @count: The size of the area.
*
* Note: usually using memset() is just fine (!), but in cases
* where clearing out _local_ data at the end of a scope is
* necessary, memzero_explicit() should be used instead in
* order to prevent the compiler from optimising away zeroing.
*
* memzero_explicit() doesn't need an arch-specific version as
* it just invokes the one of memset() implicitly.
*/
static
inline
void
memzero_explicit
(
void
*
s
,
size_t
count
)
{
memset
(
s
,
0
,
count
);
barrier_data
(
s
);
}
/**
* kbasename - return the last part of a pathname.
...
...
lib/string.c
浏览文件 @
7a275fd7
...
...
@@ -748,27 +748,6 @@ void *memset(void *s, int c, size_t count)
EXPORT_SYMBOL
(
memset
);
#endif
/**
* memzero_explicit - Fill a region of memory (e.g. sensitive
* keying data) with 0s.
* @s: Pointer to the start of the area.
* @count: The size of the area.
*
* Note: usually using memset() is just fine (!), but in cases
* where clearing out _local_ data at the end of a scope is
* necessary, memzero_explicit() should be used instead in
* order to prevent the compiler from optimising away zeroing.
*
* memzero_explicit() doesn't need an arch-specific version as
* it just invokes the one of memset() implicitly.
*/
void
memzero_explicit
(
void
*
s
,
size_t
count
)
{
memset
(
s
,
0
,
count
);
barrier_data
(
s
);
}
EXPORT_SYMBOL
(
memzero_explicit
);
#ifndef __HAVE_ARCH_MEMSET16
/**
* memset16() - Fill a memory area with a uint16_t
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录