Re: [RFC] Restrict size of page_cgroup->flags

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 7 Oct 2010 13:22:33 +0900
KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote:

> On Thu, 7 Oct 2010 09:26:08 +0530
> Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:
> 
> > * KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> [2010-10-07 12:18:16]:
> > 
> > > On Thu, 7 Oct 2010 08:42:04 +0530
> > > Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:
> > > 
> > > > * KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> [2010-10-07 08:58:58]:
> > > > 
> > > > > On Wed, 6 Oct 2010 19:53:14 +0530
> > > > > Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:
> > > > > 
> > > > > > I propose restricting page_cgroup.flags to 16 bits. The patch for the
> > > > > > same is below. Comments?
> > > > > > 
> > > > > > 
> > > > > > Restrict the bits usage in page_cgroup.flags
> > > > > > 
> > > > > > From: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>
> > > > > > 
> > > > > > Restricting the flags helps control growth of the flags unbound.
> > > > > > Restriciting it to 16 bits gives us the possibility of merging
> > > > > > cgroup id with flags (atomicity permitting) and saving a whole
> > > > > > long word in page_cgroup
> > > > > > 
> > > > > > Signed-off-by: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>
> > > > > 
> > > > > Doesn't make sense until you show the usage of existing bits.
> > > > 
> > > > ??
> > > > 
> > > Limiting something for NOT EXISTING PATCH doesn't make sense, in general.
> > > 
> > > 
> > > > > And I guess 16bit may be too large on 32bit systems.
> > > > 
> > > > too large on 32 bit systems? My intention is to keep the flags to 16
> > > > bits and then use cgroup id for the rest and see if we can remove
> > > > mem_cgroup pointer
> > > > 
> > > 
> > > You can't use flags field to store mem_cgroup_id while we use lock bit on it.
> > > We have to store something more stable...as pfn or node-id or zone-id.
> > > 
> > > It's very racy. 
> > >
> > 
> > Yes, correct it is racy, there is no easy way from what I know we can write
> > the upper 16 bits of the flag without affecting the lower 16 bits, if
> > the 16 bits are changing. One of the techniques could be to have lock
> > for the unsigned long word itself - but I don't know what performance
> > overhead that would add. Having said that I would like to explore
> > techniques that allow me to merge the two.
> > 
> 
> to store pfn, we need to limit under 12bit.
I'm sorry if I miss something, but is it valid in PAE case too ?
I think it would be better to store section id(or node id) rather than pfn.

> I'll schedule my patch if dirty_ratio one goes.
> 
Agreed. I think we should do dirty_ratio patches first.


Thanks,
Daisuke Nishimura.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]