The Compare command reads the logical blocks specified by the command
from the medium and compares the data read to a comparison data buffer
transferred as part of the command. If the data read from the controller
and the comparison data buffer are equivalent with no miscompares,
then the command completes successfully. If there is any miscompare,
the command completes with an error of Compare Failure. If metadata is
provided, then a comparison is also performed for the metadata.