Dave Chinner <david@xxxxxxxxxxxxx> writes:
> On Tue, Oct 06, 2009 at 02:47:58PM -0400, Christoph Hellwig wrote:
>> Call the BLKDISCARD ioctl to mark the whole disk as unused before creating
>> a new filesystem. This will allow SSDs, Arrays with thin provisioning
>> and virtual machines to make smarter allocation decisions.
> Good idea, but perhaps the discard should be optional rather than
> unconditional. My immediate thought was the SOP for setting up
> encrypted devices - fill the empty disk with random data before
> setting up the encrypted device. If you then send it a discard....
This actually doesn't really work for SSDs, because SSDs typically
have more internal capacity than they advertise and when you fill
it up then it will just allocate new blocks and leave some of the
blocks with the existing data around.
AFAIK there's no way to really reliably delete something physically
on a SSD short of applying a hammer.
For thin provisioning arrays you have similar problems.
So I think Christoph's case of making it default is fine.