diff options
Diffstat (limited to 'ipc/shm.c')
| -rw-r--r-- | ipc/shm.c | 3 |
1 files changed, 2 insertions, 1 deletions
| @@ -577,7 +577,8 @@ static void shm_get_stat(struct ipc_namespace *ns, unsigned long *rss, | |||
| 577 | 577 | ||
| 578 | if (is_file_hugepages(shp->shm_file)) { | 578 | if (is_file_hugepages(shp->shm_file)) { |
| 579 | struct address_space *mapping = inode->i_mapping; | 579 | struct address_space *mapping = inode->i_mapping; |
| 580 | *rss += (HPAGE_SIZE/PAGE_SIZE)*mapping->nrpages; | 580 | struct hstate *h = hstate_file(shp->shm_file); |
| 581 | *rss += pages_per_huge_page(h) * mapping->nrpages; | ||
| 581 | } else { | 582 | } else { |
| 582 | struct shmem_inode_info *info = SHMEM_I(inode); | 583 | struct shmem_inode_info *info = SHMEM_I(inode); |
| 583 | spin_lock(&info->lock); | 584 | spin_lock(&info->lock); |
