Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/msm: Small submit cleanup

Move more initialization into submit_create().

Signed-off-by: Rob Clark <robdclark@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/496120/
Link: https://lore.kernel.org/r/20220802155152.1727594-3-robdclark@gmail.com

+9 -11
+9 -11
drivers/gpu/drm/msm/msm_gem_submit.c
··· 26 26 struct msm_gpu_submitqueue *queue, uint32_t nr_bos, 27 27 uint32_t nr_cmds) 28 28 { 29 + static atomic_t ident = ATOMIC_INIT(0); 29 30 struct msm_gem_submit *submit; 30 31 uint64_t sz; 31 32 int ret; ··· 53 52 submit->gpu = gpu; 54 53 submit->cmd = (void *)&submit->bos[nr_bos]; 55 54 submit->queue = queue; 55 + submit->pid = get_pid(task_pid(current)); 56 56 submit->ring = gpu->rb[queue->ring_nr]; 57 57 submit->fault_dumped = false; 58 + 59 + /* Get a unique identifier for the submission for logging purposes */ 60 + submit->ident = atomic_inc_return(&ident) - 1; 58 61 59 62 INIT_LIST_HEAD(&submit->node); 60 63 ··· 723 718 int msm_ioctl_gem_submit(struct drm_device *dev, void *data, 724 719 struct drm_file *file) 725 720 { 726 - static atomic_t ident = ATOMIC_INIT(0); 727 721 struct msm_drm_private *priv = dev->dev_private; 728 722 struct drm_msm_gem_submit *args = data; 729 723 struct msm_file_private *ctx = file->driver_priv; ··· 733 729 struct msm_submit_post_dep *post_deps = NULL; 734 730 struct drm_syncobj **syncobjs_to_reset = NULL; 735 731 int out_fence_fd = -1; 736 - struct pid *pid = get_pid(task_pid(current)); 737 732 bool has_ww_ticket = false; 738 733 unsigned i; 739 - int ret, submitid; 734 + int ret; 740 735 741 736 if (!gpu) 742 737 return -ENXIO; ··· 767 764 if (!queue) 768 765 return -ENOENT; 769 766 770 - /* Get a unique identifier for the submission for logging purposes */ 771 - submitid = atomic_inc_return(&ident) - 1; 772 - 773 767 ring = gpu->rb[queue->ring_nr]; 774 - trace_msm_gpu_submit(pid_nr(pid), ring->id, submitid, 775 - args->nr_bos, args->nr_cmds); 776 768 777 769 if (args->flags & MSM_SUBMIT_FENCE_FD_OUT) { 778 770 out_fence_fd = get_unused_fd_flags(O_CLOEXEC); ··· 781 783 if (IS_ERR(submit)) 782 784 return PTR_ERR(submit); 783 785 786 + trace_msm_gpu_submit(pid_nr(submit->pid), ring->id, submit->ident, 787 + args->nr_bos, args->nr_cmds); 788 + 784 789 ret = mutex_lock_interruptible(&queue->lock); 785 790 if (ret) 786 791 goto out_post_unlock; 787 - 788 - submit->pid = pid; 789 - submit->ident = submitid; 790 792 791 793 if (args->flags & MSM_SUBMIT_SUDO) 792 794 submit->in_rb = true;