IFF_OACTIVE is gone
Sepherosa Ziehau <[email protected]>
| Newsgroups | gmane.os.dragonfly-bsd.kernel,gmane.os.dragonfly-bsd.user |
|---|---|
| Message-ID | <CAMOc5czu6yvqqbUdGqn=b9cRHmHexHr_-ra+EbcvGoyFYp6k=g@mail.gmail.com> |
Hi all, IFF_OACTIVE is gone from kernel land. For user space the IFF_OACTIVE is still defined for compability. All of the network drivers in the tree are converted. I have tried my best to test as much hardware as I could, however, I still could break things. If you notice anything stupid happened on your NICs on the latest master, e.g. 100% cpu usage, please let me know. For folks that are doing kernel side driver work, you usually need to do following convertion: 1) if ((ifp->if_flags & (IFF_RUNING | IFF_OACTIVE)) == IFF_RUNNING) ---> if ((ifp->if_flags & IFF_RUNNING) == 0 || ifq_is_oactive(&ifp->if_snd)) 2) ifp->if_flags |= IFF_OACTIVE; ---> ifq_set_oactive(&ifp->if_snd); 3) ifp->if_flags &= ~IFF_OACTIVE; ---> ifq_clr_oactive(&ifp->if_snd); 4) ifp->if_flags &= ~(IFF_RUNNING | IFF_OACTIVE); ---> ifp->if_flags &= ~IFF_RUNNING; ifq_clr_oactive(&ifp->if_snd); Best Regards, sephe -- Tomorrow Will Never Die