Patchwork [Oneiric,1/1] UBUNTU: SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci

login
register
mail settings
Submitter Leann Ogasawara
Date Sept. 14, 2011, 6:27 p.m.
Message ID <1316024842.9332.8.camel@adamo>
Download mbox | patch
Permalink /patch/114698/
State New
Headers show

Comments

Leann Ogasawara - Sept. 14, 2011, 6:27 p.m.
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 <leann.ogasawara@canonical.com>
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 <leann.ogasawara@canonical.com>
---
 arch/x86/kernel/reboot.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
Tim Gardner - Sept. 14, 2011, 7:18 p.m.
On 09/14/2011 12:27 PM, Leann Ogasawara wrote:
> 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<leann.ogasawara@canonical.com>
> 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<leann.ogasawara@canonical.com>
> ---
>   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"),
> +		},
> +	},
>   	{ }
>   };
>

Patch

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"),
+		},
+	},
 	{ }
 };