Hi Jerome, Not sure I understand this patch correctly, will try to read it later. But a couple of nits/questions anyway, On 09/15, Jerome Marchand wrote: > > +The ShmXXX lines only appears for shmem mapping. They show the amount of memory > +from the mapping that is currently: > + - resident in RAM but not mapped into any process (ShmNotMapped) But how can we know that it is not mapped by another process? And in fact "not mapped" looks confusing (at least to me). IIUC it is actually mapped even by this process, just it never tried to fault these (resident or swapped) pages in. Right? > +void update_shmem_stats(struct mem_size_stats *mss, struct vm_area_struct *vma, > + pgoff_t pgoff, unsigned long size) static? > +{ > + int count = 0; > + > + switch (shmem_locate(vma, pgoff, &count)) { > + case SHMEM_RESIDENT: > + if (!count) > + mss->shmem_notmapped += size; > + break; > + case SHMEM_SWAP: > + mss->shmem_swap += size; > + break; > + } > +} It seems that shmem_locate() and shmem_vma() are only defined if CONFIG_SHMEM, probably this series needs more ifdef's. And I am not sure why we ignore SHMEM_SWAPCACHE... Oleg. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>