• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.5.8/xnu-1228.15.4/osfmk/vm/

Lines Matching refs:object

63  *	Virtual memory object module definitions.
97 * vm_object_t Virtual memory object.
131 * temporary object that
132 * shadows this object, for
139 vm_object_offset_t paging_offset; /* Offset into memory object */
146 /* The memory object ports are
162 /* boolean_t */ pager_trusted:1,/* The pager for this object
168 * for this object (and rights
169 * to the memory object) after
186 /* boolean_t */ private:1, /* magic device_pager object,
188 /* boolean_t */ pageout:1, /* pageout object. contains
190 * a real memory object. */
206 * remains in object */
208 /* This object is mapped
219 * object termination
230 /* When a permanent object
261 queue_head_t msr_q; /* memory object synchronise
278 /* shadow but not in object */
280 struct vm_object *paging_object; /* object which pages to be
282 * put in current object
285 /* hold object lock when altering */
301 * of a "paging_in_progress" reference for this VM object.
310 queue_chain_t objq; /* object queue - currently used for purgable queues */
316 vm_object_t __object = __page->object; \
333 #define VM_PAGE_INSERT(page, object) \
336 vm_object_t __object = (object); \
342 vm_object_t kernel_object; /* the single kernel object */
346 at a time for each object */
353 queue_chain_t msr_q; /* object request queue */
358 vm_object_t object; /* back pointer */
397 vm_object_t object);
402 vm_object_t object);
404 vm_object_t object);
405 #define VM_OBJ_RES_INCR(object) (object)->res_count++
406 #define VM_OBJ_RES_DECR(object) (object)->res_count--
410 #define VM_OBJ_RES_INCR(object)
411 #define VM_OBJ_RES_DECR(object)
412 #define vm_object_res_reference(object)
413 #define vm_object_res_deallocate(object)
417 #define vm_object_reference_locked(object) \
419 vm_object_t RLObject = (object); \
420 vm_object_lock_assert_exclusive(object); \
428 #define vm_object_reference_shared(object) \
430 vm_object_t RLObject = (object); \
431 vm_object_lock_assert_shared(object); \
441 vm_object_t object);
445 #define vm_object_reference(object) \
447 vm_object_t RObject = (object); \
458 vm_object_t object);
461 vm_object_t object,
465 vm_object_t object,
473 vm_object_t object,
478 vm_object_t object,
484 vm_object_t object);
487 vm_object_t object,
500 vm_object_t *object,
505 vm_object_t object,
540 vm_object_t object,
544 vm_object_t object);
547 vm_object_t object,
555 vm_object_t object,
569 vm_object_t object,
577 vm_object_t object,
587 vm_object_t object,
605 vm_object_t object,
611 vm_object_t object,
621 vm_object_t object,
628 vm_object_t object,
647 #define vm_object_assert_wait(object, event, interruptible) \
648 (((object)->all_wanted |= 1 << (event)), \
649 assert_wait((event_t)((vm_offset_t)(object)+(event)),(interruptible)))
651 #define vm_object_wait(object, event, interruptible) \
652 (vm_object_assert_wait((object),(event),(interruptible)), \
653 vm_object_unlock(object), \
656 #define thread_sleep_vm_object(object, event, interruptible) \
657 lck_rw_sleep(&(object)->Lock, LCK_SLEEP_DEFAULT, (event_t)(event), (interruptible))
659 #define vm_object_sleep(object, event, interruptible) \
660 (((object)->all_wanted |= 1 << (event)), \
661 thread_sleep_vm_object((object), \
662 ((vm_offset_t)(object)+(event)), (interruptible)))
664 #define vm_object_wakeup(object, event) \
666 if ((object)->all_wanted & (1 << (event))) \
667 thread_wakeup((event_t)((vm_offset_t)(object) + (event))); \
668 (object)->all_wanted &= ~(1 << (event)); \
671 #define vm_object_set_wanted(object, event) \
673 ((object)->all_wanted |= (1 << (event))); \
676 #define vm_object_wanted(object, event) \
677 ((object)->all_wanted & (1 << (event)))
684 #define VM_PIP_DEBUG_BEGIN(object) \
686 if ((object)->paging_in_progress < VM_PIP_DEBUG_MAX_REFS) { \
687 int pip = (object)->paging_in_progress; \
688 (void) OSBacktrace(&(object)->pip_holders[pip].pip_retaddr[0], \
693 #define VM_PIP_DEBUG_BEGIN(object)
696 #define vm_object_paging_begin(object) \
698 vm_object_lock_assert_exclusive((object)); \
699 assert((object)->paging_in_progress >= 0); \
700 VM_PIP_DEBUG_BEGIN((object)); \
701 (object)->paging_in_progress++; \
704 #define vm_object_paging_end(object) \
706 vm_object_lock_assert_exclusive((object)); \
707 assert((object)->paging_in_progress > 0); \
708 if (--(object)->paging_in_progress == 0) { \
709 vm_object_wakeup(object, \
714 #define vm_object_paging_wait(object, interruptible) \
716 vm_object_lock_assert_exclusive((object)); \
717 while ((object)->paging_in_progress != 0) { \
720 _wr = vm_object_sleep((object), \
730 #define vm_object_mapping_begin(object) \
732 vm_object_lock_assert_exclusive((object)); \
733 assert(! (object)->mapping_in_progress); \
734 (object)->mapping_in_progress = TRUE; \
737 #define vm_object_mapping_end(object) \
739 vm_object_lock_assert_exclusive((object)); \
740 assert((object)->mapping_in_progress); \
741 (object)->mapping_in_progress = FALSE; \
742 vm_object_wakeup((object), \
746 #define vm_object_mapping_wait(object, interruptible) \
748 vm_object_lock_assert_exclusive((object)); \
749 while ((object)->mapping_in_progress) { \
752 _wr = vm_object_sleep((object), \
758 assert(!(object)->mapping_in_progress); \
782 #define vm_object_lock_init(object) \
783 lck_rw_init(&(object)->Lock, &vm_object_lck_grp, \
784 (((object) == kernel_object || \
785 (object) == vm_submap_object) ? \
788 #define vm_object_lock_destroy(object) lck_rw_destroy(&(object)->Lock, &vm_object_lck_grp)
790 #define vm_object_unlock(object) lck_rw_done(&(object)->Lock)
791 #define vm_object_lock_upgrade(object) lck_rw_lock_shared_to_exclusive(&(object)->Lock)
792 #define vm_object_lock_try_scan(object) lck_rw_try_lock_exclusive(&(object)->Lock)
800 #define vm_object_lock_assert_held(object) \
801 lck_rw_assert(&(object)->Lock, LCK_RW_ASSERT_HELD)
802 #define vm_object_lock_assert_shared(object) \
803 lck_rw_assert(&(object)->Lock, LCK_RW_ASSERT_SHARED)
804 #define vm_object_lock_assert_exclusive(object) \
805 lck_rw_assert(&(object)->Lock, LCK_RW_ASSERT_EXCLUSIVE)
807 #define vm_object_lock_assert_held(object)
808 #define vm_object_lock_assert_shared(object)
809 #define vm_object_lock_assert_exclusive(object)