Date: Sun, 23 Oct 2011 18:27:53 +0000 (UTC) From: Christian Brueffer <brueffer@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r226669 - stable/7/sys/dev/iicbus Message-ID: <201110231827.p9NIRrKu050422@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: brueffer Date: Sun Oct 23 18:27:53 2011 New Revision: 226669 URL: http://svn.freebsd.org/changeset/base/226669 Log: MFC: r226398, r226442 Move the allocation of usrbufs down a few lines to avoid leaking it in case of an error. Modified: stable/7/sys/dev/iicbus/iic.c Directory Properties: stable/7/sys/ (props changed) stable/7/sys/cddl/contrib/opensolaris/ (props changed) stable/7/sys/contrib/dev/acpica/ (props changed) stable/7/sys/contrib/pf/ (props changed) Modified: stable/7/sys/dev/iicbus/iic.c ============================================================================== --- stable/7/sys/dev/iicbus/iic.c Sun Oct 23 18:24:55 2011 (r226668) +++ stable/7/sys/dev/iicbus/iic.c Sun Oct 23 18:27:53 2011 (r226669) @@ -301,11 +301,11 @@ iicioctl(struct cdev *dev, u_long cmd, c case I2CRDWR: buf = malloc(sizeof(*d->msgs) * d->nmsgs, M_TEMP, M_WAITOK); - usrbufs = malloc(sizeof(void *) * d->nmsgs, M_TEMP, M_ZERO | M_WAITOK); error = copyin(d->msgs, buf, sizeof(*d->msgs) * d->nmsgs); if (error) break; /* Alloc kernel buffers for userland data, copyin write data */ + usrbufs = malloc(sizeof(void *) * d->nmsgs, M_TEMP, M_ZERO | M_WAITOK); for (i = 0; i < d->nmsgs; i++) { m = &((struct iic_msg *)buf)[i]; usrbufs[i] = m->buf;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201110231827.p9NIRrKu050422>