Lines Matching refs:vmp

50 	struct lpfc_vmid *vmp;
52 hash_for_each_possible(vport->hash_table, vmp, hnode, hash) {
53 if (memcmp(&vmp->host_vmid[0], buf, 16) == 0)
54 return vmp;
63 * @vmp: Pointer to a VMID entry representing a VM sending I/O
70 struct lpfc_vmid *vmp)
72 hash_add(vport->hash_table, &vmp->hnode, hash);
104 * @vmp: Pointer to a VMID entry representing a VM sending I/O
109 struct lpfc_vmid *vmp,
115 tag->cs_ctl_vmid = vmp->un.cs_ctl_vmid;
117 tag->app_id = vmp->un.app_id;
120 vmp->io_wr_cnt++;
122 vmp->io_rd_cnt++;
125 lta = per_cpu_ptr(vmp->last_io_time, raw_smp_processor_id());
162 struct lpfc_vmid *vmp = NULL;
179 vmp = lpfc_get_vmid_from_hashtable(vport, hash, uuid);
182 if (vmp && vmp->flag & LPFC_VMID_REGISTERED) {
184 lpfc_vmid_update_entry(vport, iodir, vmp, tag);
186 } else if (vmp && (vmp->flag & LPFC_VMID_REQ_REGISTER ||
187 vmp->flag & LPFC_VMID_DE_REGISTER)) {
199 vmp = lpfc_get_vmid_from_hashtable(vport, hash, uuid);
203 if (vmp && vmp->flag & LPFC_VMID_REGISTERED) {
204 lpfc_vmid_update_entry(vport, iodir, vmp, tag);
207 } else if (vmp && vmp->flag & LPFC_VMID_REQ_REGISTER) {
215 vmp = vport->vmid + i;
216 if (vmp->flag == LPFC_VMID_SLOT_FREE)
220 vmp = NULL;
222 vmp = NULL;
225 if (!vmp) {
231 lpfc_put_vmid_in_hashtable(vport, hash, vmp);
232 vmp->vmid_len = len;
233 memcpy(vmp->host_vmid, uuid, vmp->vmid_len);
234 vmp->io_rd_cnt = 0;
235 vmp->io_wr_cnt = 0;
236 vmp->flag = LPFC_VMID_SLOT_USED;
238 vmp->delete_inactive =
243 lpfc_vmid_assign_cs_ctl(vport, vmp);
247 if (!vmp->last_io_time)
248 vmp->last_io_time = alloc_percpu_gfp(u64, GFP_ATOMIC);
249 if (!vmp->last_io_time) {
250 hash_del(&vmp->hnode);
251 vmp->flag = LPFC_VMID_SLOT_FREE;
260 rc = lpfc_vmid_uvem(vport, vmp, true);
262 rc = lpfc_vmid_cmd(vport, SLI_CTAS_RAPP_IDENT, vmp);
266 vmp->flag |= LPFC_VMID_REQ_REGISTER;
270 hash_del(&vmp->hnode);
271 vmp->flag = LPFC_VMID_SLOT_FREE;
272 free_percpu(vmp->last_io_time);
302 struct lpfc_vmid *vmp = NULL;
309 vmp = &vport->vmid[i];
310 vmp->flag = LPFC_VMID_SLOT_FREE;
311 memset(vmp->host_vmid, 0, sizeof(vmp->host_vmid));
312 vmp->io_rd_cnt = 0;
313 vmp->io_wr_cnt = 0;
315 if (vmp->last_io_time)
317 *per_cpu_ptr(vmp->last_io_time, cpu) = 0;