#!/bin/bash TC="$1"; shift ETH="$1"; shift # The taprio architecture changes the admin schedule from a hrtimer and not # from process context, so we need to wait in order to make sure that any # schedule change actually took place. while :; do has_admin="$($TC -j qdisc show dev $ETH root | jq '.[].options | has("admin")')" if [ "$has_admin" = "false" ]; then break; fi sleep 1 done