Granting pages consumes backend system memory. In systems configured
with insufficient spare memory for those pages, it can cause a memory
pressure situation. However, finding the optimal amount of the spare
memory is challenging for large systems having dynamic resource
utilization patterns. Also, such a static configuration might lack a
flexibility.
To mitigate such problems, this commit adds a memory reclaim callback to
'xenbus_driver'. Using this facility, 'xenbus' would be able to monitor
a memory pressure and request specific devices of specific backend
drivers which causing the given pressure to voluntarily release its
memory.
That said, this commit simply requests every callback registered driver
to release its memory for every domain, rather than issueing the
requests to the drivers and the domain in charge. Such things will be
done in a futur. Also, this commit focuses on memory only. However, it
would be ablt to be extended for general resources.
Signed-off-by: SeongJae Park <sjpark@xxxxxxxxx>