lkml.org 
[lkml]   [2011]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch 2/2] ptp: fix some locking bugs in ptp_read()
    On Sun, May 29, 2011 at 10:54:07PM +0300, Dan Carpenter wrote:
    > There was an unlock missing on an error path, and a double unlock on
    > another error path.

    Sloppy, sloppy me.

    Again, please take this for 3.0-rc2.

    Thanks,
    Richard

    > Signed-off-by: Dan Carpenter <error27@gmail.com>
    >
    > diff --git a/drivers/ptp/ptp_chardev.c b/drivers/ptp/ptp_chardev.c
    > index 93fa22d..e7f301da2 100644
    > --- a/drivers/ptp/ptp_chardev.c
    > +++ b/drivers/ptp/ptp_chardev.c
    > @@ -130,8 +130,10 @@ ssize_t ptp_read(struct posix_clock *pc,
    > return -ERESTARTSYS;
    > }
    >
    > - if (ptp->defunct)
    > + if (ptp->defunct) {
    > + mutex_unlock(&ptp->tsevq_mux);
    > return -ENODEV;
    > + }
    >
    > spin_lock_irqsave(&queue->lock, flags);
    >
    > @@ -151,10 +153,8 @@ ssize_t ptp_read(struct posix_clock *pc,
    >
    > mutex_unlock(&ptp->tsevq_mux);
    >
    > - if (copy_to_user(buf, event, cnt)) {
    > - mutex_unlock(&ptp->tsevq_mux);
    > + if (copy_to_user(buf, event, cnt))
    > return -EFAULT;
    > - }
    >
    > return cnt;
    > }
    > --
    > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    > the body of a message to majordomo@vger.kernel.org
    > More majordomo info at http://vger.kernel.org/majordomo-info.html
    > Please read the FAQ at http://www.tux.org/lkml/


    \
     
     \ /
      Last update: 2011-05-30 08:19    [W:0.024 / U:30.236 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site