[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1520859807.10722.591.camel@linux.intel.com>
Date: Mon, 12 Mar 2018 15:03:27 +0200
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Harish Jenny K N <harish_kandiga@...tor.com>,
Avri Altman <Avri.Altman@....com>,
"ulf.hansson@...aro.org" <ulf.hansson@...aro.org>,
"linus.walleij@...aro.org" <linus.walleij@...aro.org>,
"adrian.hunter@...el.com" <adrian.hunter@...el.com>,
"shawn.lin@...k-chips.com" <shawn.lin@...k-chips.com>
Cc: "linux-mmc@...r.kernel.org" <linux-mmc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"Vladimir_Zapolskiy@...tor.com" <Vladimir_Zapolskiy@...tor.com>
Subject: Re: [PATCH v9] mmc: Export host capabilities to debugfs.
On Mon, 2018-03-12 at 18:00 +0530, Harish Jenny K N wrote:
> > > > > > + for_each_set_bit(bit, (const unsigned long *)&caps,
> > > > > > BITS_PER_LONG)
> > > > > > + for_each_set_bit(bit, (const unsigned long
> > > > > > *)&caps2,
> > > > > > BITS_PER_LONG)
> > > > >
> > > > > Explicit casting is not needed anymore in both cases.
> > > >
> > > > Also maybe use sizeof(mmc_host_capabilities) instead of
> > > > BITS_PER_LONG?
> > >
> > > You mean sizeof(caps) and not sizeof(mmc_host_capabilities) .
> > > Right ?
> >
> > meant ARRAY_SIZE(mmc_host_capabilities)
> ARRAY_SIZE(mmc_host_capabilities) will be 32 and this will be my old
> change for which I got a comment from Andy Shevchenko asking me to
> replace u32 with unsigned long.
>
> This is the old comment:
>
> > > + int size = sizeof(u32) * BITS_PER_BYTE;
> >
> > This is redundant. Use BITS_PER_LONG (why's that, see below) in the
There is nothing about ARRAY_SIZE().
ARRAY_SIZE() will work quite good as well.
> for_each_set_bit().
>
> > > + for_each_set_bit(bit, (const unsigned long *)&caps, size)
> > > + for_each_set_bit(bit, (const unsigned long *)&caps2, size)
> >
> > These are UB cases.
> > Fix is simple, replace u32 by unsigned long in (1) above.
>
> Note: Without typecasting &caps to(const unsigned long *) will give
> compilation error in this case.
What kind of?
--
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Intel Finland Oy
Powered by blists - more mailing lists