Messages in this thread | | | Date | Tue, 5 Apr 2011 15:50:56 +0300 | Subject | Re: sony-laptop: fix early NULL pointer dereference | From | Dan Carpenter <> |
| |
On 4/5/11, Thiago Farina <tfransosi@gmail.com> wrote: > On Mon, Apr 4, 2011 at 8:44 PM, Mattia Dongili <malattia@linux.it> wrote: >> Author: Mattia Dongili <malattia@linux.it> >> Date: Fri Apr 1 10:01:41 2011 +0900 >> > I think most of the patches doesn't include these above lines nor the > subject line in the description.
Just ignore those lines. It's a git thing.
> Also when submitting a patch to the > list, please don't forget to put [PATCH] on the subject line. >
Yeah. [patch v2]. But it's too late to fix that so don't worry about it.
> git format-patch should output the right format. > >> sony-laptop: fix early NULL pointer dereference >> >> The SNC acpi driver could get early notifications before it fully >> initializes and that could lead to dereferencing the sony_nc_handles >> structure pointer that is still NULL at that stage. >> Make sure we return early from the handle lookup function in these >> cases. >> >> Signed-off-by: Mattia Dongili <malattia@linux.it> >> --- >> >> Hi Matthew, >> if it's not too late, can you pick this one up instead of the previous >> one (89ec2feafaedd759e53346d641f60863a14cfb9e)? >> If it's too late I'll try and do a round of return value fixes later.
Don't worry about it. Probably the real fix is to make checkpatch.pl complain if you return -1 instead of a proper error code.
>> >> diff --git a/drivers/platform/x86/sony-laptop.c >> b/drivers/platform/x86/sony-laptop.c >> index b2ce172..de79c18 100644 >> --- a/drivers/platform/x86/sony-laptop.c >> +++ b/drivers/platform/x86/sony-laptop.c >> @@ -810,6 +810,11 @@ static int sony_nc_handles_cleanup(struct >> platform_device *pd) >> static int sony_find_snc_handle(int handle) >> { >> int i; >> + >> + /* not initialized yet, return early */ > This comment is useless, it is just repeating what the codes does ;) I > think you can just remove it.
Whatever... Let's just merge this fix and let's move on.
regards, dan carpenter
> >> + if (!handles) >> + return -EINVAL; >> + >> for (i = 0; i < 0x10; i++) { >> if (handles->cap[i] == handle) { >> dprintk("found handle 0x%.4x (offset: 0x%.2x)\n",
| |