On 4/7/2016 12:40 PM, leon@xxxxxxx wrote: > On Thu, Apr 07, 2016 at 05:03:50PM +0000, Daniel Jurgens wrote: >> On 4/7/2016 11:31 AM, Leon Romanovsky wrote: >>> On Thu, Apr 07, 2016 at 02:33:54AM +0300, Dan Jurgens wrote: >>>> From: Daniel Jurgens <danielj@xxxxxxxxxxxx> >>>> + kfree(qp->qp_sec); >>>> + >>>> + return err; >>>> +} >>>> +EXPORT_SYMBOL(ib_security_create_qp_security); >>>> + >>>> +void ib_security_destroy_qp(struct ib_qp_security *sec) >>>> +{ >>>> + security_ib_qp_free_security(sec); >>>> + kfree(sec); >>>> +} >>> >>> Did you want to EXPORT_SYMBOL here too? >>> >> >> It's not called from outside ib_core, I only exported the functions that >> are. ib_security_modify_qp and ib_security_create_qp security are called >> from ib_core and ib_uverbs. ib_security_enforce_mad_agent_pkey_access >> is called from ib_mad. > > So, how are you releasing the memory which is taken by > ib_security_create_qp_security ? It is freed in ib_security_destroy_qp, which is called by ib_destroy_qp after the QP is destroyed successfully. _______________________________________________ Selinux mailing list Selinux@xxxxxxxxxxxxx To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx. To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.