diff options
author | Debarshi Dutta <ddutta@nvidia.com> | 2017-10-10 01:15:54 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-10-16 16:35:04 -0400 |
commit | 61b263d83222cd5d2ff3d2d5d699b07ebdf44288 (patch) | |
tree | 07ef35fb427dc2f93741ed9193673b6da2872bb7 /drivers/gpu/nvgpu/gk20a/sched_gk20a.c | |
parent | 30b9cbe35a2a0adc4e3a65b033dc0f61046783ea (diff) |
gpu: nvgpu: replace wait_queue_head_t with nvgpu_cond
Replace existing usages of wait_queue_head_t with struct nvgpu_cond and
using the corresponding APIs in order to reduce Linux dependencies in NVGPU.
JIRA NVGPU-205
Change-Id: I85850369c3c47d3e1704e4171b1d172361842423
Signed-off-by: Debarshi Dutta <ddutta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1575778
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/sched_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/sched_gk20a.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c index d635b43b..a77536af 100644 --- a/drivers/gpu/nvgpu/gk20a/sched_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/sched_gk20a.c | |||
@@ -58,8 +58,8 @@ ssize_t gk20a_sched_dev_read(struct file *filp, char __user *buf, | |||
58 | nvgpu_mutex_release(&sched->status_lock); | 58 | nvgpu_mutex_release(&sched->status_lock); |
59 | if (filp->f_flags & O_NONBLOCK) | 59 | if (filp->f_flags & O_NONBLOCK) |
60 | return -EAGAIN; | 60 | return -EAGAIN; |
61 | err = wait_event_interruptible(sched->readout_wq, | 61 | err = NVGPU_COND_WAIT_INTERRUPTIBLE(&sched->readout_wq, |
62 | sched->status); | 62 | sched->status, 0); |
63 | if (err) | 63 | if (err) |
64 | return err; | 64 | return err; |
65 | nvgpu_mutex_acquire(&sched->status_lock); | 65 | nvgpu_mutex_acquire(&sched->status_lock); |
@@ -88,7 +88,7 @@ unsigned int gk20a_sched_dev_poll(struct file *filp, poll_table *wait) | |||
88 | gk20a_dbg(gpu_dbg_fn | gpu_dbg_sched, ""); | 88 | gk20a_dbg(gpu_dbg_fn | gpu_dbg_sched, ""); |
89 | 89 | ||
90 | nvgpu_mutex_acquire(&sched->status_lock); | 90 | nvgpu_mutex_acquire(&sched->status_lock); |
91 | poll_wait(filp, &sched->readout_wq, wait); | 91 | poll_wait(filp, &sched->readout_wq.wq, wait); |
92 | if (sched->status) | 92 | if (sched->status) |
93 | mask |= POLLIN | POLLRDNORM; | 93 | mask |= POLLIN | POLLRDNORM; |
94 | nvgpu_mutex_release(&sched->status_lock); | 94 | nvgpu_mutex_release(&sched->status_lock); |
@@ -552,7 +552,7 @@ void gk20a_sched_ctrl_tsg_added(struct gk20a *g, struct tsg_gk20a *tsg) | |||
552 | NVGPU_SCHED_SET(tsg->tsgid, sched->recent_tsg_bitmap); | 552 | NVGPU_SCHED_SET(tsg->tsgid, sched->recent_tsg_bitmap); |
553 | sched->status |= NVGPU_SCHED_STATUS_TSG_OPEN; | 553 | sched->status |= NVGPU_SCHED_STATUS_TSG_OPEN; |
554 | nvgpu_mutex_release(&sched->status_lock); | 554 | nvgpu_mutex_release(&sched->status_lock); |
555 | wake_up_interruptible(&sched->readout_wq); | 555 | nvgpu_cond_signal_interruptible(&sched->readout_wq); |
556 | } | 556 | } |
557 | 557 | ||
558 | void gk20a_sched_ctrl_tsg_removed(struct gk20a *g, struct tsg_gk20a *tsg) | 558 | void gk20a_sched_ctrl_tsg_removed(struct gk20a *g, struct tsg_gk20a *tsg) |
@@ -609,7 +609,7 @@ int gk20a_sched_ctrl_init(struct gk20a *g) | |||
609 | goto free_recent; | 609 | goto free_recent; |
610 | } | 610 | } |
611 | 611 | ||
612 | init_waitqueue_head(&sched->readout_wq); | 612 | nvgpu_cond_init(&sched->readout_wq); |
613 | 613 | ||
614 | err = nvgpu_mutex_init(&sched->status_lock); | 614 | err = nvgpu_mutex_init(&sched->status_lock); |
615 | if (err) | 615 | if (err) |