dpio_fail
dpio_fail("DPIO create: %s: succeeded when we expected failure",
dpio_fail("DPIO create failed: %s: but got wrong errno. "
dpio_fail("failed to cleanup DPIO on pin %u",
dpio_fail("failed to get DPIO_IOC_CUROUT on %s: %s", path,
dpio_fail("failed to get DPIO_IOC_TIMING on %s: %s", path,
dpio_fail("write failed on %s: %s", path, strerror(ret));
dpio_fail("write to %s returned wrong number of bytes: %ld, "
dpio_fail("failed to get post-write DPIO_IOC_TIMING on %s: %s",
dpio_fail("write time on %s did not advance, pre: 0x%lx, "
dpio_fail("failed to open %s, but expected to: %s",
dpio_fail("TEST FAILED: accidentally was able to open "
dpio_fail("failed to read %s: %s, but expected ENOTSUP",
dpio_fail("failed to read %s: %s", path,
dpio_fail("successfully read %s, but expected failure",
dpio_fail("DPIO_IOC_CUROUT worked on %s, but expected failure",
dpio_fail("got unexpected errno from DPIO_IOC_CUROUT ioctl on "
dpio_fail("wrote to %s, but expected failure", path);
dpio_fail("got unexpected errno writing to %s: %s, expected "
dpio_fail("timed out waiting for %s", buf);
dpio_fail("couldn't open base non-excl fd: %s",
dpio_fail("open O_EXCL worked, but dev was already open with "
dpio_fail("open O_EXCL if already open failed with unexpected "
dpio_fail("couldn't open bae excl fd: %s", strerror(errno));
dpio_fail("O_EXCL didn't block subsequent open of fd %d",
dpio_fail("O_EXCL blocked other open, but with unexpected "
dpio_fail("failed to open %s for destruction tests: %s", path,
dpio_fail("DPIO was destroyed despite open fd!!");
dpio_fail("failed to destroy DPIO with open fd, but got wrong "
dpio_fail("failed to create initial DPIOs");