From patchwork Wed Sep 14 18:27:20 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [Oneiric, 1/1] UBUNTU: SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci Date: Wed, 14 Sep 2011 08:27:20 -0000 From: Leann Ogasawara X-Patchwork-Id: 114698 Message-Id: <1316024842.9332.8.camel@adamo> To: kernel-team Hi All, BugLink: http://bugs.launchpad.net/bugs/818933 So given that we are pretty much in Kernel Freeze, I'm submitting the following patch per our SRU guidelines... == SRU Justification == It's been reported that the Dell Optiplex 990 doesn't reboot unless using reboot=pci. The following patch resolves this issue and has been successfully tested. Upstream is unfortunately not accepting any additional quirk patches like this as they would prefer to migrate to a more systematic approach. Given that the patch is system specific (ie low risk of regression), precedence for similar quirk patches already existing, and having received positive test results, I feel it should be carried as a SAUCE patch until a more systematic approach can be found which upstream will accept. == Impact == Affects Dell Optiplex 990 models. == Test Case == Without the patch, those with a Dell Optiplex 990 must use reboot=pci as a workaround in order for the system to successfully reboot. With the patch applied, the work around is no longer needed. == Fix == See patch below. >From 8f16739b2712e9e571e0e60499c72521ff273401 Mon Sep 17 00:00:00 2001 From: Leann Ogasawara Date: Thu, 1 Sep 2011 07:42:32 -0700 Subject: [PATCH] UBUNTU: SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci BugLink: http://bugs.launchpad.net/bugs/768039 The Dell Optiplex 990 doesn't reboot unless reboot=pci is set. Signed-off-by: Leann Ogasawara --- arch/x86/kernel/reboot.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c index d2673af..947b53b 100644 --- a/arch/x86/kernel/reboot.c +++ b/arch/x86/kernel/reboot.c @@ -475,6 +475,14 @@ static struct dmi_system_id __initdata pci_reboot_dmi_table[] = { DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790"), }, }, + { /* Handle problems with rebooting on the OptiPlex 990. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 990", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"), + }, + }, { } };