diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/sched_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/sched_gk20a.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c index a73e7993..6b372489 100644 --- a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c | |||
@@ -12,7 +12,6 @@ | |||
12 | */ | 12 | */ |
13 | 13 | ||
14 | #include <asm/barrier.h> | 14 | #include <asm/barrier.h> |
15 | #include <linux/slab.h> | ||
16 | #include <linux/kthread.h> | 15 | #include <linux/kthread.h> |
17 | #include <linux/circ_buf.h> | 16 | #include <linux/circ_buf.h> |
18 | #include <linux/delay.h> | 17 | #include <linux/delay.h> |
@@ -24,6 +23,8 @@ | |||
24 | #include <linux/log2.h> | 23 | #include <linux/log2.h> |
25 | #include <uapi/linux/nvgpu.h> | 24 | #include <uapi/linux/nvgpu.h> |
26 | 25 | ||
26 | #include <nvgpu/kmem.h> | ||
27 | |||
27 | #include "ctxsw_trace_gk20a.h" | 28 | #include "ctxsw_trace_gk20a.h" |
28 | #include "gk20a.h" | 29 | #include "gk20a.h" |
29 | #include "gr_gk20a.h" | 30 | #include "gr_gk20a.h" |
@@ -154,7 +155,7 @@ static int gk20a_sched_dev_ioctl_get_tsgs_by_pid(struct gk20a_sched_ctrl *sched, | |||
154 | return -ENOSPC; | 155 | return -ENOSPC; |
155 | } | 156 | } |
156 | 157 | ||
157 | bitmap = kzalloc(sched->bitmap_size, GFP_KERNEL); | 158 | bitmap = nvgpu_kzalloc(sched->g, sched->bitmap_size); |
158 | if (!bitmap) | 159 | if (!bitmap) |
159 | return -ENOMEM; | 160 | return -ENOMEM; |
160 | 161 | ||
@@ -172,7 +173,7 @@ static int gk20a_sched_dev_ioctl_get_tsgs_by_pid(struct gk20a_sched_ctrl *sched, | |||
172 | bitmap, sched->bitmap_size)) | 173 | bitmap, sched->bitmap_size)) |
173 | err = -EFAULT; | 174 | err = -EFAULT; |
174 | 175 | ||
175 | kfree(bitmap); | 176 | nvgpu_kfree(sched->g, bitmap); |
176 | 177 | ||
177 | return err; | 178 | return err; |
178 | } | 179 | } |
@@ -650,15 +651,15 @@ int gk20a_sched_ctrl_init(struct gk20a *g) | |||
650 | gk20a_dbg(gpu_dbg_fn | gpu_dbg_sched, "g=%p sched=%p size=%zu", | 651 | gk20a_dbg(gpu_dbg_fn | gpu_dbg_sched, "g=%p sched=%p size=%zu", |
651 | g, sched, sched->bitmap_size); | 652 | g, sched, sched->bitmap_size); |
652 | 653 | ||
653 | sched->active_tsg_bitmap = kzalloc(sched->bitmap_size, GFP_KERNEL); | 654 | sched->active_tsg_bitmap = nvgpu_kzalloc(g, sched->bitmap_size); |
654 | if (!sched->active_tsg_bitmap) | 655 | if (!sched->active_tsg_bitmap) |
655 | return -ENOMEM; | 656 | return -ENOMEM; |
656 | 657 | ||
657 | sched->recent_tsg_bitmap = kzalloc(sched->bitmap_size, GFP_KERNEL); | 658 | sched->recent_tsg_bitmap = nvgpu_kzalloc(g, sched->bitmap_size); |
658 | if (!sched->recent_tsg_bitmap) | 659 | if (!sched->recent_tsg_bitmap) |
659 | goto free_active; | 660 | goto free_active; |
660 | 661 | ||
661 | sched->ref_tsg_bitmap = kzalloc(sched->bitmap_size, GFP_KERNEL); | 662 | sched->ref_tsg_bitmap = nvgpu_kzalloc(g, sched->bitmap_size); |
662 | if (!sched->ref_tsg_bitmap) | 663 | if (!sched->ref_tsg_bitmap) |
663 | goto free_recent; | 664 | goto free_recent; |
664 | 665 | ||
@@ -672,10 +673,10 @@ int gk20a_sched_ctrl_init(struct gk20a *g) | |||
672 | return 0; | 673 | return 0; |
673 | 674 | ||
674 | free_recent: | 675 | free_recent: |
675 | kfree(sched->recent_tsg_bitmap); | 676 | nvgpu_kfree(g, sched->recent_tsg_bitmap); |
676 | 677 | ||
677 | free_active: | 678 | free_active: |
678 | kfree(sched->active_tsg_bitmap); | 679 | nvgpu_kfree(g, sched->active_tsg_bitmap); |
679 | 680 | ||
680 | return -ENOMEM; | 681 | return -ENOMEM; |
681 | } | 682 | } |
@@ -684,9 +685,9 @@ void gk20a_sched_ctrl_cleanup(struct gk20a *g) | |||
684 | { | 685 | { |
685 | struct gk20a_sched_ctrl *sched = &g->sched_ctrl; | 686 | struct gk20a_sched_ctrl *sched = &g->sched_ctrl; |
686 | 687 | ||
687 | kfree(sched->active_tsg_bitmap); | 688 | nvgpu_kfree(g, sched->active_tsg_bitmap); |
688 | kfree(sched->recent_tsg_bitmap); | 689 | nvgpu_kfree(g, sched->recent_tsg_bitmap); |
689 | kfree(sched->ref_tsg_bitmap); | 690 | nvgpu_kfree(g, sched->ref_tsg_bitmap); |
690 | sched->active_tsg_bitmap = NULL; | 691 | sched->active_tsg_bitmap = NULL; |
691 | sched->recent_tsg_bitmap = NULL; | 692 | sched->recent_tsg_bitmap = NULL; |
692 | sched->ref_tsg_bitmap = NULL; | 693 | sched->ref_tsg_bitmap = NULL; |