> +static void nitrox_dump_zip_instr(struct nitrox_zip_instr *instr,
> +                               union nitrox_zip_zptr *hptr_arr,
> +                               union nitrox_zip_zptr *iptr_arr,
> +                               union nitrox_zip_zptr *optr_arr)
> +{
> +     uint64_t value;
> +     int i = 0;
> +
> +     if (!rte_log_can_log(nitrox_logtype, RTE_LOG_DEBUG))
> +             return;
> +
> +     fprintf(stderr, "\nZIP instruction..(%p)\n", instr);
> +     fprintf(stderr, "\tWORD0 = 0x%016"PRIx64"\n", instr->w0.u64);
> +     fprintf(stderr, "\t\tTOL        = %d\n", instr->w0.tol);
> +     fprintf(stderr, "\t\tEXNUM      = %d\n", instr->w0.exn);
> +     fprintf(stderr, "\t\tEXBITS     = %x\n", instr->w0.exbits);
> +     fprintf(stderr, "\t\tCA         = %d\n", instr->w0.ca);
> +     fprintf(stderr, "\t\tSF         = %d\n", instr->w0.sf);
> +     fprintf(stderr, "\t\tSS         = %d\n", instr->w0.ss);
> +     fprintf(stderr, "\t\tCC         = %d\n", instr->w0.cc);
> +     fprintf(stderr, "\t\tEF         = %d\n", instr->w0.ef);
> +     fprintf(stderr, "\t\tBF         = %d\n", instr->w0.bf);
> +     fprintf(stderr, "\t\tCO         = %d\n", instr->w0.co);
> +     fprintf(stderr, "\t\tDS         = %d\n", instr->w0.ds);
> +     fprintf(stderr, "\t\tDG         = %d\n", instr->w0.dg);
> +     fprintf(stderr, "\t\tHG         = %d\n", instr->w0.hg);
> +     fprintf(stderr, "\n");
> +
> +     fprintf(stderr, "\tWORD1 = 0x%016"PRIx64"\n", instr->w1.u64);
> +     fprintf(stderr, "\t\tHL         = %d\n", instr->w1.hl);
> +     fprintf(stderr, "\t\tADLERCRC32 = 0x%08x\n", instr->w1.adlercrc32);
> +     fprintf(stderr, "\n");
> +
> +     value = instr->w2.cptr;
> +     fprintf(stderr, "\tWORD2 = 0x%016"PRIx64"\n", instr->w2.u64);
> +     fprintf(stderr, "\t\tCPTR = 0x%11"PRIx64"\n", value);
> +     fprintf(stderr, "\n");
> +
> +     value = instr->w3.hptr;
> +     fprintf(stderr, "\tWORD3 = 0x%016"PRIx64"\n", instr->w3.u64);
> +     fprintf(stderr, "\t\tHLEN       = %d\n", instr->w3.hlen);
> +     fprintf(stderr, "\t\tHPTR = 0x%11"PRIx64"\n", value);
> +
> +     if (instr->w0.hg && hptr_arr) {
> +             for (i = 0; i < instr->w3.hlen; i++) {
> +                     value = hptr_arr[i].s.addr;
> +                     fprintf(stderr, "\t\t\tZPTR[%d] : Length = %d Addr =
> 0x%11"PRIx64"\n",
> +                                  i, hptr_arr[i].s.length, value);
> +             }
> +     }
> +
> +     fprintf(stderr, "\n");
> +
> +     value = instr->w4.iptr;
> +     fprintf(stderr, "\tWORD4 = 0x%016"PRIx64"\n", instr->w4.u64);
> +     fprintf(stderr, "\t\tILEN       = %d\n", instr->w4.ilen);
> +     fprintf(stderr, "\t\tIPTR       = 0x%11"PRIx64"\n", value);
> +     if (instr->w0.dg && iptr_arr) {
> +             for (i = 0; i < instr->w4.ilen; i++) {
> +                     value = iptr_arr[i].s.addr;
> +                     fprintf(stderr, "\t\t\tZPTR[%d] : Length = %d Addr =
> 0x%11"PRIx64"\n",
> +                                  i, iptr_arr[i].s.length, value);
> +             }
> +     }
> +
> +     fprintf(stderr, "\n");
> +
> +     value = instr->w5.optr;
> +     fprintf(stderr, "\tWORD5 = 0x%016"PRIx64"\n", instr->w5.u64);
> +     fprintf(stderr, "\t\t OLEN = %d\n", instr->w5.olen);
> +     fprintf(stderr, "\t\t OPTR = 0x%11"PRIx64"\n", value);
> +     if (instr->w0.ds && optr_arr) {
> +             for (i = 0; i < instr->w5.olen; i++) {
> +                     value = optr_arr[i].s.addr;
> +                     fprintf(stderr, "\t\t\tZPTR[%d] : Length = %d Addr =
> 0x%11"PRIx64"\n",
> +                                  i, optr_arr[i].s.length, value);
> +             }
> +     }
> +
> +     fprintf(stderr, "\n");
> +
> +     value = instr->w6.rptr;
> +     fprintf(stderr, "\tWORD6 = 0x%016"PRIx64"\n", instr->w6.u64);
> +     fprintf(stderr, "\t\tRPTR = 0x%11"PRIx64"\n", value);
> +     fprintf(stderr, "\n");
> +
> +     fprintf(stderr, "\tWORD7 = 0x%016"PRIx64"\n", instr->w7.u64);
> +     fprintf(stderr, "\t\tGRP        = %x\n", instr->w7.grp);
> +     fprintf(stderr, "\t\tADDR_MSB   = 0x%5x\n", instr->w7.addr_msb);
> +     fprintf(stderr, "\n");
> +}
> +
> +static void nitrox_dump_zip_result(struct nitrox_zip_instr *instr,
> +                                struct nitrox_zip_result *result)
> +{
> +     if (!rte_log_can_log(nitrox_logtype, RTE_LOG_DEBUG))
> +             return;
> +
> +     fprintf(stderr, "ZIP result..(instr %p)\n", instr);
> +     fprintf(stderr, "\tWORD0 = 0x%016"PRIx64"\n", result->w0.u64);
> +     fprintf(stderr, "\t\tCRC32          = 0x%8x\n", result->w0.crc32);
> +     fprintf(stderr, "\t\tADLER32        = 0x%8x\n", result->w0.adler32);
> +     fprintf(stderr, "\n");
> +
> +     fprintf(stderr, "\tWORD1 = 0x%016"PRIx64"\n", result->w1.u64);
> +     fprintf(stderr, "\t\tTBYTESWRITTEN  = %u\n", result->w1.tbyteswritten);
> +     fprintf(stderr, "\t\tTBYTESREAD     = %u\n", result->w1.tbytesread);
> +     fprintf(stderr, "\n");
> +
> +     fprintf(stderr, "\tWORD2 = 0x%016"PRIx64"\n", result->w2.u64);
> +     fprintf(stderr, "\t\tTBITS          = %u\n", result->w2.tbits);
> +     fprintf(stderr, "\t\tEXN            = %d\n", result->w2.exn);
> +     fprintf(stderr, "\t\tEBITS          = %x\n", result->w2.exbits);
> +     fprintf(stderr, "\t\tEF             = %d\n", result->w2.ef);
> +     fprintf(stderr, "\t\tCOMPCODE       = 0x%2x\n", result->w2.compcode);
> +     fprintf(stderr, "\n");
> +}
Writing to stdout or stderr is prohibited now. Please use DPDK logging.

Reply via email to