In WLAN enable/disable tests, found that order-3 pages from
wbuff_module_register() callsite are not properly reclaimed.
This has two reasons. First one is that last batch of wbuff
skb fragments is not able to occupy a whole order-3 page,
meaning page refcount is not drained by page_frag_alloc().
At the same time, driver is also not draining the refcount.
This page ends up being active in system after WLAN rmmod.
The second one is that wbuff is a global structure, which
means after WLAN insmod, wbuff.pf_cache.va is set to NULL.
This also means the active page left over in last insmod
can not be reused.
With these two reasons, order-3 pages are leaked for insmod
and rmmod test cycles.
Fix is to call qdf_frag_cache_drain() on wbuff deinit path
so that multiple references on the wbuff.pf_cache.va can
be freed, which then frees the page itself.
CRs-Fixed: 3813709
Change-Id: Ie92abde7973b0f096fc867411ff58c595634548f