lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 11 Dec 2017 22:30:22 +0530
From:   Vinod Koul <vinod.koul@...el.com>
To:     Takashi Iwai <tiwai@...e.de>
Cc:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        LKML <linux-kernel@...r.kernel.org>,
        ALSA <alsa-devel@...a-project.org>, Mark <broonie@...nel.org>,
        Pierre <pierre-louis.bossart@...ux.intel.com>,
        patches.audio@...el.com, alan@...ux.intel.com,
        Charles Keepax <ckeepax@...nsource.cirrus.com>,
        Sagar Dharia <sdharia@...eaurora.org>,
        srinivas.kandagatla@...aro.org, plai@...eaurora.org,
        Sudheer Papothi <spapothi@...eaurora.org>
Subject: Re: [PATCH v5 04/15] soundwire: Add MIPI DisCo property helpers

On Mon, Dec 11, 2017 at 05:10:17PM +0100, Takashi Iwai wrote:
> On Wed, 06 Dec 2017 16:47:00 +0100,
> Vinod Koul wrote:
> > 
> > +static int sdw_slave_read_dpn(struct sdw_slave *slave,
> > +		struct sdw_dpn_prop *dpn, int count, int ports, char *type)
> > +{
> ....
> > +		nval = fwnode_property_read_u32_array(node,
> > +				"mipi-sdw-port-wordlength-configs", NULL, 0);
> > +		if (nval > 0)
> > +			dpn[i].num_words = nval;
> > +
> > +		if (dpn[i].num_words) {
> > +			dpn[i].words = devm_kcalloc(&slave->dev, nval,
> > +				sizeof(*dpn[i].words), GFP_KERNEL);
> 
> Inconsistent checks here: nval or dpn[i].num_words.

Ah yes, we should not do allocation for less that zero case and use it
properly, will fix this and others

> 
> > +		/* TODO: Read audio mode */
> > +
> > +		i++;
> > +	}
> 
> Don't we use count argument for a sanity check?

Not really as that iterator runs on each bit:

for_each_set_bit(bit, &addr, 32) {

so it will not go on endlessly and can max out when all the bits being set
and stop.

-- 
~Vinod

Powered by blists - more mailing lists