Re: [PATCH net 6/6] net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting

From: Jakub Kicinski
Date: Wed May 17 2023 - 14:48:11 EST


On Wed, 17 May 2023 11:49:10 +0300 Vlad Buslov wrote:
> On Tue 16 May 2023 at 17:39, Jakub Kicinski <kuba@xxxxxxxxxx> wrote:
> > On Tue, 16 May 2023 15:58:46 -0700 Peilin Ye wrote:
> >>
> >> Seems like trying to delete an "in-use" cls_u32 filter returns -EBUSY
> >
> > I meant -EBUSY due to a race (another operation being in flight).
> > I think that's different.
>
> I wonder if somehow leveraging existing tc_modify_qdisc() 'replay'
> functionality instead of returning error to the user would be a better
> approach? Currently the function is replayed when qdisc_create() returns
> EAGAIN. It should be trivial to do the same for qdisc_graft() result.

Sounds better than returning -EBUSY to the user and expecting them
to retry, yes.