forked from rpms/kernel
		
	drop old watchdog patch
This commit is contained in:
		
							parent
							
								
									2721cfeb56
								
							
						
					
					
						commit
						255d883327
					
				| @ -60,8 +60,6 @@ disable-i8042-check-on-apple-mac.patch | |||||||
| 
 | 
 | ||||||
| lis3-improve-handling-of-null-rate.patch | lis3-improve-handling-of-null-rate.patch | ||||||
| 
 | 
 | ||||||
| watchdog-Disable-watchdog-on-virtual-machines.patch |  | ||||||
| 
 |  | ||||||
| scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch | scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch | ||||||
| 
 | 
 | ||||||
| criu-no-expert.patch | criu-no-expert.patch | ||||||
|  | |||||||
| @ -1,79 +0,0 @@ | |||||||
| From f1293c68aff98cd913a59b151aac938ec4ce4857 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Dave Jones <davej@redhat.com> |  | ||||||
| Date: Tue, 24 Jun 2014 08:43:34 -0400 |  | ||||||
| Subject: [PATCH] watchdog: Disable watchdog on virtual machines. |  | ||||||
| 
 |  | ||||||
| For various reasons, VMs seem to trigger the soft lockup detector a lot, |  | ||||||
| in cases where it's just not possible for a lockup to occur. |  | ||||||
| (Example: https://bugzilla.redhat.com/show_bug.cgi?id=971139) |  | ||||||
| 
 |  | ||||||
| In some cases it seems that the host just never scheduled the app running |  | ||||||
| the VM for a very long time (Could be the host was under heavy load). |  | ||||||
| 
 |  | ||||||
| Just disable the detector on VMs. |  | ||||||
| 
 |  | ||||||
| Bugzilla: 971139 |  | ||||||
| Upstream-status: Fedora mustard for now |  | ||||||
| 
 |  | ||||||
| Signed-off-by: Dave Jones <davej@redhat.com> |  | ||||||
| ---
 |  | ||||||
|  kernel/watchdog.c | 29 +++++++++++++++++++++++++++++ |  | ||||||
|  1 file changed, 29 insertions(+) |  | ||||||
| 
 |  | ||||||
| diff --git a/kernel/watchdog.c b/kernel/watchdog.c
 |  | ||||||
| index 18f34cf..6aadffe 100644
 |  | ||||||
| --- a/kernel/watchdog.c
 |  | ||||||
| +++ b/kernel/watchdog.c
 |  | ||||||
| @@ -20,6 +20,7 @@
 |  | ||||||
|  #include <linux/sched/rt.h> |  | ||||||
|  #include <linux/tick.h> |  | ||||||
|  #include <linux/workqueue.h> |  | ||||||
| +#include <linux/dmi.h>
 |  | ||||||
|   |  | ||||||
|  #include <asm/irq_regs.h> |  | ||||||
|  #include <linux/kvm_para.h> |  | ||||||
| @@ -185,6 +186,32 @@ static int __init hardlockup_all_cpu_backtrace_setup(char *str)
 |  | ||||||
|  __setup("hardlockup_all_cpu_backtrace=", hardlockup_all_cpu_backtrace_setup); |  | ||||||
|  #endif |  | ||||||
|   |  | ||||||
| +static int disable_watchdog(const struct dmi_system_id *d)
 |  | ||||||
| +{
 |  | ||||||
| +	printk(KERN_INFO "watchdog: disabled (inside virtual machine)\n");
 |  | ||||||
| +	watchdog_user_enabled = 0;
 |  | ||||||
| +	return 0;
 |  | ||||||
| +}
 |  | ||||||
| +
 |  | ||||||
| +static const struct dmi_system_id watchdog_virt_dmi_table[] = {
 |  | ||||||
| +	{
 |  | ||||||
| +		.callback = disable_watchdog,
 |  | ||||||
| +		.ident = "VMware",
 |  | ||||||
| +		.matches = {
 |  | ||||||
| +			DMI_MATCH(DMI_SYS_VENDOR, "VMware, Inc."),
 |  | ||||||
| +		},
 |  | ||||||
| +	},
 |  | ||||||
| +	{
 |  | ||||||
| +		.callback = disable_watchdog,
 |  | ||||||
| +		.ident = "Bochs",
 |  | ||||||
| +		.matches = {
 |  | ||||||
| +			DMI_MATCH(DMI_SYS_VENDOR, "Bochs"),
 |  | ||||||
| +		},
 |  | ||||||
| +	},
 |  | ||||||
| +	{}
 |  | ||||||
| +};
 |  | ||||||
| +
 |  | ||||||
| +
 |  | ||||||
|  /* |  | ||||||
|   * Hard-lockup warnings should be triggered after just a few seconds. Soft- |  | ||||||
|   * lockups can have false positives under extreme conditions. So we generally |  | ||||||
| @@ -1030,6 +1057,8 @@ out:
 |  | ||||||
|   |  | ||||||
|  void __init lockup_detector_init(void) |  | ||||||
|  { |  | ||||||
| +	dmi_check_system(watchdog_virt_dmi_table);
 |  | ||||||
| +
 |  | ||||||
|  	set_sample_period(); |  | ||||||
|   |  | ||||||
|  #ifdef CONFIG_NO_HZ_FULL |  | ||||||
| -- 
 |  | ||||||
| 2.5.0 |  | ||||||
| 
 |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user