dev-amdgpu: Remove duplicate writes to PM4 queue pointers
During checkpoint restoration, the unserialize() function writes rptr, wptr, and indirect buffer rptr, wptr to PM4 queue's rptr, wptr fields. This commit updates this to write only the relevant pointers to the queue structure. If indirect buffers are used, then it writes only the indirect buffer pointers to the queue. If they are not used, then it writes rptr, wptr values to the queue. Change-Id: Iedb25a726112e1af99cc1e7bc012de51c4ebfd45
This commit is contained in:
@@ -1190,15 +1190,16 @@ PM4PacketProcessor::unserialize(CheckpointIn &cp)
|
||||
memset(pkt, 0, sizeof(PM4MapQueues));
|
||||
newQueue(mqd, offset[i], pkt, id[i]);
|
||||
|
||||
queues[id[i]]->ib(false);
|
||||
queues[id[i]]->rptr(rptr[i]);
|
||||
queues[id[i]]->wptr(wptr[i]);
|
||||
queues[id[i]]->ib(true);
|
||||
queues[id[i]]->wptr(ib_wptr[i]);
|
||||
queues[id[i]]->rptr(ib_rptr[i]);
|
||||
if (ib[i]) {
|
||||
queues[id[i]]->wptr(ib_wptr[i]);
|
||||
queues[id[i]]->rptr(ib_rptr[i]);
|
||||
} else {
|
||||
queues[id[i]]->rptr(rptr[i]);
|
||||
queues[id[i]]->wptr(wptr[i]);
|
||||
}
|
||||
queues[id[i]]->ib(ib[i]);
|
||||
queues[id[i]]->offset(offset[i]);
|
||||
queues[id[i]]->processing(processing[i]);
|
||||
queues[id[i]]->ib(ib[i]);
|
||||
queues[id[i]]->setPkt(me[i], pipe[i], queue[i], privileged[i]);
|
||||
queues[id[i]]->getMQD()->hqd_active = hqd_active[i];
|
||||
queues[id[i]]->getMQD()->hqd_vmid = hqd_vmid[i];
|
||||
|
||||
Reference in New Issue
Block a user