Messages in this thread |  | | | Date | Mon, 25 Jun 2012 13:24:26 +0900 | | From | Kamezawa Hiroyuki <> | | Subject | Re: [PATCH 1/6] memcg: replace unsigned long by u64 to avoid overflow |
| |
(2012/06/23 18:26), Johannes Weiner wrote: > On Sat, Jun 23, 2012 at 05:03:39PM +0800, Wanpeng Li wrote: >> On Sat, Jun 23, 2012 at 10:15:14AM +0200, Johannes Weiner wrote: >>> On Sat, Jun 23, 2012 at 02:15:34PM +0800, Wanpeng Li wrote: >>>> From: Wanpeng Li <liwp@linux.vnet.ibm.com> >>>> >>>> Since the return value variable in mem_cgroup_zone_nr_lru_pages and >>>> mem_cgroup_node_nr_lru_pages functions are u64, so replace the return >>>> value of funtions by u64 to avoid overflow. >>> >>> I wonder what 16 TB of memory must think running on a 32-bit kernel... >>> "What is this, an address space for ants?" >> >> Hi Johannes, >> >> You mean change all u64 in memcg to unsigned long? or something I >> miss.... > > Not _all_ of them, we have some that count bytes. But those counting > pages should probably be ulong, yes. > > I think Kame added the ones that you wanted to adjust the surroundings > for in particular, so let's ask him. Kame? >
I've been using 'unsigned long' for the number of pages and 'u64' for the number of bytes. I think it's enough and it should be. I don't have any reason to use u64 for the number of pages on 32bit archs. If 'bytes' are handled by 'unsigned long', please fix it.
BTW, zone_page_state()::/include/linux/vmstat.h returns 'unsigned long'. If you want to change this in memcg, please change zone's ones first.
Thanks, -Kame
|  |