Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Oct 2011 19:20:28 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Christian Brueffer <brueffer@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r226398 - head/sys/dev/iicbus
Message-ID:  <20111016172028.GB1832@garage.freebsd.pl>
In-Reply-To: <4E9B0CEE.7000809@FreeBSD.org>
References:  <201110151557.p9FFvuuc020536@svn.freebsd.org> <20111016154611.GA1832@garage.freebsd.pl> <4E9B0CEE.7000809@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--1UWUbFP1cBYEclgG
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Oct 16, 2011 at 06:57:18PM +0200, Christian Brueffer wrote:
> > I think that better fix is to move usrbufs allocation after copyin(), as
> > usrbufs is not used there.
> >
>=20
> Agreed, how about the attached patch?

Looks good.

> Index: iic.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> --- iic.c	(revision 226398)
> +++ iic.c	(working copy)
> @@ -346,13 +346,11 @@
> =20
>  	case I2CRDWR:
>  		buf =3D malloc(sizeof(*d->msgs) * d->nmsgs, M_TEMP, M_WAITOK);
> -		usrbufs =3D malloc(sizeof(void *) * d->nmsgs, M_TEMP, M_ZERO | M_WAITO=
K);
>  		error =3D copyin(d->msgs, buf, sizeof(*d->msgs) * d->nmsgs);
> -		if (error) {
> -			free(usrbufs, M_TEMP);
> +		if (error)
>  			break;
> -		}
>  		/* Alloc kernel buffers for userland data, copyin write data */
> +		usrbufs =3D malloc(sizeof(void *) * d->nmsgs, M_TEMP, M_ZERO | M_WAITO=
K);
>  		for (i =3D 0; i < d->nmsgs; i++) {
>  			m =3D &((struct iic_msg *)buf)[i];
>  			usrbufs[i] =3D m->buf;

--=20
Pawel Jakub Dawidek                       http://www.wheelsystems.com
FreeBSD committer                         http://www.FreeBSD.org
Am I Evil? Yes, I Am!                     http://yomoli.com

--1UWUbFP1cBYEclgG
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (FreeBSD)

iEYEARECAAYFAk6bElwACgkQForvXbEpPzQRBQCgmeXbugKIMbWQUNpiMxc/C/WK
c+0AnjflxBSwg7ugzEnRGK/lfcc/CEei
=dpbp
-----END PGP SIGNATURE-----

--1UWUbFP1cBYEclgG--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20111016172028.GB1832>