[PATCH v3 0/6] Fix some bugs about HugeTLB code

Muchun Song
2021-01-10T12:41:28Z

This patch series aims to fix some bugs and add some improvements.

Changelog since v2 -> v3:
- Update commit log.
- Using head[3].private to indicate the page is freed in patch #3.

Changelog since v1 -> v2:
- Export set_page_huge_active() in patch #2 to fix.
- Using head[3].mapping to indicate the page is freed in patch #3.
- Flush @free_hpage_work in patch #4.

Muchun Song (6):
mm: migrate: do not migrate HugeTLB page whose refcount is one
mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page
mm: hugetlb: fix a race between freeing and dissolving the page
mm: hugetlb: add return -EAGAIN for dissolve_free_huge_page
mm: hugetlb: fix a race between isolating and freeing page
mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active

fs/hugetlbfs/inode.c | 3 ++-
include/linux/hugetlb.h | 2 ++
mm/hugetlb.c | 59 +++++++++++++++++++++++++++++++++++++++++--------
mm/migrate.c | 6 +++++
4 files changed, 60 insertions(+), 10 deletions(-)

--
2.11.0