|
My Project
|
Public Attributes | |
| struct file * | filp |
| struct kbase_device * | kbdev |
| int | id |
| unsigned long | api_version |
| phys_addr_t | pgd |
| struct list_head | event_list |
| struct list_head | event_coalesce_list |
| struct mutex | event_mutex |
| atomic_t | event_closed |
| struct workqueue_struct * | event_workq |
| atomic_t | event_count |
| int | event_coalesce_count |
| atomic_t | flags |
| atomic_t | setup_complete |
| atomic_t | setup_in_progress |
| u64 * | mmu_teardown_pages |
| struct page * | aliasing_sink_page |
| struct mutex | mmu_lock |
| struct mutex | reg_lock |
| struct rb_root | reg_rbtree_same |
| struct rb_root | reg_rbtree_exec |
| struct rb_root | reg_rbtree_custom |
| unsigned long | cookies |
| struct kbase_va_region * | pending_regions [BITS_PER_LONG] |
| wait_queue_head_t | event_queue |
| pid_t | tgid |
| pid_t | pid |
| struct kbase_jd_context | jctx |
| atomic_t | used_pages |
| atomic_t | nonmapped_pages |
| struct kbase_mem_pool | mem_pool |
| struct shrinker | reclaim |
| struct list_head | evict_list |
| struct list_head | waiting_soft_jobs |
| spinlock_t | waiting_soft_jobs_lock |
| int | as_nr |
| spinlock_t | mm_update_lock |
| struct mm_struct * | process_mm |
| u64 | same_va_end |
| struct jsctx_queue | jsctx_queue [KBASE_JS_ATOM_SCHED_PRIO_COUNT][BASE_JM_MAX_NR_SLOTS] |
| atomic_t | atoms_pulled |
| atomic_t | atoms_pulled_slot [BASE_JM_MAX_NR_SLOTS] |
| int | atoms_pulled_slot_pri [BASE_JM_MAX_NR_SLOTS][KBASE_JS_ATOM_SCHED_PRIO_COUNT] |
| bool | blocked_js [BASE_JM_MAX_NR_SLOTS][KBASE_JS_ATOM_SCHED_PRIO_COUNT] |
| u32 | slots_pullable |
| struct kbase_context_backend | backend |
| struct work_struct | work |
| struct kbase_vinstr_client * | vinstr_cli |
| struct mutex | vinstr_cli_lock |
| struct list_head | completed_jobs |
| atomic_t | work_count |
| struct timer_list | soft_job_timeout |
| struct kbase_va_region * | jit_alloc [256] |
| struct list_head | jit_active_head |
| struct list_head | jit_pool_head |
| struct list_head | jit_destroy_head |
| struct mutex | jit_evict_lock |
| struct work_struct | jit_work |
| struct list_head | jit_atoms_head |
| struct list_head | jit_pending_alloc |
| struct list_head | ext_res_meta_head |
| atomic_t | drain_pending |
| u32 | age_count |
| int kbase_context::as_nr |
This is effectively part of the Run Pool, because it only has a valid setting (!=KBASEP_AS_NR_INVALID) whilst the context is scheduled in
The hwaccess_lock must be held whilst accessing this.
If the context relating to this as_nr is required, you must use kbasep_js_runpool_retain_ctx() to ensure that the context doesn't disappear whilst you're using it. Alternatively, just hold the hwaccess_lock to ensure the context doesn't disappear (but this has restrictions on what other locks you can take whilst doing this)
1.8.13