Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
95f66b37
Commit
95f66b37
authored
Feb 25, 2009
by
Ingo Molnar
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'x86/asm' into x86/mm
parents
46cb27f5
9f331119
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
32 additions
and
21 deletions
+32
-21
arch/x86/include/asm/irq_vectors.h
arch/x86/include/asm/irq_vectors.h
+1
-1
arch/x86/include/asm/uaccess_64.h
arch/x86/include/asm/uaccess_64.h
+14
-2
arch/x86/kernel/efi_stub_32.S
arch/x86/kernel/efi_stub_32.S
+1
-0
arch/x86/kernel/efi_stub_64.S
arch/x86/kernel/efi_stub_64.S
+7
-0
arch/x86/kernel/entry_64.S
arch/x86/kernel/entry_64.S
+8
-15
arch/x86/kernel/head_64.S
arch/x86/kernel/head_64.S
+1
-3
No files found.
arch/x86/include/asm/irq_vectors.h
View file @
95f66b37
...
...
@@ -128,7 +128,7 @@
#ifndef __ASSEMBLY__
static
inline
int
invalid_vm86_irq
(
int
irq
)
{
return
irq
<
3
||
irq
>
15
;
return
irq
<
FIRST_VM86_IRQ
||
irq
>
LAST_VM86_IRQ
;
}
#endif
...
...
arch/x86/include/asm/uaccess_64.h
View file @
95f66b37
...
...
@@ -192,14 +192,26 @@ static inline int __copy_from_user_nocache(void *dst, const void __user *src,
unsigned
size
)
{
might_sleep
();
return
__copy_user_nocache
(
dst
,
src
,
size
,
1
);
/*
* In practice this limit means that large file write()s
* which get chunked to 4K copies get handled via
* non-temporal stores here. Smaller writes get handled
* via regular __copy_from_user():
*/
if
(
likely
(
size
>=
PAGE_SIZE
))
return
__copy_user_nocache
(
dst
,
src
,
size
,
1
);
else
return
__copy_from_user
(
dst
,
src
,
size
);
}
static
inline
int
__copy_from_user_inatomic_nocache
(
void
*
dst
,
const
void
__user
*
src
,
unsigned
size
)
{
return
__copy_user_nocache
(
dst
,
src
,
size
,
0
);
if
(
likely
(
size
>=
PAGE_SIZE
))
return
__copy_user_nocache
(
dst
,
src
,
size
,
0
);
else
return
__copy_from_user_inatomic
(
dst
,
src
,
size
);
}
unsigned
long
...
...
arch/x86/kernel/efi_stub_32.S
View file @
95f66b37
...
...
@@ -113,6 +113,7 @@ ENTRY(efi_call_phys)
movl
(%
edx
),
%
ecx
pushl
%
ecx
ret
ENDPROC
(
efi_call_phys
)
.
previous
.
data
...
...
arch/x86/kernel/efi_stub_64.S
View file @
95f66b37
...
...
@@ -41,6 +41,7 @@ ENTRY(efi_call0)
addq
$
32
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call0
)
ENTRY
(
efi_call1
)
SAVE_XMM
...
...
@@ -50,6 +51,7 @@ ENTRY(efi_call1)
addq
$
32
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call1
)
ENTRY
(
efi_call2
)
SAVE_XMM
...
...
@@ -59,6 +61,7 @@ ENTRY(efi_call2)
addq
$
32
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call2
)
ENTRY
(
efi_call3
)
SAVE_XMM
...
...
@@ -69,6 +72,7 @@ ENTRY(efi_call3)
addq
$
32
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call3
)
ENTRY
(
efi_call4
)
SAVE_XMM
...
...
@@ -80,6 +84,7 @@ ENTRY(efi_call4)
addq
$
32
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call4
)
ENTRY
(
efi_call5
)
SAVE_XMM
...
...
@@ -92,6 +97,7 @@ ENTRY(efi_call5)
addq
$
48
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call5
)
ENTRY
(
efi_call6
)
SAVE_XMM
...
...
@@ -107,3 +113,4 @@ ENTRY(efi_call6)
addq
$
48
,
%
rsp
RESTORE_XMM
ret
ENDPROC
(
efi_call6
)
arch/x86/kernel/entry_64.S
View file @
95f66b37
...
...
@@ -77,20 +77,17 @@ ENTRY(ftrace_caller)
movq
8
(%
rbp
),
%
rsi
subq
$MCOUNT_INSN_SIZE
,
%
rdi
.
globl
ftrace_call
ftrace_call
:
GLOBAL
(
ftrace_call
)
call
ftrace_stub
MCOUNT_RESTORE_FRAME
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
.
globl
ftrace_graph_call
ftrace_graph_call
:
GLOBAL
(
ftrace_graph_call
)
jmp
ftrace_stub
#endif
.
globl
ftrace_stub
ftrace_stub
:
GLOBAL
(
ftrace_stub
)
retq
END
(
ftrace_caller
)
...
...
@@ -110,8 +107,7 @@ ENTRY(mcount)
jnz
ftrace_graph_caller
#endif
.
globl
ftrace_stub
ftrace_stub
:
GLOBAL
(
ftrace_stub
)
retq
trace
:
...
...
@@ -148,9 +144,7 @@ ENTRY(ftrace_graph_caller)
retq
END
(
ftrace_graph_caller
)
.
globl
return_to_handler
return_to_handler
:
GLOBAL
(
return_to_handler
)
subq
$
80
,
%
rsp
movq
%
rax
,
(%
rsp
)
...
...
@@ -188,6 +182,7 @@ return_to_handler:
ENTRY
(
native_usergs_sysret64
)
swapgs
sysretq
ENDPROC
(
native_usergs_sysret64
)
#endif /* CONFIG_PARAVIRT */
...
...
@@ -633,16 +628,14 @@ tracesys:
*
Syscall
return
path
ending
with
IRET
.
*
Has
correct
top
of
stack
,
but
partial
stack
frame
.
*/
.
globl
int_ret_from_sys_call
.
globl
int_with_check
int_ret_from_sys_call
:
GLOBAL
(
int_ret_from_sys_call
)
DISABLE_INTERRUPTS
(
CLBR_NONE
)
TRACE_IRQS_OFF
testl
$
3
,
CS
-
ARGOFFSET
(%
rsp
)
je
retint_restore_args
movl
$
_TIF_ALLWORK_MASK
,%
edi
/
*
edi
:
mask
to
check
*/
int_with_check
:
GLOBAL
(
int_with_check
)
LOCKDEP_SYS_EXIT_IRQ
GET_THREAD_INFO
(%
rcx
)
movl
TI_flags
(%
rcx
),%
edx
...
...
arch/x86/kernel/head_64.S
View file @
95f66b37
...
...
@@ -329,8 +329,6 @@ early_idt_ripmsg:
#endif /* CONFIG_EARLY_PRINTK */
.
previous
.
balign
PAGE_SIZE
#define NEXT_PAGE(name) \
.
balign
PAGE_SIZE
; \
ENTRY
(
name
)
...
...
@@ -419,7 +417,7 @@ ENTRY(phys_base)
.
section
.
bss
,
"aw"
,
@
nobits
.
align
L1_CACHE_BYTES
ENTRY
(
idt_table
)
.
skip
256
*
16
.
skip
IDT_ENTRIES
*
16
.
section
.
bss
.
page_aligned
,
"aw"
,
@
nobits
.
align
PAGE_SIZE
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment