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
78635fc7
Commit
78635fc7
authored
Aug 11, 2008
by
Ingo Molnar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rcu, debug: detect stalled grace periods, cleanups
small cleanups. Signed-off-by:
Ingo Molnar
<
mingo@elte.hu
>
parent
67182ae1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
13 deletions
+13
-13
kernel/rcuclassic.c
kernel/rcuclassic.c
+13
-13
No files found.
kernel/rcuclassic.c
View file @
78635fc7
...
...
@@ -294,6 +294,7 @@ static inline void record_gp_check_time(struct rcu_ctrlblk *rcp)
{
rcp
->
gp_check
=
get_seconds
()
+
3
;
}
static
void
print_other_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
)
{
int
cpu
;
...
...
@@ -303,11 +304,9 @@ static void print_other_cpu_stall(struct rcu_ctrlblk *rcp)
spin_lock
(
&
rcp
->
lock
);
delta
=
get_seconds
()
-
rcp
->
gp_check
;
if
(
delta
<
2L
||
cpus_empty
(
rcp
->
cpumask
))
{
if
(
delta
<
2L
||
cpus_empty
(
rcp
->
cpumask
))
{
spin_unlock
(
&
rcp
->
lock
);
return
;
rcp
->
gp_check
=
get_seconds
()
+
30
;
}
spin_unlock
(
&
rcp
->
lock
);
...
...
@@ -319,6 +318,7 @@ static void print_other_cpu_stall(struct rcu_ctrlblk *rcp)
printk
(
" (detected by %d, t=%lu/%lu)
\n
"
,
smp_processor_id
(),
get_seconds
(),
rcp
->
gp_check
);
}
static
void
print_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
)
{
printk
(
KERN_ERR
"RCU detected CPU %d stall (t=%lu/%lu)
\n
"
,
...
...
@@ -329,8 +329,8 @@ static void print_cpu_stall(struct rcu_ctrlblk *rcp)
rcp
->
gp_check
=
get_seconds
()
+
30
;
spin_unlock
(
&
rcp
->
lock
);
}
static
inline
void
check_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
,
struct
rcu_data
*
rdp
)
static
void
check_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
,
struct
rcu_data
*
rdp
)
{
long
delta
;
...
...
@@ -341,12 +341,11 @@ static inline void check_cpu_stall(struct rcu_ctrlblk *rcp,
print_cpu_stall
(
rcp
);
}
else
if
(
!
cpus_empty
(
rcp
->
cpumask
)
&&
delta
>=
2L
)
{
/* They had two seconds to dump stack, so complain. */
print_other_cpu_stall
(
rcp
);
}
else
{
if
(
!
cpus_empty
(
rcp
->
cpumask
)
&&
delta
>=
2L
)
{
/* They had two seconds to dump stack, so complain. */
print_other_cpu_stall
(
rcp
);
}
}
}
...
...
@@ -355,8 +354,9 @@ static inline void check_cpu_stall(struct rcu_ctrlblk *rcp,
static
inline
void
record_gp_check_time
(
struct
rcu_ctrlblk
*
rcp
)
{
}
static
inline
void
check_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
,
struct
rcu_data
*
rdp
)
static
inline
void
check_cpu_stall
(
struct
rcu_ctrlblk
*
rcp
,
struct
rcu_data
*
rdp
)
{
}
...
...
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