[PATCH v1] drm/nouveau/clk: avoid potential null-dereference
Ilia Mirkin
imirkin at alum.mit.edu
Wed Jan 7 20:57:18 PST 2015
On Wed, Jan 7, 2015 at 11:32 PM, Vince Hsu <vinceh at nvidia.com> wrote:
>
> On 01/08/2015 10:45 AM, Ilia Mirkin wrote:
>>
>> On Wed, Jan 7, 2015 at 5:29 PM, Andy Shevchenko
>> <andy.shevchenko at gmail.com> wrote:
>>>
>>> We have to check pointer before usage.
>>>
>>> Reported-by: Andrey Karpov <karpov at viva64.com>
>>> Signed-off-by: Andy Shevchenko <andy.shevchenko at gmail.com>
>>> ---
>>> drivers/gpu/drm/nouveau/core/subdev/clock/base.c | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/gpu/drm/nouveau/core/subdev/clock/base.c
>>> b/drivers/gpu/drm/nouveau/core/subdev/clock/base.c
>>> index e51b72d..2e84436 100644
>>> --- a/drivers/gpu/drm/nouveau/core/subdev/clock/base.c
>>> +++ b/drivers/gpu/drm/nouveau/core/subdev/clock/base.c
>>> @@ -322,7 +322,6 @@ nouveau_pstate_new(struct nouveau_clock *clk, int
>>> idx)
>>> return 0;
>>>
>>> pstate = kzalloc(sizeof(*pstate), GFP_KERNEL);
>>> - cstate = &pstate->base;
>>
>> What's wrong with this line? If pstate == NULL, &pstate->base == NULL
>> as well and we return.
>
> If pstate == NULL (kzalloc returned NULL), pstate->base triggers a null
> pointer
> deference error?
Where do you see "pstate->base"? I only see "&pstate->base" which
merely computes an offset into a structure... No reason to dereference
pstate.
-ilia
More information about the dri-devel
mailing list