svn commit: r300258 - head/sys/dev/iicbus
Ravi Pokala
rpokala at mac.com
Fri May 20 03:50:25 UTC 2016
-----Original Message-----
From: <owner-src-committers at freebsd.org> on behalf of "Jason A. Harmening" <jah at FreeBSD.org>
Date: 2016-05-19, Thursday at 20:03
To: <src-committers at freebsd.org>, <svn-src-all at freebsd.org>, <svn-src-head at freebsd.org>
Subject: svn commit: r300258 - head/sys/dev/iicbus
>Author: jah
>Date: Fri May 20 03:03:04 2016
>New Revision: 300258
>URL: https://svnweb.freebsd.org/changeset/base/300258
>
>Log:
> iic_rdwr_data->nmsgs is uint32_t, so limit the allowable number of messages to prevent memory exhaustion and short allocations on 32-bit systems. Since iicrdwr is intended to be a workalike of a Linux i2c-dev call, use the same limit of 42 that Linux uses.
>
> Also check the return value of copyin(9) to prevent unnecessary allocation in the failure case.
>
> ...
>
> error = copyin(d->msgs, buf, sizeof(*d->msgs) * d->nmsgs);
>+ if (error != 0) {
>+ free(buf, M_IIC);
>+ return (error);
>+ }
>
Hi Jason,
If I’m reading that right, it’s not preventing any allocations, but it is preventing a leak. Is that correct?
Thanks,
Ravi (rpokala@)
More information about the svn-src-all
mailing list