Lines Matching full:track
67 * Keep track of memory that is to be preserved across KHO.
106 struct kho_mem_track track; member
127 .track = {
128 .orders = XARRAY_INIT(kho_out.ser.track.orders, 0),
158 static void __kho_unpreserve(struct kho_mem_track *track, unsigned long pfn, in __kho_unpreserve() argument
169 physxa = xa_load(&track->orders, order); in __kho_unpreserve()
183 static int __kho_preserve_order(struct kho_mem_track *track, unsigned long pfn, in __kho_preserve_order() argument
195 physxa = xa_load(&track->orders, order); in __kho_preserve_order()
204 physxa = xa_cmpxchg(&track->orders, order, NULL, new_physxa, in __kho_preserve_order()
378 xa_for_each(&ser->track.orders, order, physxa) { in kho_mem_serialize()
753 struct kho_mem_track *track = &kho_out.ser.track; in kho_preserve_folio() local
755 return __kho_preserve_order(track, pfn, order); in kho_preserve_folio()
771 struct kho_mem_track *track = &kho_out.ser.track; in kho_preserve_pages() local
782 err = __kho_preserve_order(track, pfn, order); in kho_preserve_pages()
792 __kho_unpreserve(track, start_pfn, failed_pfn); in kho_preserve_pages()
867 struct kho_mem_track *track = &kho_out.ser.track; in kho_vmalloc_unpreserve_chunk() local
870 __kho_unpreserve(track, pfn, pfn + 1); in kho_vmalloc_unpreserve_chunk()
874 __kho_unpreserve(track, pfn, pfn + 1); in kho_vmalloc_unpreserve_chunk()
1076 xa_for_each(&kho_out.ser.track.orders, order, physxa) { in kho_abort()
1086 xa_destroy(&kho_out.ser.track.orders); in kho_abort()