Multiple interface creation by invited GO
Tue Aug 28 08:15:24 PDT 2012
There are some drivers which create addtional interface for GO role.
With such a driver I found a case that 2 times interface creation runs.
The reproducing steps are:
1. Boot two P2P devices.
2. Connect them with "p2p_connect xx:xx:xx:xx:xx:xx pbc persistent".
3. Now a P2P Device become a GO. We call him "P2P Device A". And we call
opposite "P2P Device B".
4. Save each configs by "save" command.
5. Terminate them.
6. Boot them.
7. Invite "P2P Device A" from "P2P Device B".
Then we could see 2 interface creation messages and one removal message.
P2P: Create a new interface p2p-wlan1-0 for the group
P2P: Removing pending group interface p2p2
P2P: Create a new interface p2p-wlan1-1 for the group
First creation is driven by p2p_process_invitation_req().
Removal and second creation is driven by wpas_p2p_group_add_persistent().
These multiple creation causes "Out of memory" error on Broadcom device driver +
libnl combination. The "Out of memory" error occurs at send_and_recv_msgs() in
nl80211_create_iface_once(). More precisely, nl_recvmsgs() in
send_and_recv_msgs() returns -12 (Out of memory).
I think this is a device driver or libnl problem. But if I commented out the
first interface creation, the "Out of memory" error didn't occur.
My question is "Is there any reason for multiple creation ?".
More information about the Hostap