* [dpdk-users] Kernel oops when adding vlan over kni driver
@ 2019-11-07 7:16 Peter Fredriksson
0 siblings, 0 replies; only message in thread
From: Peter Fredriksson @ 2019-11-07 7:16 UTC (permalink / raw)
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?
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.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, back to index
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-07 7:16 [dpdk-users] Kernel oops when adding vlan over kni driver Peter Fredriksson
DPDK usage discussions
Archives are clonable:
git clone --mirror http://inbox.dpdk.org/users/0 users/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 users users/ http://inbox.dpdk.org/users \
Newsgroup available over NNTP:
AGPL code for this site: git clone https://public-inbox.org/ public-inbox