diff options
Diffstat (limited to 'drivers/misc/sgi-gru/grutables.h')
-rw-r--r-- | drivers/misc/sgi-gru/grutables.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/misc/sgi-gru/grutables.h b/drivers/misc/sgi-gru/grutables.h index 76fe2987fc9f..adaf691d59f5 100644 --- a/drivers/misc/sgi-gru/grutables.h +++ b/drivers/misc/sgi-gru/grutables.h | |||
@@ -202,6 +202,7 @@ struct gru_stats_s { | |||
202 | atomic_long_t check_context_retarget_intr; | 202 | atomic_long_t check_context_retarget_intr; |
203 | atomic_long_t check_context_unload; | 203 | atomic_long_t check_context_unload; |
204 | atomic_long_t tlb_dropin; | 204 | atomic_long_t tlb_dropin; |
205 | atomic_long_t tlb_preload_page; | ||
205 | atomic_long_t tlb_dropin_fail_no_asid; | 206 | atomic_long_t tlb_dropin_fail_no_asid; |
206 | atomic_long_t tlb_dropin_fail_upm; | 207 | atomic_long_t tlb_dropin_fail_upm; |
207 | atomic_long_t tlb_dropin_fail_invalid; | 208 | atomic_long_t tlb_dropin_fail_invalid; |
@@ -245,7 +246,8 @@ struct gru_stats_s { | |||
245 | }; | 246 | }; |
246 | 247 | ||
247 | enum mcs_op {cchop_allocate, cchop_start, cchop_interrupt, cchop_interrupt_sync, | 248 | enum mcs_op {cchop_allocate, cchop_start, cchop_interrupt, cchop_interrupt_sync, |
248 | cchop_deallocate, tghop_invalidate, mcsop_last}; | 249 | cchop_deallocate, tfhop_write_only, tfhop_write_restart, |
250 | tghop_invalidate, mcsop_last}; | ||
249 | 251 | ||
250 | struct mcs_op_statistic { | 252 | struct mcs_op_statistic { |
251 | atomic_long_t count; | 253 | atomic_long_t count; |
@@ -335,6 +337,7 @@ struct gru_vma_data { | |||
335 | long vd_user_options;/* misc user option flags */ | 337 | long vd_user_options;/* misc user option flags */ |
336 | int vd_cbr_au_count; | 338 | int vd_cbr_au_count; |
337 | int vd_dsr_au_count; | 339 | int vd_dsr_au_count; |
340 | unsigned char vd_tlb_preload_count; | ||
338 | }; | 341 | }; |
339 | 342 | ||
340 | /* | 343 | /* |
@@ -350,6 +353,7 @@ struct gru_thread_state { | |||
350 | struct gru_state *ts_gru; /* GRU where the context is | 353 | struct gru_state *ts_gru; /* GRU where the context is |
351 | loaded */ | 354 | loaded */ |
352 | struct gru_mm_struct *ts_gms; /* asid & ioproc struct */ | 355 | struct gru_mm_struct *ts_gms; /* asid & ioproc struct */ |
356 | unsigned char ts_tlb_preload_count; /* TLB preload pages */ | ||
353 | unsigned long ts_cbr_map; /* map of allocated CBRs */ | 357 | unsigned long ts_cbr_map; /* map of allocated CBRs */ |
354 | unsigned long ts_dsr_map; /* map of allocated DATA | 358 | unsigned long ts_dsr_map; /* map of allocated DATA |
355 | resources */ | 359 | resources */ |
@@ -661,7 +665,8 @@ extern int gru_proc_init(void); | |||
661 | extern void gru_proc_exit(void); | 665 | extern void gru_proc_exit(void); |
662 | 666 | ||
663 | extern struct gru_thread_state *gru_alloc_gts(struct vm_area_struct *vma, | 667 | extern struct gru_thread_state *gru_alloc_gts(struct vm_area_struct *vma, |
664 | int cbr_au_count, int dsr_au_count, int options, int tsid); | 668 | int cbr_au_count, int dsr_au_count, |
669 | unsigned char tlb_preload_count, int options, int tsid); | ||
665 | extern unsigned long gru_reserve_cb_resources(struct gru_state *gru, | 670 | extern unsigned long gru_reserve_cb_resources(struct gru_state *gru, |
666 | int cbr_au_count, char *cbmap); | 671 | int cbr_au_count, char *cbmap); |
667 | extern unsigned long gru_reserve_ds_resources(struct gru_state *gru, | 672 | extern unsigned long gru_reserve_ds_resources(struct gru_state *gru, |