Message ID | 20230105101844.1893104-1-jthoughton@google.com (mailing list archive) |
---|---|
Headers | show |
Series | Based on latest mm-unstable (85b44c25cd1e). | expand |
On 05.01.23 11:17, James Houghton wrote: > This series introduces the concept of HugeTLB high-granularity mapping > (HGM). This series teaches HugeTLB how to map HugeTLB pages at > high-granularity, similar to how THPs can be PTE-mapped. > > Support for HGM in this series is for MAP_SHARED VMAs on x86 only. Other > architectures and (some) support for MAP_PRIVATE will come later. Why even care about the complexity of COW-sharable anon pages? TBH, I'd just limit this to MAP_SHARED and call it a day. Sure, we can come up with use cases for everything (snapshotting VMs using fork while also support optimized postcopy), but I think this would need some real justification for the added complexity and possible (likely!) issues.
On 01/05/23 11:47, David Hildenbrand wrote: > On 05.01.23 11:17, James Houghton wrote: > > This series introduces the concept of HugeTLB high-granularity mapping > > (HGM). This series teaches HugeTLB how to map HugeTLB pages at > > high-granularity, similar to how THPs can be PTE-mapped. > > > > Support for HGM in this series is for MAP_SHARED VMAs on x86 only. Other > > architectures and (some) support for MAP_PRIVATE will come later. > > Why even care about the complexity of COW-sharable anon pages? TBH, I'd just > limit this to MAP_SHARED and call it a day. Sure, we can come up with use > cases for everything (snapshotting VMs using fork while also support > optimized postcopy), but I think this would need some real justification for > the added complexity and possible (likely!) issues. I believe the primary use case driving this beyond MAP_SHARED would be poisoning due to memory errors. Extending HGM seems to be the most elegant way to start providing better support for this.
On 09.01.23 20:53, Mike Kravetz wrote: > On 01/05/23 11:47, David Hildenbrand wrote: >> On 05.01.23 11:17, James Houghton wrote: >>> This series introduces the concept of HugeTLB high-granularity mapping >>> (HGM). This series teaches HugeTLB how to map HugeTLB pages at >>> high-granularity, similar to how THPs can be PTE-mapped. >>> >>> Support for HGM in this series is for MAP_SHARED VMAs on x86 only. Other >>> architectures and (some) support for MAP_PRIVATE will come later. >> >> Why even care about the complexity of COW-sharable anon pages? TBH, I'd just >> limit this to MAP_SHARED and call it a day. Sure, we can come up with use >> cases for everything (snapshotting VMs using fork while also support >> optimized postcopy), but I think this would need some real justification for >> the added complexity and possible (likely!) issues. > > I believe the primary use case driving this beyond MAP_SHARED would be > poisoning due to memory errors. Extending HGM seems to be the most > elegant way to start providing better support for this. Good point. Although I wonder if in practice, most applicable users either already are, or should switch to, using MAP_SHARED hugetlb.