On Sun, Jan 4, 2015 at 2:53 PM, Oded Gabbay <oded.gabbay@xxxxxxx> wrote: > From: Ben Goz <ben.goz@xxxxxxx> > > This patch fixes a bug in DQM, where the MQD of a newly created compute queue > is not loaded to an HQD slot. As a result, the CP never reads packets from this > queue. > > This bug happens only in non-HWS (hardware scheduling) mode. In HWS mode, the > CP is responsible of loading MQDs to HQDs slots. > > Signed-off-by: Ben Goz <ben.goz@xxxxxxx> > Reviewed-by: Oded Gabbay <oded.gabbay@xxxxxxx> Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c > index f44d673..3b08ed6 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c > @@ -272,6 +272,18 @@ static int create_compute_queue_nocpsch(struct device_queue_manager *dqm, > return retval; > } > > + pr_debug("kfd: loading mqd to hqd on pipe (%d) queue (%d)\n", > + q->pipe, > + q->queue); > + > + retval = mqd->load_mqd(mqd, q->mqd, q->pipe, > + q->queue, q->properties.write_ptr); > + if (retval != 0) { > + deallocate_hqd(dqm, q); > + mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj); > + return retval; > + } > + > return 0; > } > > -- > 2.1.0 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel