- Jun 25, 2018
Isn't the Crucial consumer PLP totally fake PLP? I've always thought the "real" PLP is the normal one that when power is cut can dump data from the on-drive DRAM to NAND safely.
The explanation for partial PLP is correct in the fact that partial PLP only protects data at rest, but it has nothing to do with the SSD moving data around.I've been trying to figure that out myself recently. Here is what I've found so far. There appears to be two general types (probably an over simplification), one is end-to-end. If the computer sends data to the drive it can be considered safe. The data is protected through the ENTIRE write process. If the power fails at any point all data is flushed from any buffers to the nand and no corruption occurs. I would call this "real" PLP and it's a requirement for certain types of deployments.
The second type (PLP lite?) only protects data at rest. The SSD is constantly moving data around which puts already written data at risk (look up how an SSD writes in large pages, causes all sorts of weird issues). With PLP lite any data already written to the nand is preserved properly during a power failure. Any data in any buffers (DRAM usually) is lost.
This has really started to irk me, there have been numerous companies that have claimed PLP while only actually offering PLP lite. I think Crucial had to change their marketing a few years back because they claimed a consumer drive had full PLP when it had just enough capacitance to keep the data at rest from corrupting.
Hope that didn't confuse things further!
To quote micron themselves:Data that has been acknowledged as written should never be lost, PLP or not. That is the whole purpose of using fsync or FlushFileBuffers. If kernel developers or storage vendors doesn't honor this, they will never be taken seriously for data storage. It is important to honor this as it could cause serious data corruption by messing up filesystem metadata.