Lines Matching defs:vcb
122 struct vcb {
166 static void pr_dbf_vcb(const struct vcb *b)
513 static void fill_vcb_input(struct vcssb *vcssb, struct vcb *vcb, u16 index)
515 memset(vcb, 0, sizeof(*vcb));
516 vcb->vcb_hdr.vcb_input_length = get_4k_mult_vcb_size(vcssb);
517 vcb->vcb_hdr.cs_token = vcssb->cs_token;
520 vcb->vcb_hdr.first_vc_index = index;
521 vcb->vcb_hdr.last_vc_index = index;
524 static void extract_vce_from_sevcb(struct vcb *vcb, struct vce *vce)
528 extracted_vce = (struct vce *)vcb->vcb_buf;
529 memcpy(vce, vcb->vcb_buf, extracted_vce->vce_hdr.vce_length);
533 static int get_sevcb(struct vcssb *vcssb, u16 index, struct vcb *vcb)
537 fill_vcb_input(vcssb, vcb, index);
539 diag320_rc = diag320(DIAG320_CERT_BLOCK, vcb);
541 pr_dbf_vcb(vcb);
546 if (vcb->vcb_hdr.vcb_output_length == VCB_LEN_NO_CERTS) {
549 } else if (vcb->vcb_hdr.remaining_vc_count != 0) {
575 struct vcb *vcb;
580 vcb = vmalloc(get_4k_mult_vcb_size(vcssb));
581 vce = vmalloc(vcssb->max_single_vcb_length - sizeof(vcb->vcb_hdr));
582 if (!vcb || !vce)
585 rc = get_sevcb(vcssb, index, vcb);
589 extract_vce_from_sevcb(vcb, vce);
601 vfree(vcb);