Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
0dd3cc51
Commit
0dd3cc51
authored
Oct 08, 2002
by
Martin Schwidefsky
Committed by
Linus Torvalds
Oct 08, 2002
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] s390 update: syscall tracing
Pass the system call number in grp2 to strace instead of -ENOSYS.
parent
b579a8f7
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
22 deletions
+20
-22
arch/s390/kernel/entry.S
arch/s390/kernel/entry.S
+9
-9
arch/s390x/kernel/entry.S
arch/s390x/kernel/entry.S
+11
-13
No files found.
arch/s390/kernel/entry.S
View file @
0dd3cc51
...
@@ -177,11 +177,11 @@ do_call_base:
...
@@ -177,11 +177,11 @@ do_call_base:
system_call
:
system_call
:
SAVE_ALL_BASE
SAVE_ALL_BASE
SAVE_ALL
__LC_SVC_OLD_PSW
,
1
SAVE_ALL
__LC_SVC_OLD_PSW
,
1
lh
%
r8
,
0x8a
#
get
svc
number
from
lowcore
lh
%
r7
,
0x8a
#
get
svc
number
from
lowcore
sll
%
r8
,
2
GET_THREAD_INFO
#
load
pointer
to
task_struct
to
R9
GET_THREAD_INFO
#
load
pointer
to
task_struct
to
R9
sll
%
r7
,
2
stosm
24
(%
r15
),
0x03
#
reenable
interrupts
stosm
24
(%
r15
),
0x03
#
reenable
interrupts
l
%
r8
,
sys_call_table
-
entry_base
(%
r
8
,%
r13
)
#
get
system
call
addr
.
l
%
r8
,
sys_call_table
-
entry_base
(%
r
7
,%
r13
)
#
get
system
call
addr
.
tm
__TI_flags
+
3
(%
r9
),
_TIF_SYSCALL_TRACE
tm
__TI_flags
+
3
(%
r9
),
_TIF_SYSCALL_TRACE
bo
BASED
(
sysc_tracesys
)
bo
BASED
(
sysc_tracesys
)
basr
%
r14
,%
r8
#
call
sys_xxxx
basr
%
r14
,%
r8
#
call
sys_xxxx
...
@@ -241,13 +241,13 @@ sysc_sigpending:
...
@@ -241,13 +241,13 @@ sysc_sigpending:
#
#
sysc_tracesys
:
sysc_tracesys
:
l
%
r1
,
BASED
(
.
Ltrace
)
l
%
r1
,
BASED
(
.
Ltrace
)
mvc
SP_R2
(
4
,%
r15
),
BASED
(
.
Lc_ENOSYS
)
srl
%
r7
,
2
st
%
r7
,
SP_R2
(
4
,%
r15
)
basr
%
r14
,%
r1
basr
%
r14
,%
r1
clc
SP_R2
(
4
,%
r15
),
BASED
(
.
Lc256
)
l
%
r7
,
SP_R2
(
4
,%
r15
)
#
strace
might
have
changed
the
bnl
BASED
(
sysc_tracego
)
n
%
r7
,
BASED
(
.
Lc256
)
#
system
call
l
%
r8
,
SP_R2
(%
r15
)
#
strace
changed
the
syscall
sll
%
r7
,
2
sll
%
r8
,
2
l
%
r8
,
sys_call_table
-
entry_base
(%
r7
,%
r13
)
l
%
r8
,
sys_call_table
-
entry_base
(%
r8
,%
r13
)
sysc_tracego
:
sysc_tracego
:
lm
%
r3
,%
r6
,
SP_R3
(%
r15
)
lm
%
r3
,%
r6
,
SP_R3
(%
r15
)
l
%
r2
,
SP_ORIG_R2
(%
r15
)
l
%
r2
,
SP_ORIG_R2
(%
r15
)
...
...
arch/s390x/kernel/entry.S
View file @
0dd3cc51
...
@@ -158,16 +158,16 @@ do_call_softirq:
...
@@ -158,16 +158,16 @@ do_call_softirq:
.
globl
system_call
.
globl
system_call
system_call
:
system_call
:
SAVE_ALL
__LC_SVC_OLD_PSW
,
1
SAVE_ALL
__LC_SVC_OLD_PSW
,
1
llgh
%
r
8
,
__LC_SVC_INT_CODE
#
get
svc
number
from
lowcore
llgh
%
r
7
,
__LC_SVC_INT_CODE
#
get
svc
number
from
lowcore
GET_THREAD_INFO
#
load
pointer
to
task_struct
to
R9
GET_THREAD_INFO
#
load
pointer
to
task_struct
to
R9
stosm
48
(%
r15
),
0x03
#
reenable
interrupts
stosm
48
(%
r15
),
0x03
#
reenable
interrupts
larl
%
r
7
,
sys_call_table
larl
%
r
10
,
sys_call_table
sll
%
r
8
,
3
sll
%
r
7
,
3
tm
SP_PSW
+
3
(%
r15
),
0x01
#
are
we
running
in
31
bit
mode
?
tm
SP_PSW
+
3
(%
r15
),
0x01
#
are
we
running
in
31
bit
mode
?
jo
sysc_noemu
jo
sysc_noemu
la
%
r
7
,
4
(%
r7
)
#
use
31
bit
emulation
system
calls
la
%
r
10
,
4
(%
r10
)
#
use
31
bit
emulation
system
calls
sysc_noemu
:
sysc_noemu
:
lgf
%
r8
,
0
(%
r
8
,%
r7
)
#
load
address
of
system
call
routine
lgf
%
r8
,
0
(%
r
7
,%
r10
)
#
load
address
of
system
call
routine
tm
__TI_flags
+
7
(%
r9
),
_TIF_SYSCALL_TRACE
tm
__TI_flags
+
7
(%
r9
),
_TIF_SYSCALL_TRACE
jo
sysc_tracesys
jo
sysc_tracesys
basr
%
r14
,%
r8
#
call
sys_xxxx
basr
%
r14
,%
r8
#
call
sys_xxxx
...
@@ -225,15 +225,13 @@ sysc_sigpending:
...
@@ -225,15 +225,13 @@ sysc_sigpending:
#
special
linkage
:
%
r12
contains
the
return
address
for
trace_svc
#
special
linkage
:
%
r12
contains
the
return
address
for
trace_svc
#
#
sysc_tracesys
:
sysc_tracesys
:
lghi
%
r0
,-
ENOSYS
srl
%
r7
,
3
stg
%
r
0
,
SP_R2
(%
r15
)
#
give
sysc_trace
an
-
ENOSYS
retval
stg
%
r
7
,
SP_R2
(%
r15
)
brasl
%
r14
,
syscall_trace
brasl
%
r14
,
syscall_trace
larl
%
r6
,
.
Lc256
lghi
%
r7
,
255
#
strace
might
have
changed
the
clc
SP_R2
(
8
,%
r15
),
0
(%
r6
)
ng
%
r7
,
SP_R2
(%
r15
)
#
the
system
call
jnl
sysc_tracego
sll
%
r7
,
3
lg
%
r2
,
SP_R2
(%
r15
)
lgf
%
r8
,
0
(%
r7
,%
r10
)
sllg
%
r2
,%
r2
,
3
#
strace
wants
to
change
the
syscall
lgf
%
r8
,
0
(%
r2
,%
r7
)
sysc_tracego
:
sysc_tracego
:
lmg
%
r3
,%
r6
,
SP_R3
(%
r15
)
lmg
%
r3
,%
r6
,
SP_R3
(%
r15
)
lg
%
r2
,
SP_ORIG_R2
(%
r15
)
lg
%
r2
,
SP_ORIG_R2
(%
r15
)
...
...
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