net/sched/sch_hfsc.c: anchor virtual curve at proper vt in hfsc_change_fsc()

cl->cl_vt alone is relative only to the current backlog period, while
the curve operates on cumulative virtual time. This patch adds missing
cl->cl_vtoff.

Signed-off-by: Michal Soltys <soltys@ziu.info>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Michal Soltys 2016-06-30 02:26:48 +02:00 committed by David S. Miller
parent ab12cb4742
commit 33ef84a77d

View File

@ -940,7 +940,7 @@ static void
hfsc_change_fsc(struct hfsc_class *cl, struct tc_service_curve *fsc) hfsc_change_fsc(struct hfsc_class *cl, struct tc_service_curve *fsc)
{ {
sc2isc(fsc, &cl->cl_fsc); sc2isc(fsc, &cl->cl_fsc);
rtsc_init(&cl->cl_virtual, &cl->cl_fsc, cl->cl_vt, cl->cl_total); rtsc_init(&cl->cl_virtual, &cl->cl_fsc, cl->cl_vtoff + cl->cl_vt, cl->cl_total);
cl->cl_flags |= HFSC_FSC; cl->cl_flags |= HFSC_FSC;
} }