On Mon, Jun 24, 2019 at 6:27 PM matthew green <m...@eterna.com.au> wrote: > > > Only KERNEL_LOCK (and some splsoftnet) is required for the network stack > > now. Remaining splnets are for network drivers. (softnet_lock is also > > required > > in some cases but it's another story...) > > great! i studied the code and i couldn't find any issues > in any of the relevant paths, so i'm glad to hear it's > supposed to be like this. > > for one particular case (ether_ioctl) how is this diff: > > - * Common ioctls for Ethernet interfaces. Note, we must be > - * called at splnet(). > + * Common ioctls for Ethernet interfaces. > + * > + * Non IFEF_MPSAFE drivers must call this function at at least called > + * at splsoftnet(). > > or should they also be with kernel lock?
Yes. Also I think splnet is still needed for ether_ioctl for sure because it has to care not only the network stack but also network drivers. ozaki-r