qcacmn: Free peer obj directly if current context is in non-atomic
Free peer object directly if current running context is not in atomic to make the code much more reasonable and logical. 1. If current running context is not in atomic state, it's safe to call peer free object directly. 2. If current running context is in atomic state, then delay this free in a work item to avoid scheduling issue. Change-Id: I9acf97354619ed2b6c09b3f619bd10dc930d8afb CRs-Fixed: 3412111
Bu işleme şunda yer alıyor:

işlemeyi yapan:
Madan Koyyalamudi

ebeveyn
c042d60f04
işleme
73d74205f1
@@ -451,12 +451,16 @@ wlan_objmgr_peer_obj_destroy(struct wlan_objmgr_peer *peer)
|
||||
{
|
||||
QDF_STATUS status;
|
||||
|
||||
status = wlan_peer_obj_free_enqueue(peer);
|
||||
if (status != QDF_STATUS_SUCCESS) {
|
||||
obj_mgr_warn("enqueue failure, call free obj directly");
|
||||
status = __wlan_objmgr_peer_obj_destroy(peer);
|
||||
if (qdf_in_atomic()) {
|
||||
status = wlan_peer_obj_free_enqueue(peer);
|
||||
if (status == QDF_STATUS_SUCCESS)
|
||||
return status;
|
||||
|
||||
obj_mgr_err("enqueue failure, call free obj directly");
|
||||
}
|
||||
|
||||
status = __wlan_objmgr_peer_obj_destroy(peer);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
|
Yeni konuda referans
Bir kullanıcı engelle