Hi Yaniv
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Yaniv Gardi
> Sent: Sunday, June 10, 2012 9:49 PM
> To: 'S, Venkatraman'
> Cc: [email protected]; [email protected]
> Subject: RE: [PATCH v6 0/2] *** adding and exposing SANITIZE capability to 
> the user
> space via a unique IOCTL ***
> 
> First, the REQ_SECURE + REQ_DISCARD are used for specific sector/s. SANITIZE 
> is a
> generic command that erase all unmapped sectors.
If a lot of sectors, like 4GBytes, have been marked as unmapped, how long will 
SANITIZE command take to erase all of them? Will it cause a long time delay for 
other requests?

> Second, secure erase for a specific sector (SECURE TRIM) is no longer 
> supported.
REQ_SECURE can still erase a specific sector in current MMC driver.
If the device support SANITIZE, driver will first use ERASE/TRIM command to 
mark unmapped sectors, and then issue SANITIZE command to erase them. eMMC4.5 
specification has said clearly that ERASE/TRIM command can move the mapped host 
address range to the unmapped host address range.
If the device cannot support SANTIZE, driver will use secure erase/trim command 
directly.

> 
> Anyhow, SANITIZE replaces the need to issue REQ_SECURE as part of the
> REQ_DISCARD request. In this way DISCARD request finishes much faster (order 
> of
> magnitude) and thus improves system performance. When the NVM content must
> be erased, the user may use SANITIZE to erase all unmapped sectors.
> 
> An example of usage is refurbished devices in which the carrier wants to erase
> NVM content (since the user used only DISCARDs), in this case the a SANITIZE
> operation will be triggered in the carrier labs from a dedicated application 
> through
> IOCTL that goes directly to the device. Note that no change to the FS is 
> required for
> such operation.
I think the usage you posted here is just what REQ_SECURE implemented. 
REQ_SECURE will first unmapped the mapped host address and then issue SANITIZE 
command to erase the contents.

Thanks
Chuanxiao
> 
> Thanks,
> Yaniv
> 
> = > -----Original Message-----
> = > From: S, Venkatraman [mailto:[email protected]] = > Sent: Friday, June 08, 
> 2012
> 2:30 PM = > To: Yaniv Gardi = > Cc: [email protected];
> [email protected] = > Subject: Re: [PATCH v6 0/2] *** adding and exposing
> SANITIZE capability to = > the user space via a unique IOCTL *** = > = > On 
> Thu, Jun
> 7, 2012 at 8:08 PM, Yaniv Gardi <[email protected]> = > wrote:
> = > > *** adding and exposing SANITIZE capability to the user space via a = > 
> >
> unique IOCTL *** = > = > Well, is this really needed ? As I understand, 
> SANITIZE is
> identical to = > REQ_SECURE + REQ_DISCARD.
> = > Mapping the device function to an existing attribute is more easy that = >
> creating the whole plumbing around SANITIZE, just because it exists.
> = > Apart from the IOCTL, it would be useful to find if any file systems want 
> to = >
> use this, and it is any way more friendly than SECURE + DISCARD.
> = >
> = > >
> = > > changes patch v6:
> = > > fixed some code review comments
> = > > added timeout dependency for CMD6 when issueing the sanitize = >
> command.
> = > >
> = > > changes patch v5:
> = > > added BUG_ON() where needed
> = > >
> = > > changes patch v4:
> = > > removed a few debug printouts
> = > >
> = > > changes patch v3:
> = > > split the patch into 2 commits - block and mmc/card added capability = 
> > >
> MMC_CAP2_SANITIZE to mmc controller = > > = > > Yaniv Gardi (2):
> = > >  block: ioctl support for sanitize in eMMC 4.5 = > >  mmc: card: Adding
> support for sanitize in eMMC 4.5 = > > = > >  block/blk-core.c          |   18
> +++++++++-- = > >  block/blk-lib.c           |   51
> +++++++++++++++++++++++++++++++ = > >  block/blk-merge.c         |    6
> ++++ = > >  block/elevator.c          |   41 ++++++++++++++++++++++++-
> = > >  block/ioctl.c             |    9 +++++
> = > >  drivers/mmc/card/block.c  |   72 = > >
> ++++++++++++++++++++++++++++++++------------
> = > >  drivers/mmc/card/queue.c  |   10 +++++-
> = > >  include/linux/blk_types.h |    5 ++-
> = > >  include/linux/blkdev.h    |    3 ++
> = > >  include/linux/fs.h        |    1 +
> = > >  include/linux/mmc/host.h  |    1 +
> = > >  kernel/trace/blktrace.c   |    2 + = > >  12 files changed, 191
> insertions(+), 28 deletions(-) = > > = > > -- = > > 1.7.6 = > > -- = > > Sent 
> by a
> consultant of the Qualcomm Innovation Center, Inc.
> = > > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora = > 
> >
> Forum = > > -- = > > To unsubscribe from this list: send the line "unsubscribe
> linux-mmc"
> = > > in the body of a message to [email protected] More = >
> majordomo = > > info at  http://vger.kernel.org/majordomo-info.html
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to [email protected]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to