Hi all, I encounter a problem in my setup and am not able to find a nice solution or workaround. In our setup, we create VLANs on top of kni interfaces. They are created with another MAC address than the kni interface itself. This leads to a kernel oops due to the following. * vlan_dev.c - vlan_dev_open * since different mac - dev_uc_add * dev_addr_list.c - dev_uc_add. Get lock with netif_addr_lock_bh and while holding the lock, __dev_set_rx_mode is used to set promiscuous mode if needed. * dev.c - ops->ndo_set_rx_mode * kni_net.c - kni_net_set_promiscusity * kni_net.c - kni_net_process_request * kni_net.c - kni_net_process_request calls wait_event_interruptible_timeout to wait for response from user space And here I get the kernel Oops "BUG: scheduling while atomic" since wait_event_interruptible_timeout will trigger a call to schedule while we hold the lock from netif_addr_lock_bh. I have created a temporary workaround where I have made kni_net_set_promiscusity just send the request and removed the response from user space since we anyway do not use it. Anyone else who has encountered this problem? Does anyone have a proposal for a better solution/workaround? Best regards, Peter Disclaimer: This communication (including any attachments) is intended for the use of the intended recipient(s) only and may contain information that is considered confidential, proprietary, sensitive and/or otherwise legally protected. Any unauthorized use or dissemination of this communication is strictly prohibited. If you have received this communication in error, please immediately notify the sender by return e-mail message and delete all copies of the original communication. Thank you for your cooperation.