From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 4 Oct 2017 08:39:34 +1030 From: Jonathan Woithe To: Greg Kroah-Hartman Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, Andy Shevchenko , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , "Darren Hart (VMware)" Subject: Re: [PATCH 4.13 103/110] platform/x86: fujitsu-laptop: Dont oops when FUJ02E3 is not presnt Message-ID: <20171003220934.GA1769@marvin.atrad.com.au> References: <20171003114241.408583531@linuxfoundation.org> <20171003114245.404118381@linuxfoundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20171003114245.404118381@linuxfoundation.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: 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 > ------------------ > > From: Ville Syrj�l� > > 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 > Cc: Andy Shevchenko > Signed-off-by: Ville Syrj�l� > Signed-off-by: Darren Hart (VMware) > Signed-off-by: Greg Kroah-Hartman > > --- > 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); > } >