eMMC Standards and File System support
I am looking into Android secure erase functions and realized a few things:
Android uses eMMC as its storage media, eMMC standards are set by the JEDEC organization (currently most of the manufactured eMMCs are >= 4.41). The 4.41 eMMC standard describes two commands SECURE ERASE and SECURE TRIM, and that these commands should be supported from now on for every eMMC manufactured. That's great, but Android runs ext4 as a filesystem, and I haven't been able to find if ext4 has a way of communicating with the storage media an eMMC SECURE ERASE command.
I know that mounting ext4 with the 'discard' option is one way of enabling TRIM after every deletion, but it is also a poor solution as it will severely slow down performance since the storage has to TRIM after each delete command.
So my question, is there a way of sending a SECURE ERASE command from an ext4 file system short of mounting with the 'discard' option?
Thank you!
Related links:
- JEDEC eMMC standard: http://www.jedec.org/sites/default/files/Victor_Tsai.pdf
- Discard option on ext4 and performance degradation: https://patrick-nagel.net/blog/archives/337
filesystems android ext4 trim secure-erase
add a comment |
I am looking into Android secure erase functions and realized a few things:
Android uses eMMC as its storage media, eMMC standards are set by the JEDEC organization (currently most of the manufactured eMMCs are >= 4.41). The 4.41 eMMC standard describes two commands SECURE ERASE and SECURE TRIM, and that these commands should be supported from now on for every eMMC manufactured. That's great, but Android runs ext4 as a filesystem, and I haven't been able to find if ext4 has a way of communicating with the storage media an eMMC SECURE ERASE command.
I know that mounting ext4 with the 'discard' option is one way of enabling TRIM after every deletion, but it is also a poor solution as it will severely slow down performance since the storage has to TRIM after each delete command.
So my question, is there a way of sending a SECURE ERASE command from an ext4 file system short of mounting with the 'discard' option?
Thank you!
Related links:
- JEDEC eMMC standard: http://www.jedec.org/sites/default/files/Victor_Tsai.pdf
- Discard option on ext4 and performance degradation: https://patrick-nagel.net/blog/archives/337
filesystems android ext4 trim secure-erase
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54
add a comment |
I am looking into Android secure erase functions and realized a few things:
Android uses eMMC as its storage media, eMMC standards are set by the JEDEC organization (currently most of the manufactured eMMCs are >= 4.41). The 4.41 eMMC standard describes two commands SECURE ERASE and SECURE TRIM, and that these commands should be supported from now on for every eMMC manufactured. That's great, but Android runs ext4 as a filesystem, and I haven't been able to find if ext4 has a way of communicating with the storage media an eMMC SECURE ERASE command.
I know that mounting ext4 with the 'discard' option is one way of enabling TRIM after every deletion, but it is also a poor solution as it will severely slow down performance since the storage has to TRIM after each delete command.
So my question, is there a way of sending a SECURE ERASE command from an ext4 file system short of mounting with the 'discard' option?
Thank you!
Related links:
- JEDEC eMMC standard: http://www.jedec.org/sites/default/files/Victor_Tsai.pdf
- Discard option on ext4 and performance degradation: https://patrick-nagel.net/blog/archives/337
filesystems android ext4 trim secure-erase
I am looking into Android secure erase functions and realized a few things:
Android uses eMMC as its storage media, eMMC standards are set by the JEDEC organization (currently most of the manufactured eMMCs are >= 4.41). The 4.41 eMMC standard describes two commands SECURE ERASE and SECURE TRIM, and that these commands should be supported from now on for every eMMC manufactured. That's great, but Android runs ext4 as a filesystem, and I haven't been able to find if ext4 has a way of communicating with the storage media an eMMC SECURE ERASE command.
I know that mounting ext4 with the 'discard' option is one way of enabling TRIM after every deletion, but it is also a poor solution as it will severely slow down performance since the storage has to TRIM after each delete command.
So my question, is there a way of sending a SECURE ERASE command from an ext4 file system short of mounting with the 'discard' option?
Thank you!
Related links:
- JEDEC eMMC standard: http://www.jedec.org/sites/default/files/Victor_Tsai.pdf
- Discard option on ext4 and performance degradation: https://patrick-nagel.net/blog/archives/337
filesystems android ext4 trim secure-erase
filesystems android ext4 trim secure-erase
asked Jun 29 '13 at 13:02
AlistairAlistair
248146
248146
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54
add a comment |
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54
add a comment |
1 Answer
1
active
oldest
votes
You can run fstrim once in a while. I run it daily through cron on SSD disks (desktop PC).
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f613540%2femmc-standards-and-file-system-support%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can run fstrim once in a while. I run it daily through cron on SSD disks (desktop PC).
add a comment |
You can run fstrim once in a while. I run it daily through cron on SSD disks (desktop PC).
add a comment |
You can run fstrim once in a while. I run it daily through cron on SSD disks (desktop PC).
You can run fstrim once in a while. I run it daily through cron on SSD disks (desktop PC).
answered Dec 4 '13 at 12:46
speakmanspeakman
24123
24123
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f613540%2femmc-standards-and-file-system-support%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Re: 'discard' option: isn't it the other way around? Using TRIM on any kind of flash device should increase performance (not decrease it) because the FTL layer becomes aware that it no longer has to track a particular block (maintain the mapping from logical block to physical block, refresh the block once in a while for wear leveling, etc...)
– Celada
Jun 29 '13 at 14:42
Technically yes, but issuing the TRIM command after each delete will degrade usability performance as seen in the second link I posted, a deletion of 30,000+ files totaling ~450MB followed by a sync command results in ~40 seconds of wait time.
– Alistair
Jun 29 '13 at 14:54