Messages in this thread | | | Subject | Re: [HMM v15 01/16] mm/free_hot_cold_page: catch ZONE_DEVICE pages | From | Dave Hansen <> | Date | Mon, 9 Jan 2017 09:00:34 -0800 |
| |
On 01/09/2017 08:57 AM, Jerome Glisse wrote: > On Mon, Jan 09, 2017 at 08:21:25AM -0800, Dave Hansen wrote: >> On 01/09/2017 01:19 AM, Balbir Singh wrote: >>>> + /* >>>> + * This should never happen ! Page from ZONE_DEVICE always must have an >>>> + * active refcount. Complain about it and try to restore the refcount. >>>> + */ >>>> + if (is_zone_device_page(page)) { >>>> + VM_BUG_ON_PAGE(is_zone_device_page(page), page); >>> This can be VM_BUG_ON_PAGE(1, page), hopefully the compiler does the right thing >>> here. I suspect this should be a BUG_ON, independent of CONFIG_DEBUG_VM >> BUG_ON() means "kill the machine dead". Do we really want a guaranteed >> dead machine if someone screws up their refcounting? > VM_BUG_ON_PAGE ok with you ? It is just a safety net, i can simply drop that > patch if people have too much feeling about it.
Enough distros turn on DEBUG_VM that there's basically no difference between VM_BUG_ON() and BUG_ON().
I also think it would be much nicer if you buried the check in the allocator in a slow path somewhere instead of sticking it in one of the hottest paths in the whole kernel.
| |