diff --git a/net/sched/sch_taprio.c b/net/sched/sch_taprio.c
index 539677120b9f6b501a11b7299abb9b394af8c5cd..9ecfb8f5902a4ff285dbcf14497c293a13a76696 100644
--- a/net/sched/sch_taprio.c
+++ b/net/sched/sch_taprio.c
@@ -1087,6 +1087,8 @@ static int taprio_dump(struct Qdisc *sch, struct sk_buff *skb)
 		goto done;
 
 	sched_nest = nla_nest_start_noflag(skb, TCA_TAPRIO_ATTR_ADMIN_SCHED);
+	if (!sched_nest)
+		goto options_error;
 
 	if (dump_schedule(skb, admin))
 		goto admin_error;