Re: [PATCH 00/16] mm: prepare for converting vm->vm_flags to 64-bit

From: Minchan Kim
Date: Thu Mar 22 2012 - 01:40:11 EST


On Wed, Mar 21, 2012 at 05:16:06PM +0400, Konstantin Khlebnikov wrote:
> Minchan Kim wrote:
> >Hi Konstantin,
> >
> >It seems to be nice clean up to me and you are a volunteer we have been wanted
> >for a long time. Thanks!
> >I am one of people who really want to expand vm_flags to 64 bit but when KOSAKI
> >tried it, Linus said his concerning, I guess you already saw that.
> >
> >He want to tidy vm_flags's usage up rather than expanding it.
> >Without the discussion about that, just expanding vm_flags would make us use
> >it up easily so that we might need more space.
>
> Strictly speaking, my pachset does not expands vm_flags, it just prepares to this.
> Anyway vm_flags_t looks better than hard-coded "unsigned long" and messy type-casts around it.

Indeed.

>
> >
> >Readahead flags are good candidate to move into another space and arch-specific flags, I guess.
> >Another candidate I think of is THP flag. It's just for only anonymous vma now
> >(But I am not sure we have a plan to support it for file-backed pages in future)
> >so we can move it to anon_vma or somewhere.
> >I think other guys might find more somethings
> >
> >The point is that at least, we have to discuss about clean up current vm_flags's
> >use cases before expanding it unconditionally.
>
> Seems like we can easily remove VM_EXECUTABLE
> (count in mm->num_exe_file_vmas amount of vmas with vma->vm_file == mm->exe_file
> instead of vmas with VM_EXECUTABLE bit)
>
> And probably VM_CAN_NONLINEAR...

I think we can also unify VM_MAPPED_COPY(nommu) and VM_SAO(powerpc) with one VM_ARCH_1
Okay. After this series is merged, let's try to remove flags we can do. Then, other guys
might suggest another ideas.

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/