On 30/11/2018 12:01, Wen Yang wrote: > The problem is that we call this with a spin lock held. > The call tree is: > pvcalls_front_accept() holds bedata->socket_lock. > -> create_active() > -> __get_free_pages() uses GFP_KERNEL > > The create_active() function is only called from pvcalls_front_accept() > with a spin_lock held, The allocation is not allowed to sleep and > GFP_KERNEL is not sufficient. > > This issue was detected by using the Coccinelle software. > > v2: Add a function doing the allocations which is called > outside the lock and passing the allocated data to > create_active(). > v3: Use the matching deallocators i.e., free_page() > and free_pages(), respectively. > > Suggested-by: Juergen Gross <[email protected]> > Signed-off-by: Wen Yang <[email protected]> > CC: Julia Lawall <[email protected]> > CC: Boris Ostrovsky <[email protected]> > CC: Juergen Gross <[email protected]> > CC: Stefano Stabellini <[email protected]> > CC: [email protected] > CC: [email protected] > ---
This patch is malformed. Please send it via an appropriate tool/mailer. See e.g. Documentation/process/submitting-patches.rst or Documentation/process/email-clients.rst in the Linux kernel source tree. Juergen _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
