[ofa-general] Re: [kvm-devel] Notifier for Externally Mapped Memory (EMM) V1
Avi Kivity
avi at qumranet.com
Wed Mar 5 22:12:01 PST 2008
Christoph Lameter wrote:
>
> /*
> + * Notifier for devices establishing their own references to Linux
> + * kernel pages in addition to the regular mapping via page
> + * table and rmap. The notifier allows the device to drop the mapping
> + * when the VM removes references to pages.
> + */
> +enum emm_operation {
> + emm_release, /* Process existing, */
> + emm_invalidate_start, /* Before the VM unmaps pages */
> + emm_invalidate_end, /* After the VM unmapped pages */
> + emm_referenced /* Check if a range was referenced */
> +};
>
Check and clear
btw, a similar test and clear dirty would be useful as well, no?
> +
> +struct emm_notifier {
> + int (*callback)(struct emm_notifier *e, struct mm_struct *mm,
> + enum emm_operation op,
> + unsigned long start, unsigned long end);
> + struct emm_notifier *next;
> +};
> +
>
It is cleaner for the user to specify individual callbacks instead of
having a switch.
--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
More information about the general
mailing list