diff options
Diffstat (limited to 'drivers/gpu/nvgpu/os/linux')
-rw-r--r-- | drivers/gpu/nvgpu/os/linux/ioctl_dbg.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c b/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c index 9ea681b1..1eace94b 100644 --- a/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c +++ b/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c | |||
@@ -869,6 +869,9 @@ static int nvgpu_ioctl_channel_reg_ops(struct dbg_session_gk20a *dbg_s, | |||
869 | struct gk20a *g = dbg_s->g; | 869 | struct gk20a *g = dbg_s->g; |
870 | struct channel_gk20a *ch; | 870 | struct channel_gk20a *ch; |
871 | 871 | ||
872 | bool is_current_ctx; | ||
873 | |||
874 | |||
872 | nvgpu_log_fn(g, "%d ops, max fragment %d", args->num_ops, g->dbg_regops_tmp_buf_ops); | 875 | nvgpu_log_fn(g, "%d ops, max fragment %d", args->num_ops, g->dbg_regops_tmp_buf_ops); |
873 | 876 | ||
874 | if (args->num_ops > NVGPU_IOCTL_DBG_REG_OPS_LIMIT) { | 877 | if (args->num_ops > NVGPU_IOCTL_DBG_REG_OPS_LIMIT) { |
@@ -954,11 +957,15 @@ static int nvgpu_ioctl_channel_reg_ops(struct dbg_session_gk20a *dbg_s, | |||
954 | break; | 957 | break; |
955 | 958 | ||
956 | err = g->ops.regops.exec_regops( | 959 | err = g->ops.regops.exec_regops( |
957 | dbg_s, g->dbg_regops_tmp_buf, num_ops); | 960 | dbg_s, g->dbg_regops_tmp_buf, num_ops, &is_current_ctx); |
958 | 961 | ||
959 | if (err) { | 962 | if (err) { |
960 | break; | 963 | break; |
961 | } | 964 | } |
965 | |||
966 | if (ops_offset == 0) { | ||
967 | args->gr_ctx_resident = is_current_ctx; | ||
968 | } | ||
962 | 969 | ||
963 | err = nvgpu_get_regops_data_linux(g->dbg_regops_tmp_buf, | 970 | err = nvgpu_get_regops_data_linux(g->dbg_regops_tmp_buf, |
964 | linux_fragment, num_ops); | 971 | linux_fragment, num_ops); |