Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 248501 Details for
Bug 367251
Add variable softlockup timeout
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
RHEL5 fix for this issue
softlockup.patch (text/plain), 4.36 KB, created by
Prarit Bhargava
on 2007-11-05 18:17:41 UTC
(
hide
)
Description:
RHEL5 fix for this issue
Filename:
MIME Type:
Creator:
Prarit Bhargava
Created:
2007-11-05 18:17:41 UTC
Size:
4.36 KB
patch
obsolete
>diff -urNp -X linux-2.6.18.ia64/Documentation/dontdiff linux-2.6.18.ia64.orig/Documentation/sysctl/kernel.txt linux-2.6.18.ia64/Documentation/sysctl/kernel.txt >--- linux-2.6.18.ia64.orig/Documentation/sysctl/kernel.txt 2007-11-05 11:26:29.000000000 -0500 >+++ linux-2.6.18.ia64/Documentation/sysctl/kernel.txt 2007-11-05 11:56:28.000000000 -0500 >@@ -309,6 +309,14 @@ kernel. This value defaults to SHMMAX. > > ============================================================== > >+softlockup_thresh: >+ >+This value can be used to lower the softlockup tolerance >+threshold. The default threshold is 10s. If a cpu is locked up >+for 10s, the kernel complains. Valid values are 1-60s. >+ >+============================================================== >+ > tainted: > > Non-zero if the kernel has been tainted. Numeric values, which >diff -urNp -X linux-2.6.18.ia64/Documentation/dontdiff linux-2.6.18.ia64.orig/include/linux/sched.h linux-2.6.18.ia64/include/linux/sched.h >--- linux-2.6.18.ia64.orig/include/linux/sched.h 2007-11-05 11:26:30.000000000 -0500 >+++ linux-2.6.18.ia64/include/linux/sched.h 2007-11-05 11:56:28.000000000 -0500 >@@ -217,6 +217,7 @@ extern void softlockup_tick(void); > extern void spawn_softlockup_task(void); > extern void touch_softlockup_watchdog(void); > extern void touch_all_softlockup_watchdogs(void); >+extern int softlockup_thresh; > #else > static inline void softlockup_tick(void) > { >diff -urNp -X linux-2.6.18.ia64/Documentation/dontdiff linux-2.6.18.ia64.orig/include/linux/sysctl.h linux-2.6.18.ia64/include/linux/sysctl.h >--- linux-2.6.18.ia64.orig/include/linux/sysctl.h 2007-11-05 11:26:30.000000000 -0500 >+++ linux-2.6.18.ia64/include/linux/sysctl.h 2007-11-05 13:02:06.000000000 -0500 >@@ -155,6 +155,7 @@ enum > KERN_MAX_LOCK_DEPTH=74, > KERN_KDUMP_ON_INIT=75, /* int: ia64 kdump with INIT */ > KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */ >+ KERN_SOFTLOCKUP_THRESH=77, /* int: min time to report softlockups */ > }; > > >diff -urNp -X linux-2.6.18.ia64/Documentation/dontdiff linux-2.6.18.ia64.orig/kernel/softlockup.c linux-2.6.18.ia64/kernel/softlockup.c >--- linux-2.6.18.ia64.orig/kernel/softlockup.c 2007-11-05 11:26:29.000000000 -0500 >+++ linux-2.6.18.ia64/kernel/softlockup.c 2007-11-05 11:58:05.000000000 -0500 >@@ -21,6 +21,7 @@ static DEFINE_PER_CPU(unsigned long, pri > static DEFINE_PER_CPU(struct task_struct *, watchdog_task); > > static int did_panic = 0; >+int softlockup_thresh = 10; > > static int > softlock_panic(struct notifier_block *this, unsigned long event, void *ptr) >@@ -76,7 +77,7 @@ void softlockup_tick(void) > wake_up_process(per_cpu(watchdog_task, this_cpu)); > > /* Warn about unreasonable 10+ seconds delays: */ >- if (time_after(jiffies, touch_timestamp + 10*HZ)) { >+ if (time_after(jiffies, touch_timestamp + softlockup_thresh*HZ)) { > per_cpu(print_timestamp, this_cpu) = touch_timestamp; > > spin_lock(&print_lock); >diff -urNp -X linux-2.6.18.ia64/Documentation/dontdiff linux-2.6.18.ia64.orig/kernel/sysctl.c linux-2.6.18.ia64/kernel/sysctl.c >--- linux-2.6.18.ia64.orig/kernel/sysctl.c 2007-11-05 11:26:29.000000000 -0500 >+++ linux-2.6.18.ia64/kernel/sysctl.c 2007-11-05 13:02:36.000000000 -0500 >@@ -105,6 +105,19 @@ static int __init setup_exec_shield(char > > __setup("exec-shield=", setup_exec_shield); > >+/* Constants used for minimum and maximum */ >+#ifdef CONFIG_DETECT_SOFTLOCKUP >+static int one = 1; >+static int sixty = 60; >+#endif >+ >+#ifdef CONFIG_MMU >+static int two = 2; >+#endif >+ >+static int zero; >+static int one_hundred = 100; >+ > /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ > static int maxolduid = 65535; > static int minolduid; >@@ -748,6 +761,19 @@ static ctl_table kern_table[] = { > .proc_handler = &proc_dointvec, > }, > #endif >+#ifdef CONFIG_DETECT_SOFTLOCKUP >+ { >+ .ctl_name = KERN_SOFTLOCKUP_THRESH, >+ .procname = "softlockup_thresh", >+ .data = &softlockup_thresh, >+ .maxlen = sizeof(int), >+ .mode = 0644, >+ .proc_handler = &proc_dointvec_minmax, >+ .strategy = &sysctl_intvec, >+ .extra1 = &one, >+ .extra2 = &sixty, >+ }, >+#endif > #ifdef CONFIG_COMPAT > { > .ctl_name = KERN_COMPAT_LOG, >@@ -772,12 +798,6 @@ static ctl_table kern_table[] = { > { .ctl_name = 0 } > }; > >-/* Constants for minimum and maximum testing in vm_table. >- We use these as one-element integer vectors. */ >-static int zero; >-static int one_hundred = 100; >- >- > static ctl_table vm_table[] = { > { > .ctl_name = VM_OVERCOMMIT_MEMORY,
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 367251
: 248501