Sachin Kamat wrote:

> > On 8 November 2012 14:31, Sachin Kamat <[email protected]> wrote:
> >> chan->end is tested for being NULL. However in the event that it is
> NULL, the
> >> subsequent assignment statement would lead to NULL pointer dereference.
> >> Thus dereferencing it only when it is not NULL.
> >>

Logically, looks OK to me, I'm not sure this patch is right because if
(chan->end) is NULL, we do nothing for chan though...

I think, we need to sort out the dma_enqueue() later.

Will apply, thanks.

Best regards,
Kgene.
--
Kukjin Kim <[email protected]>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.


> >> Signed-off-by: Sachin Kamat <[email protected]>
> >> ---
> >> Based on Kukjin Kim's for-next branch. Compile tested.
> >> ---
> >>  arch/arm/plat-s3c24xx/dma.c |    9 +++++----
> >>  1 files changed, 5 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/arch/arm/plat-s3c24xx/dma.c b/arch/arm/plat-s3c24xx/dma.c
> >> index db98e70..0abd1c4 100644
> >> --- a/arch/arm/plat-s3c24xx/dma.c
> >> +++ b/arch/arm/plat-s3c24xx/dma.c
> >> @@ -473,12 +473,13 @@ int s3c2410_dma_enqueue(enum dma_ch channel, void
> *id,
> >>                 pr_debug("dma%d: %s: buffer %p queued onto non-empty
> channel\n",
> >>                          chan->number, __func__, buf);
> >>
> >> -               if (chan->end == NULL)
> >> +               if (chan->end == NULL) {
> >>                         pr_debug("dma%d: %s: %p not empty, and chan-
> >end==NULL?\n",
> >>                                  chan->number, __func__, chan);
> >> -
> >> -               chan->end->next = buf;
> >> -               chan->end = buf;
> >> +               } else {
> >> +                       chan->end->next = buf;
> >> +                       chan->end = buf;
> >> +               }
> >>         }
> >>
> >>         /* if necessary, update the next buffer field */
> >> --
> >> 1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to