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.

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to