Re: [PATCH v2] mtd: onenand_base: Adjust indentation in onenand_read_ops_nolock

From: Nick Desaulniers
Date: Mon Dec 09 2019 - 16:18:43 EST


On Mon, Dec 9, 2019 at 1:04 PM Nathan Chancellor
<natechancellor@xxxxxxxxx> wrote:
>
> Clang warns:
>
> ../drivers/mtd/nand/onenand/onenand_base.c:1269:3: warning: misleading
> indentation; statement is not part of the previous 'if'
> [-Wmisleading-indentation]
> while (!ret) {
> ^
> ../drivers/mtd/nand/onenand/onenand_base.c:1266:2: note: previous
> statement is here
> if (column + thislen > writesize)
> ^
> 1 warning generated.
>
> This warning occurs because there is a space before the tab of the while
> loop. There are spaces at the beginning of a lot of the lines in this
> block, remove them so that the indentation is consistent with the Linux
> kernel coding style and clang no longer warns.
>
> Fixes: a8de85d55700 ("[MTD] OneNAND: Implement read-while-load")
> Link: https://github.com/ClangBuiltLinux/linux/issues/794
> Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> ---
>
> v1 -> v2:
>
> * Clean up the block before the one that warns, which was added as part
> of the fixes commit (Nick).
>
> drivers/mtd/nand/onenand/onenand_base.c | 80 ++++++++++++-------------
> 1 file changed, 40 insertions(+), 40 deletions(-)
>
> diff --git a/drivers/mtd/nand/onenand/onenand_base.c b/drivers/mtd/nand/onenand/onenand_base.c
> index 77bd32a683e1..13c69eb021a6 100644
> --- a/drivers/mtd/nand/onenand/onenand_base.c
> +++ b/drivers/mtd/nand/onenand/onenand_base.c
> @@ -1248,44 +1248,44 @@ static int onenand_read_ops_nolock(struct mtd_info *mtd, loff_t from,
>
> stats = mtd->ecc_stats;
>
> - /* Read-while-load method */
> + /* Read-while-load method */
>
> - /* Do first load to bufferRAM */
> - if (read < len) {
> - if (!onenand_check_bufferram(mtd, from)) {
> + /* Do first load to bufferRAM */
> + if (read < len) {
> + if (!onenand_check_bufferram(mtd, from)) {
> this->command(mtd, ONENAND_CMD_READ, from, writesize);
> - ret = this->wait(mtd, FL_READING);
> - onenand_update_bufferram(mtd, from, !ret);
> + ret = this->wait(mtd, FL_READING);
> + onenand_update_bufferram(mtd, from, !ret);
> if (mtd_is_eccerr(ret))
> ret = 0;
> - }
> - }
> + }
> + }
>
> thislen = min_t(int, writesize, len - read);
> column = from & (writesize - 1);
> if (column + thislen > writesize)
> thislen = writesize - column;
>
> - while (!ret) {
> - /* If there is more to load then start next load */
> - from += thislen;
> - if (read + thislen < len) {
> + while (!ret) {
> + /* If there is more to load then start next load */
> + from += thislen;
> + if (read + thislen < len) {
> this->command(mtd, ONENAND_CMD_READ, from, writesize);
> - /*
> - * Chip boundary handling in DDP
> - * Now we issued chip 1 read and pointed chip 1
> + /*
> + * Chip boundary handling in DDP
> + * Now we issued chip 1 read and pointed chip 1
> * bufferram so we have to point chip 0 bufferram.
> - */
> - if (ONENAND_IS_DDP(this) &&
> - unlikely(from == (this->chipsize >> 1))) {
> - this->write_word(ONENAND_DDP_CHIP0, this->base + ONENAND_REG_START_ADDRESS2);
> - boundary = 1;
> - } else
> - boundary = 0;
> - ONENAND_SET_PREV_BUFFERRAM(this);
> - }
> - /* While load is going, read from last bufferRAM */
> - this->read_bufferram(mtd, ONENAND_DATARAM, buf, column, thislen);
> + */
> + if (ONENAND_IS_DDP(this) &&
> + unlikely(from == (this->chipsize >> 1))) {
> + this->write_word(ONENAND_DDP_CHIP0, this->base + ONENAND_REG_START_ADDRESS2);
> + boundary = 1;
> + } else
> + boundary = 0;
> + ONENAND_SET_PREV_BUFFERRAM(this);
> + }
> + /* While load is going, read from last bufferRAM */
> + this->read_bufferram(mtd, ONENAND_DATARAM, buf, column, thislen);
>
> /* Read oob area if needed */
> if (oobbuf) {
> @@ -1302,23 +1302,23 @@ static int onenand_read_ops_nolock(struct mtd_info *mtd, loff_t from,
> }
>
> /* See if we are done */

With this applied, I see a missed instance right here ^ (L1304).
In vim:


^ \t

In my .vimrc, I set:
https://github.com/nickdesaulniers/dotfiles/blob/37359525f5a403b4ed2d3f9d1bbbee2da8ec8115/.vimrc#L35-L41
to make tabs glaringly visible.

> - read += thislen;
> - if (read == len)
> - break;
> - /* Set up for next read from bufferRAM */
> - if (unlikely(boundary))
> - this->write_word(ONENAND_DDP_CHIP1, this->base + ONENAND_REG_START_ADDRESS2);
> - ONENAND_SET_NEXT_BUFFERRAM(this);
> - buf += thislen;
> + read += thislen;
> + if (read == len)
> + break;
> + /* Set up for next read from bufferRAM */
> + if (unlikely(boundary))
> + this->write_word(ONENAND_DDP_CHIP1, this->base + ONENAND_REG_START_ADDRESS2);
> + ONENAND_SET_NEXT_BUFFERRAM(this);
> + buf += thislen;
> thislen = min_t(int, writesize, len - read);
> - column = 0;
> - cond_resched();
> - /* Now wait for load */
> - ret = this->wait(mtd, FL_READING);
> - onenand_update_bufferram(mtd, from, !ret);
> + column = 0;
> + cond_resched();
> + /* Now wait for load */
> + ret = this->wait(mtd, FL_READING);
> + onenand_update_bufferram(mtd, from, !ret);
> if (mtd_is_eccerr(ret))
> ret = 0;
> - }
> + }
>
> /*
> * Return success, if no ECC failures, else -EBADMSG
> --
> 2.24.0
>
> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@xxxxxxxxxxxxxxxxx
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20191209210328.18866-1-natechancellor%40gmail.com.



--
Thanks,
~Nick Desaulniers