Hi John, On Wed, Jan 05, 2011 at 03:03:42PM -0800, John Gilmore wrote: > I'm working on secure deletion of data on various media. I recalled > that the MMC and SD card specs contain a low-level command for erasing > blocks, which could be used to erase a whole card if desired. And later > MMC specs provide a secure block erase command that also erases ancillary > unaddressable garbage blocks, etc. > > However, after a perusal of the relevant kernel code (as of the 2.6.35 > shipped by Ubuntu), I see no support for invoking these commands from a > user program. I saw some patches on the LKML from Adrian Hunter in > June 2010 that added support for ioctl(BLKSECDISCARD). Are these in > an upcoming mainline kernel? These patches were included in the 2.6.36 release, back in October. > Has someone provided a clean userspace way to invoke it on an entire SD > card or MMC card? Not that I can see. http://sourceforge.net/projects/test-discard/ looks like it would be trivially modifiable to use BLKSECDISCARD, and would also tell you some interesting things about timing. Of course, a tiny script would be enough to open an MMC block device and call the ioctl. > (On ATA disks, access to the SECURITY ERASE command is via the hdparm user > program, which invokes the SG_IO (SCSI Generic) driver. But SECURITY ERASE > has odd edges, e.g. it requires that you set and then supply a password. It > would be a shame if higher level programs, e.g. the Linux installer, had > to run different "secure erase" commands depending on what medium is being > erased.) > > John Gilmore > > PS: Does anyone know a way to do secure erase via a USB Mass Storage adapter? Don't know, sorry. -- Chris Ball <cjb@xxxxxxxxxx> <http://printf.net/> One Laptop Per Child -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html