Re: [PATCH] nand_base: optimize checking of erased buffers

From: Pavel Machek
Date: Wed May 17 2017 - 07:52:17 EST



> This is not true for my platform, as the ecc pointer is
> chip->oob_poi + 10
>
> I suppose it's not a problem if the platform can handle
> unaligned loads, otherwise it spells trouble.
>
>
> > + unsigned long d = *((unsigned long *)bitmap);
> > + if (d == ~0UL)
> > + continue;
> > + weight = hweight_long(d);
> > bitflips += BITS_PER_LONG - weight;
> > if (unlikely(bitflips > bitflips_threshold))
> > return -EBADMSG;
> >
>
> The optimization makes sense in itself, but given that it's on an
> error path (?) I'm not sure it will bring any tangible benefits?

Well, if it is critical enough to do magic it does, it is also
important enough not to do expensive bit-counting needlessly...

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Attachment: signature.asc
Description: Digital signature