Defined in 1 files as a function:
Referenced in 16 files:
- fs/xfs/libxfs/xfs_rmap.c
- fs/xfs/libxfs/xfs_rtbitmap.c
- fs/xfs/libxfs/xfs_rtbitmap.h, line 28
- fs/xfs/libxfs/xfs_rtgroup.c
- fs/xfs/libxfs/xfs_rtgroup.h
- fs/xfs/libxfs/xfs_rtrefcount_btree.c, line 406
- fs/xfs/libxfs/xfs_rtrmap_btree.c
- fs/xfs/scrub/rtbitmap.c
- fs/xfs/scrub/rtsummary.c, line 169
- fs/xfs/scrub/trace.h
- fs/xfs/xfs_discard.c
- fs/xfs/xfs_fsmap.c, line 725
- fs/xfs/xfs_rtalloc.c
- fs/xfs/xfs_trace.h
- fs/xfs/xfs_zone_alloc.c
- fs/xfs/xfs_zone_gc.c
Smatch caller information:
fs/xfs/scrub/rtbitmap_repair.c xfs_verify_rgbext() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtalloc_extent_is_free() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtalloc_query_range() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtbitmap_create() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtfile_initialize_block() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtfile_initialize_blocks() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/libxfs/xfs_rtbitmap.c xfs_rtsummary_create() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/libxfs/xfs_rtgroup.c xfs_rtginode_create() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/libxfs/xfs_rtgroup.c xfs_rtginode_enabled() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock |
fs/xfs/libxfs/xfs_rtgroup.c xfs_rtgroup_lock() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock | ||
| HALF_LOCKED2 | global &dax_srcu |
fs/xfs/libxfs/xfs_rtgroup.c xfs_rtgroup_trans_join() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock |
fs/xfs/libxfs/xfs_rtgroup.c xfs_rtgroup_unlock() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 1-u64max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | global &dax_srcu |
fs/xfs/xfs_rtalloc.c xfs_growfs_rt_alloc_blocks() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_growfs_rt_bmblock() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_growfs_rt_free_new() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_growfs_rt_nrblocks() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_growfs_rt_zoned() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_growfs_rtg() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | r xfs_rtgroup_grab |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_last_rt_bmblock_to_extend() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_rtalloc_check_busy() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_rtalloc.c xfs_rtginode_ensure() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 | |
| LOCK2 | &mp->m_growlock | ||
| TYPE_LOCK | (struct xfs_mount)->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_rtpick_extent() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| STR_LEN | 0 | rtg | (-1)-1024 |
| STR_LEN | 0 | rtg | (-1)-1024 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_rtalloc.c xfs_rtunmount_rtg() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock |
fs/xfs/xfs_rtalloc.c xfs_rtx_to_rgbno() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_rtalloc.c xfs_rtx_to_rtb() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_refcount.c xfs_verify_rgbext() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rmap.c xfs_rtrmap_check_inode_irec() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rmap.c xfs_rtrmap_check_meta_irec() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rmap.c xfs_verify_rgbext() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/scrub/rtbitmap.c xchk_rtbitmap_rec() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/scrub/rtbitmap.c xchk_rtbitmap_rec() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/scrub/rtbitmap.c xfs_rtx_to_rtb() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_zone_alloc.c xfs_init_zone() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fc->uapi_mutex |
fs/xfs/xfs_zone_alloc.c xfs_open_zone_mark_full() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_alloc.c xfs_query_write_pointer() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fc->uapi_mutex |
fs/xfs/xfs_zone_alloc.c xfs_zone_account_reclaimable() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_alloc.c xfs_zone_alloc_blocks() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_alloc.c xfs_zone_is_conv() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &zi->zi_open_zones_lock | ||
| HALF_LOCKED2 | &fc->uapi_mutex | ||
| TYPE_LOCK | (struct xfs_zone_info)->zi_open_zones_lock |
fs/xfs/xfs_zone_alloc.c xfs_zone_mark_free() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| BUF_SIZE | 0 | rtg | (-1),1-s32max |
| BUF_SIZE | 0 | rtg | (-1),1-s32max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock |
fs/xfs/xfs_zone_alloc.c xfs_zone_rgbno_is_valid() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_alloc.c xfs_zone_skip_blocks() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| HALF_LOCKED2 | &pool->lock |
fs/xfs/scrub/bmap_repair.c xfs_verify_rgbext() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_gc.c xfs_submit_zone_reset_bio() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 0,4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/xfs_zone_gc.c xfs_zone_gc_finish_reset() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | rtg | 1-s32max |
| BUF_SIZE | 0 | rtg | 1-s32max |
fs/xfs/xfs_zone_gc.c xfs_zone_gc_reset_sync() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fc->uapi_mutex |
fs/xfs/xfs_zone_gc.c xfs_zone_gc_reset_zones() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | r to_rtg |
fs/xfs/scrub/rtsummary.c xchk_rtsum_record_free() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/scrub/rtsummary.c xfs_rtx_to_rtb() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_fsmap.c xfs_getfsmap_rtdev_rtbitmap_helper() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_fsmap.c xfs_rtx_to_rtb() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/libxfs/xfs_rtrefcount_btree.c xfs_rtrefcountbt_init_cursor() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/xfs/libxfs/xfs_rtrmap_btree.c xfs_rtrmapbt_init_cursor() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mp->m_growlock | ||
| HALF_LOCKED2 | global &dax_srcu |
fs/xfs/libxfs/xfs_rtrmap_btree.c xfs_rtrmapbt_mem_cursor() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | rtg | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &rr->lock |
fs/xfs/xfs_discard.c xfs_rtx_to_rgbno() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_discard.c xfs_rtx_to_rtb() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_discard.c xfs_trim_gather_rtextent() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_discard.c xfs_trim_gather_rtextent() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_discard.c xfs_trim_gather_rtgroup_extent() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| PARAM_VALUE | 0 | rtg->rtg_group.xg_mount | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
fs/xfs/xfs_discard.c xfs_trim_rtextents() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 |
fs/xfs/xfs_discard.c xfs_trim_rtgroup_extents() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 |
fs/xfs/xfs_discard.c xfs_trim_rtgroup_extents() -> rtg_mount()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | rtg | 4096-ptr_max |
| DATA_SOURCE | 0 | rtg | $0 |
| CAPABLE | 0 | 21 |