From: Renaud Barbier <Renaud.Barbier@ametek.com>
To: Ahmad Fatoum <a.fatoum@pengutronix.de>,
Barebox List <barebox@lists.infradead.org>
Subject: RE: nvme sanitize command
Date: Mon, 13 Jan 2025 14:03:32 +0000 [thread overview]
Message-ID: <DM5PR07MB353218A5AE678C5F358831C5EC1F2@DM5PR07MB3532.namprd07.prod.outlook.com> (raw)
In-Reply-To: <28c492e7-028f-4247-be7f-3edf699578fa@pengutronix.de>
> -----Original Message-----
> From: Ahmad Fatoum <a.fatoum@pengutronix.de>
> Sent: 13 January 2025 11:18
> To: Renaud Barbier <Renaud.Barbier@ametek.com>; Barebox List
> <barebox@lists.infradead.org>
> Subject: Re: nvme sanitize command
>
> ***NOTICE*** This came from an external source. Use caution when replying,
> clicking links, or opening attachments.
>
> Hello Renaud,
>
> On 13.01.25 11:57, Renaud Barbier wrote:
> > I would like to add a nvme sanitize command to the barebox. Something like
> "nvme sanitize" where at first the only option is block erase.
>
> That would indeed be useful to have.
>
> > I have a level of understanding on how admin commands are passed to
> > the device through the /drivers/nvme/host/[core.c|pci.c.]
> > Looking at the parted command, I am not sure how it goes from the
> command call to the partition layer support (EFI or DOS) to the driver.
> >
> > I see that Linux make use of an ioctl to trigger the sanitize command.
>
> We do have ioctls on cdev in barebox, but we also have an actual erase
> operation, so I prefer we use that instead.
Below the option for sanitize command:
# nvme sanitize --help
Usage: nvme sanitize <device> [OPTIONS]
Send a sanitize command.
Options:
[ --no-dealloc, -d ] --- No deallocate after sanitize.
[ --oipbp, -i ] --- Overwrite invert pattern between
passes.
[ --owpass=<NUM>, -n <NUM> ] --- Overwrite pass count.
[ --ause, -u ] --- Allow unrestricted sanitize exit.
[ --sanact=<NUM>, -a <NUM> ] --- Sanitize action.
[ --ovrpat=<NUM>, -p <NUM> ] --- Overwrite pattern.
Note I am talking about sanitize operation that is the whole device being erased i.e there is no start and end block to be specified.
Using erase would limit sanitisation to erasing the whole media and no possibility to use the other options such as overwrite where a pattern and a number of pass is specified.
Unless a way can be added to set features for sanitize.
At present, erase is all I need so I will add the erase entry point with the sanitisation action being NVME_SANITIZE_SANACT_START_BLOCK_ERASE as default.
next prev parent reply other threads:[~2025-01-13 14:04 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-13 10:57 Renaud Barbier
2025-01-13 11:18 ` Ahmad Fatoum
2025-01-13 14:03 ` Renaud Barbier [this message]
2025-01-13 14:36 ` Ahmad Fatoum
2025-01-13 15:04 ` Renaud Barbier
2025-01-13 15:36 ` Ahmad Fatoum
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DM5PR07MB353218A5AE678C5F358831C5EC1F2@DM5PR07MB3532.namprd07.prod.outlook.com \
--to=renaud.barbier@ametek.com \
--cc=a.fatoum@pengutronix.de \
--cc=barebox@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox