flr_work
struct cptpf_flr_work *flr_work;
struct cptpf_flr_work *flr_work;
flr_work = container_of(work, struct cptpf_flr_work, work);
pf = flr_work->pf;
vf = flr_work - pf->flr_work;
queue_work(cptpf->flr_wq, &cptpf->flr_work[dev].work);
kfree(pf->flr_work);
cptpf->flr_work = kzalloc_objs(struct cptpf_flr_work, num_vfs);
if (!cptpf->flr_work)
cptpf->flr_work[vf].pf = cptpf;
INIT_WORK(&cptpf->flr_work[vf].work, cptpf_flr_wq_handler);
cancel_work(&adev->virt.flr_work);
&adev->virt.flr_work),
struct work_struct flr_work;
struct amdgpu_virt *virt = container_of(work, struct amdgpu_virt, flr_work);
&adev->virt.flr_work),
&adev->virt.flr_work),
INIT_WORK(&adev->virt.flr_work, xgpu_ai_mailbox_flr_work);
struct amdgpu_virt *virt = container_of(work, struct amdgpu_virt, flr_work);
&adev->virt.flr_work),
&adev->virt.flr_work),
INIT_WORK(&adev->virt.flr_work, xgpu_nv_mailbox_flr_work);
struct amdgpu_virt *virt = container_of(work, struct amdgpu_virt, flr_work);
&adev->virt.flr_work),
INIT_WORK(&adev->virt.flr_work, xgpu_vi_mailbox_flr_work);
struct flr_work *flr_wrk;
struct flr_work *flrwork = container_of(work, struct flr_work, work);
sizeof(struct flr_work), GFP_KERNEL);
struct work_struct flr_work;
vf = container_of(work, struct qlcnic_vf_info, flr_work);
INIT_WORK(&vf->flr_work, func);
queue_work(sriov->bc.bc_flr_wq, &vf->flr_work);
cancel_work_sync(&vf->flr_work);
cancel_work_sync(&sriov->vf_info[i].flr_work);