mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-23 05:56:14 -04:00
drm/amdkfd: CRIU checkpoint and restore queue mqds
Checkpoint contents of queue MQD's on CRIU dump and restore them during CRIU restore. Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: David Yat Sin <david.yatsin@amd.com> Signed-off-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
5bb6a8fa75
commit
42c6c48214
@@ -83,13 +83,17 @@ struct device_process_node {
|
||||
* control stack, if kept in the MQD, to the given userspace address.
|
||||
*
|
||||
* @reset_queues: reset queues which consume RAS poison
|
||||
* @get_queue_checkpoint_info: Retrieves queue size information for CRIU checkpoint.
|
||||
*
|
||||
* @checkpoint_mqd: checkpoint queue MQD contents for CRIU.
|
||||
*/
|
||||
|
||||
struct device_queue_manager_ops {
|
||||
int (*create_queue)(struct device_queue_manager *dqm,
|
||||
struct queue *q,
|
||||
struct qcm_process_device *qpd,
|
||||
const struct kfd_criu_queue_priv_data *qd);
|
||||
const struct kfd_criu_queue_priv_data *qd,
|
||||
const void *restore_mqd);
|
||||
|
||||
int (*destroy_queue)(struct device_queue_manager *dqm,
|
||||
struct qcm_process_device *qpd,
|
||||
@@ -140,6 +144,12 @@ struct device_queue_manager_ops {
|
||||
|
||||
int (*reset_queues)(struct device_queue_manager *dqm,
|
||||
uint16_t pasid);
|
||||
void (*get_queue_checkpoint_info)(struct device_queue_manager *dqm,
|
||||
const struct queue *q, u32 *mqd_size);
|
||||
|
||||
int (*checkpoint_mqd)(struct device_queue_manager *dqm,
|
||||
const struct queue *q,
|
||||
void *mqd);
|
||||
};
|
||||
|
||||
struct device_queue_manager_asic_ops {
|
||||
|
||||
Reference in New Issue
Block a user