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:   Tue, 28 Feb 2017 09:02:16 +0100
From:   Boris Brezillon <boris.brezillon@...e-electrons.com>
To:     Masahiro Yamada <yamada.masahiro@...ionext.com>
Cc:     linux-mtd@...ts.infradead.org, masahiroy@...nel.org,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [NAND Question] When oob_required is used?

On Tue, 28 Feb 2017 16:21:50 +0900
Masahiro Yamada <yamada.masahiro@...ionext.com> wrote:

> Hi.
> 
> 
> I am seeing the reference implementations for the callback
> in drivers/mtd/nand/nand_base.c
> 
> 
> I see only some of them use the argument "oob_required".
> 
> 
> - oob_required is used
> nand_read_page_raw()
> nand_write_page_raw()
> nand_write_subpage_hwecc()
> 
> 
> - oob_required is ignored
> nand_read_page_raw_syndrome()
> nand_read_page_swecc()
> nand_read_page_hwecc()
> nand_read_page_hwecc_oob_first()
> nand_read_page_syndrome()
> nand_write_page_raw_syndrome()
> nand_write_page_swecc()
> nand_write_page_hwecc()
> nand_write_page_syndrome()
> 
> 
> 
> I could not get the logic
> when "oob_required" is used.
> 
> 
> 
> When implementing drivers, the "oob_required"
> should be respected (i.e. oob_poi should be transferred as well),
> or is it OK to ignore it?
> 
> 

oob_required = true => you must retrieve OOB bytes
oob_required = false => you can optimize the process and ignore OOB
bytes, but you can also retrieve them if you don't care about
optimization. That's usually what's done when you have to retrieve ECC
bytes (retrieving a few extra OOB bytes is not expensive and usually
simplifies the logic, especially when free and ECC bytes are
interleaved in the OOB region).

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ