On Wed, Feb 03, 2021 at 03:12:05PM +0100, David Hildenbrand wrote: > On 03.02.21 15:10, Oscar Salvador wrote: > > On Wed, Feb 03, 2021 at 02:33:56PM +0100, David Hildenbrand wrote: > > > One problem I see with existing code / this change making more obvious is > > > that when trying to remove in other granularity than we added (e.g., unplug > > > a 128MB DIMM avaialble during boot), we remove the direct map of unrelated > > > DIMMs. > > > > So, let me see if I understand your concern. > > > > We have a range that was mapped with 1GB page, and we try to remove > > a 128MB chunk from it. > > Yes, in that case we would clear the pud, and that is bad, so we should > > keep the PAGE_ALIGNED checks. > > > > Now, let us assume that scenario. > > If you have a 1GB mapped range and you remove it in smaller chunks bit by bit > > (e.g: 128M), the direct mapping of that range will never be cleared unless > > No, that's exactly what's happening. Good thing is that it barely ever > happens, so I assume leaving behind some direct mapping / page tables is not > that bad. Sorry, I meant that that is the current situation now. Then let us keep the PAGE_ALIGNED stuff. I shall resend a v3 later today. thanks for the review ;-) -- Oscar Salvador SUSE L3