Re: [patch 0/6] mm/vmalloc: Assorted fixes and improvements

Uladzislau Rezki
2023-05-23T17:48:17Z

On Tue, May 23, 2023 at 07:39:26PM +0200, Thomas Gleixner wrote:
> On Tue, May 23 2023 at 19:33, Thomas Gleixner wrote:
>
> > On Tue, May 23 2023 at 18:24, Uladzislau Rezki wrote:
> >> On Tue, May 23, 2023 at 04:02:09PM +0200, Thomas Gleixner wrote:
> >> mm/vmalloc.c: In function ‘_vm_unmap_aliases’:
> >> mm/vmalloc.c:2220:19: error: ‘struct vmap_block_queue’ has no member named ‘vmap_blocks’
> >> 2220 | xa_for_each(&vbq->vmap_blocks, idx, vb) {
> >> | ^~
> >
> > Duh. I surely had that compile fail fixed before I boot tested that
> > pile. And then I did something stupid obviously.
>
> No. This one not. I only had the one in the last patch (missing
> force_purge argument)
>
> And this one makes me scratch my head:
>
> struct vmap_block_queue {
> spinlock_t lock;
> struct list_head free;
>
> /*
> * An xarray requires an extra memory dynamically to
> * be allocated. If it is an issue, we can use rb-tree
> * instead.
> */
> struct xarray vmap_blocks;
> };
>
>
> So how can your compiler complain?
>
> >> mm/vmalloc.c:2220:19: error: ‘struct vmap_block_queue’ has no member named ‘vmap_blocks’
> >> 2220 | xa_for_each(&vbq->vmap_blocks, idx, vb) {
>
> Mine does not, but I might be missing something.
>
Right. I have applied your patches on the v6.3 what is not correct. I
thought it should be fine, because that part was not touched quite a
lot of time. Apparently, me, Lorenzo and Baoquan placed the vmap_blocks
under the vmap_block_queue structure.

So, v6.3 does not contain that patch. I have to use the next instead.

--
Uladzislau Rezki