On 01/02/2017 08:40, Stefan Hajnoczi wrote:
>> + range = g_new(NvmeDsmRange, nr);
>> +
>> + if (nvme_map_prp(&qsg, le64_to_cpu(cmd->prp1), le64_to_cpu(cmd->prp2),
>> + sizeof(range), n)) {
This should be sizeof(*range) * nr, like the DMA below.
>> + goto out_free_range;
>> + }
>> +
>> + if (dma_buf_write((uint8_t *)range, sizeof(range), &qsg)) {
>
> Did you mean sizeof(*range) * nr?
Did you also mean dma_buf_read (you want to read from device to range)?
Paolo
