Multiple interface creation by invited GO

Masashi Honma masashi.honma
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 ?".

Regards,
Masashi Honma.



More information about the Hostap mailing list