if ! kill -0 "$btrace_pid" > /dev/null 2>&1; then
_cleanup_test "null"
exit "$UBLK_SKIP_CODE" fi
# do imbalanced I/O on the ublk device # pin to cpu 0 to prevent migration/only target one queue
fio --name=write_seq \
--filename=/dev/ublkb"${dev_id}" \
--ioengine=libaio --iodepth=16 \
--rw=write \
--size=512M \
--direct=1 \
--bs=4k \
--cpus_allowed=0 > /dev/null 2>&1
ERR_CODE=$?
kill "$btrace_pid"
wait
# check that every task handles some I/O, even though all I/O was issued # from a single CPU. when ublk gets support for round-robin tag # allocation, this check can be strengthened to assert that every thread # handles the same number of I/Os
NR_THREADS_THAT_HANDLED_IO=$(grep -c '@' ${UBLK_TMP}) if [[ $NR_THREADS_THAT_HANDLED_IO -ne $NTHREADS ]]; then echo"only $NR_THREADS_THAT_HANDLED_IO handled I/O! expected $NTHREADS" cat"$UBLK_TMP"
ERR_CODE=255 fi
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.