[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171003220934.GA1769@marvin.atrad.com.au>
Date: Wed, 4 Oct 2017 08:39:34 +1030
From: Jonathan Woithe <jwoithe@...t42.net>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Andy Shevchenko <andy@...radead.org>,
Ville Syrjälä
<ville.syrjala@...ux.intel.com>,
"Darren Hart (VMware)" <dvhart@...radead.org>
Subject: Re: [PATCH 4.13 103/110] platform/x86: fujitsu-laptop: Dont oops
when FUJ02E3 is not presnt
On Tue, Oct 03, 2017 at 02:30:05PM +0200, Greg Kroah-Hartman wrote:
> 4.13-stable review patch. If anyone has any objections, please let me know.
As per my earlier suggestion, I'm more than happy for this to go to stable
since it fixes a regression.
Reviewed-by: Jonathan Woithe <jwoithe@...t42.net>
> ------------------
>
> From: Ville Syrjälä <ville.syrjala@...ux.intel.com>
>
> commit ce7c47d60bda6c7f09ccf16e978d971c8fa16ff0 upstream.
>
> My Fujitsu-Siemens Lifebook S6120 doesn't have the FUJ02E3 device,
> but it does have FUJ02B1. That means we do register the backlight
> device (and it even seems to work), but the code will oops as soon
> as we try to set the backlight brightness because it's trying to
> call call_fext_func() with a NULL device. Let's just skip those
> function calls when the FUJ02E3 device is not present.
>
> Cc: Jonathan Woithe <jwoithe@...t42.net>
> Cc: Andy Shevchenko <andy@...radead.org>
> Signed-off-by: Ville Syrjälä <ville.syrjala@...ux.intel.com>
> Signed-off-by: Darren Hart (VMware) <dvhart@...radead.org>
> Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
>
> ---
> drivers/platform/x86/fujitsu-laptop.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> --- a/drivers/platform/x86/fujitsu-laptop.c
> +++ b/drivers/platform/x86/fujitsu-laptop.c
> @@ -254,10 +254,12 @@ static int bl_update_status(struct backl
> {
> struct acpi_device *device = bl_get_data(b);
>
> - if (b->props.power == FB_BLANK_POWERDOWN)
> - call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x3);
> - else
> - call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x0);
> + if (fext) {
> + if (b->props.power == FB_BLANK_POWERDOWN)
> + call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x3);
> + else
> + call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x0);
> + }
>
> return set_lcd_level(device, b->props.brightness);
> }
>
Powered by blists - more mailing lists