CNSS prealloc maintains various prealloc pools of 8Kb, 16Kb, 32Kb
and so on, and allocates buffer from the pool for wlan driver. When
wlan driver requests to free the memory buffer then CNSS prealloc
derives slab_cache from virtual memory via page struct to identify
prealloc pool id to put memory buffer back into the pool.
In kernel 5.17, slab_cache is removed from the page struct. Modify
QDF functions to add headroom at the beginning of allocated buffer
to store cache pointer. CNSS prealloc will store cache pointer in
this headroom during allocation and later use it in identifying
prealloc pool id to put back the buffer.
Change-Id: I2c19b72b82092d553d474a50385ed3095a0fab39
CRs-Fixed: 3312550