include/hw/ipmi/ipmi.h | 36 ++ include/hw/ppc/ffs.h | 150 +++++ include/hw/ppc/pnv.h | 4 + include/hw/ppc/pnv_pnor.h | 36 ++ libxz/xz.h | 304 ++++++++++ libxz/xz_config.h | 124 ++++ libxz/xz_lzma2.h | 204 +++++++ libxz/xz_private.h | 156 +++++ libxz/xz_stream.h | 62 ++ hw/ipmi/ipmi_bmc_sim.c | 41 +- hw/ppc/pnv.c | 48 +- hw/ppc/pnv_bmc.c | 101 ++++ hw/ppc/pnv_lpc.c | 13 + hw/ppc/pnv_pnor.c | 291 +++++++++ libxz/xz_crc32.c | 59 ++ libxz/xz_dec_lzma2.c | 1171 +++++++++++++++++++++++++++++++++++++ libxz/xz_dec_stream.c | 847 +++++++++++++++++++++++++++ hw/ppc/Makefile.objs | 4 +- libxz/Makefile.objs | 1 + target/ppc/Makefile.objs | 1 + 20 files changed, 3606 insertions(+), 47 deletions(-) create mode 100644 include/hw/ppc/ffs.h create mode 100644 include/hw/ppc/pnv_pnor.h create mode 100644 libxz/xz.h create mode 100644 libxz/xz_config.h create mode 100644 libxz/xz_lzma2.h create mode 100644 libxz/xz_private.h create mode 100644 libxz/xz_stream.h create mode 100644 hw/ppc/pnv_pnor.c create mode 100644 libxz/xz_crc32.c create mode 100644 libxz/xz_dec_lzma2.c create mode 100644 libxz/xz_dec_stream.c create mode 100644 libxz/Makefile.objs
Hello, On a POWERPC PowerNV system, the host firmware is stored in a PNOR flash chip which contents is mapped on the LPC bus. This model adds a simple dummy device to map the contents of a block device in the host address space and activates HIOMAP support on the QEMU PowerNV machine to let the host negotiate with the BMC the access to the mapping. The command options to activate these models in QEMU: -device ipmi-bmc-sim,id=bmc0 -device isa-ipmi-bt,bmc=bmc0,irq=10 \ -drive file=./witherspoon.pnor,format=raw,if=mtd The last two patches add the logic to load in the machine memory the PAYLOAD partition (skiboot) from an OpenPOWER firmware file. These should be considered as RFCs as the firmware file could have a different format. Something to discuss. Thanks, C. Cédric Le Goater (5): ppc/pnv: Add a PNOR model ipmi: Add support to customize OEM functions ppc/pnv: Add HIOMAP commands libxz: Add XZ Embedded library for PPC ppc/pnv: Read the PNOR partition table include/hw/ipmi/ipmi.h | 36 ++ include/hw/ppc/ffs.h | 150 +++++ include/hw/ppc/pnv.h | 4 + include/hw/ppc/pnv_pnor.h | 36 ++ libxz/xz.h | 304 ++++++++++ libxz/xz_config.h | 124 ++++ libxz/xz_lzma2.h | 204 +++++++ libxz/xz_private.h | 156 +++++ libxz/xz_stream.h | 62 ++ hw/ipmi/ipmi_bmc_sim.c | 41 +- hw/ppc/pnv.c | 48 +- hw/ppc/pnv_bmc.c | 101 ++++ hw/ppc/pnv_lpc.c | 13 + hw/ppc/pnv_pnor.c | 291 +++++++++ libxz/xz_crc32.c | 59 ++ libxz/xz_dec_lzma2.c | 1171 +++++++++++++++++++++++++++++++++++++ libxz/xz_dec_stream.c | 847 +++++++++++++++++++++++++++ hw/ppc/Makefile.objs | 4 +- libxz/Makefile.objs | 1 + target/ppc/Makefile.objs | 1 + 20 files changed, 3606 insertions(+), 47 deletions(-) create mode 100644 include/hw/ppc/ffs.h create mode 100644 include/hw/ppc/pnv_pnor.h create mode 100644 libxz/xz.h create mode 100644 libxz/xz_config.h create mode 100644 libxz/xz_lzma2.h create mode 100644 libxz/xz_private.h create mode 100644 libxz/xz_stream.h create mode 100644 hw/ppc/pnv_pnor.c create mode 100644 libxz/xz_crc32.c create mode 100644 libxz/xz_dec_lzma2.c create mode 100644 libxz/xz_dec_stream.c create mode 100644 libxz/Makefile.objs -- 2.21.0
Patchew URL: https://patchew.org/QEMU/20191021131215.3693-1-clg@kaod.org/ Hi, This series seems to have some coding style problems. See output below for more information: Subject: [PATCH 0/5] ppc/pnv: Add PNOR support Type: series Message-id: 20191021131215.3693-1-clg@kaod.org === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu - [tag update] patchew/20191019234715.25750-1-f4bug@amsat.org -> patchew/20191019234715.25750-1-f4bug@amsat.org - [tag update] patchew/20191020225650.3671-1-philmd@redhat.com -> patchew/20191020225650.3671-1-philmd@redhat.com - [tag update] patchew/20191021190653.9511-1-philmd@redhat.com -> patchew/20191021190653.9511-1-philmd@redhat.com Switched to a new branch 'test' 7419b33 ppc/pnv: Read the PNOR partition table 94fb18c libxz: Add XZ Embedded library for PPC b618eb6 ppc/pnv: Add HIOMAP commands 3ee95f6 ipmi: Add support to customize OEM functions bb5d940 ppc/pnv: Add a PNOR model === OUTPUT BEGIN === 1/5 Checking commit bb5d940733f4 (ppc/pnv: Add a PNOR model) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #70: new file mode 100644 total: 0 errors, 1 warnings, 217 lines checked Patch 1/5 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 2/5 Checking commit 3ee95f66e7df (ipmi: Add support to customize OEM functions) 3/5 Checking commit b618eb627b5d (ppc/pnv: Add HIOMAP commands) 4/5 Checking commit 94fb18ca0ddf (libxz: Add XZ Embedded library for PPC) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #13: new file mode 100644 WARNING: architecture specific defines should be avoided #38: FILE: libxz/xz.h:14: +#ifdef __KERNEL__ WARNING: architecture specific defines should be avoided #46: FILE: libxz/xz.h:22: +#ifdef __cplusplus ERROR: storage class should be at the beginning of the declaration #52: FILE: libxz/xz.h:28: + #define XZ_EXTERN extern WARNING: architecture specific defines should be avoided #271: FILE: libxz/xz.h:247: + #ifdef __KERNEL__ WARNING: architecture specific defines should be avoided #287: FILE: libxz/xz.h:263: + #ifdef __KERNEL__ WARNING: architecture specific defines should be avoided #324: FILE: libxz/xz.h:300: +#ifdef __cplusplus WARNING: architecture specific defines should be avoided #399: FILE: libxz/xz_config.h:65: +#ifndef __always_inline WARNING: architecture specific defines should be avoided #400: FILE: libxz/xz_config.h:66: + #ifdef __GNUC__ ERROR: code indent should never use tabs #489: FILE: libxz/xz_crc32.c:25: +#^Idefine STATIC_RW_DATA static$ ERROR: storage class should be at the beginning of the declaration #489: FILE: libxz/xz_crc32.c:25: +# define STATIC_RW_DATA static ERROR: code indent should never use tabs #496: FILE: libxz/xz_crc32.c:32: +^Iconst uint32_t poly = 0xEDB88320;$ ERROR: code indent should never use tabs #498: FILE: libxz/xz_crc32.c:34: +^Iuint32_t i;$ ERROR: code indent should never use tabs #499: FILE: libxz/xz_crc32.c:35: +^Iuint32_t j;$ ERROR: code indent should never use tabs #500: FILE: libxz/xz_crc32.c:36: +^Iuint32_t r;$ ERROR: code indent should never use tabs #502: FILE: libxz/xz_crc32.c:38: +^Ifor (i = 0; i < 256; ++i) {$ ERROR: code indent should never use tabs #503: FILE: libxz/xz_crc32.c:39: +^I^Ir = i;$ ERROR: code indent should never use tabs #504: FILE: libxz/xz_crc32.c:40: +^I^Ifor (j = 0; j < 8; ++j)$ ERROR: braces {} are necessary for all arms of this statement #504: FILE: libxz/xz_crc32.c:40: + for (j = 0; j < 8; ++j) [...] ERROR: code indent should never use tabs #505: FILE: libxz/xz_crc32.c:41: +^I^I^Ir = (r >> 1) ^ (poly & ~((r & 1) - 1));$ ERROR: code indent should never use tabs #507: FILE: libxz/xz_crc32.c:43: +^I^Ixz_crc32_table[i] = r;$ ERROR: code indent should never use tabs #508: FILE: libxz/xz_crc32.c:44: +^I}$ ERROR: code indent should never use tabs #510: FILE: libxz/xz_crc32.c:46: +^Ireturn;$ ERROR: code indent should never use tabs #515: FILE: libxz/xz_crc32.c:51: +^Icrc = ~crc;$ ERROR: code indent should never use tabs #517: FILE: libxz/xz_crc32.c:53: +^Iwhile (size != 0) {$ ERROR: code indent should never use tabs #518: FILE: libxz/xz_crc32.c:54: +^I^Icrc = xz_crc32_table[*buf++ ^ (crc & 0xFF)] ^ (crc >> 8);$ ERROR: code indent should never use tabs #519: FILE: libxz/xz_crc32.c:55: +^I^I--size;$ ERROR: code indent should never use tabs #520: FILE: libxz/xz_crc32.c:56: +^I}$ ERROR: code indent should never use tabs #522: FILE: libxz/xz_crc32.c:58: +^Ireturn ~crc;$ WARNING: Block comments use a leading /* on a separate line #807: FILE: libxz/xz_dec_lzma2.c:278: +/************** ERROR: braces {} are necessary for all arms of this statement #831: FILE: libxz/xz_dec_lzma2.c:302: + if (dict->end - dict->pos <= out_max) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #853: FILE: libxz/xz_dec_lzma2.c:324: + if (dist >= dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #866: FILE: libxz/xz_dec_lzma2.c:337: + if (dict->full < dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #880: FILE: libxz/xz_dec_lzma2.c:351: + if (dist >= dict->full || dist >= dict->size) [...] ERROR: braces {} are necessary for all arms of this statement #887: FILE: libxz/xz_dec_lzma2.c:358: + if (dist >= dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #892: FILE: libxz/xz_dec_lzma2.c:363: + if (back == dict->end) [...] ERROR: braces {} are necessary for all arms of this statement #896: FILE: libxz/xz_dec_lzma2.c:367: + if (dict->full < dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #912: FILE: libxz/xz_dec_lzma2.c:383: + if (copy_size > dict->end - dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #914: FILE: libxz/xz_dec_lzma2.c:385: + if (copy_size > *left) [...] ERROR: braces {} are necessary for all arms of this statement #922: FILE: libxz/xz_dec_lzma2.c:393: + if (dict->full < dict->pos) [...] ERROR: braces {} are necessary for all arms of this statement #926: FILE: libxz/xz_dec_lzma2.c:397: + if (dict->pos == dict->end) [...] ERROR: braces {} are necessary for all arms of this statement #950: FILE: libxz/xz_dec_lzma2.c:421: + if (dict->pos == dict->end) [...] WARNING: Block comments use a leading /* on a separate line #962: FILE: libxz/xz_dec_lzma2.c:433: +/***************** ERROR: braces {} are necessary for all arms of this statement #981: FILE: libxz/xz_dec_lzma2.c:452: + if (b->in_pos == b->in_size) [...] ERROR: braces {} are necessary for all arms of this statement #1054: FILE: libxz/xz_dec_lzma2.c:525: + if (rc_bit(rc, &probs[symbol])) [...] + else [...] WARNING: Block comments use a leading /* on a separate line #1096: FILE: libxz/xz_dec_lzma2.c:567: +/******** ERROR: braces {} are necessary for all arms of this statement #1259: FILE: libxz/xz_dec_lzma2.c:730: + if (dict_has_space(&s->dict) && s->lzma.len > 0) [...] ERROR: braces {} are necessary for all arms of this statement #1273: FILE: libxz/xz_dec_lzma2.c:744: + if (rc_bit(&s->rc, &s->lzma.is_rep[s->lzma.state])) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #1278: FILE: libxz/xz_dec_lzma2.c:749: + if (!dict_repeat(&s->dict, &s->lzma.len, s->lzma.rep0)) [...] ERROR: braces {} are necessary for all arms of this statement #1317: FILE: libxz/xz_dec_lzma2.c:788: + for (i = 0; i < PROBS_TOTAL; ++i) [...] ERROR: braces {} are necessary for all arms of this statement #1330: FILE: libxz/xz_dec_lzma2.c:801: + if (props > (4 * 5 + 4) * 9 + 8) [...] ERROR: braces {} are necessary for all arms of this statement #1349: FILE: libxz/xz_dec_lzma2.c:820: + if (s->lzma.lc + s->lzma.literal_pos_mask > 4) [...] WARNING: Block comments use a leading /* on a separate line #1359: FILE: libxz/xz_dec_lzma2.c:830: +/********* ERROR: braces {} are necessary for all arms of this statement #1383: FILE: libxz/xz_dec_lzma2.c:854: + if (tmp > s->lzma2.compressed - s->temp.size) [...] ERROR: braces {} are necessary for all arms of this statement #1385: FILE: libxz/xz_dec_lzma2.c:856: + if (tmp > in_avail) [...] ERROR: braces {} are necessary for all arms of this statement #1406: FILE: libxz/xz_dec_lzma2.c:877: + if (!lzma_main(s) || s->rc.in_pos > s->temp.size + tmp) [...] ERROR: braces {} are necessary for all arms of this statement #1427: FILE: libxz/xz_dec_lzma2.c:898: + if (in_avail >= s->lzma2.compressed + LZMA_IN_REQUIRED) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #1432: FILE: libxz/xz_dec_lzma2.c:903: + if (!lzma_main(s)) [...] ERROR: braces {} are necessary for all arms of this statement #1436: FILE: libxz/xz_dec_lzma2.c:907: + if (in_avail > s->lzma2.compressed) [...] ERROR: braces {} are necessary for all arms of this statement #1445: FILE: libxz/xz_dec_lzma2.c:916: + if (in_avail > s->lzma2.compressed) [...] ERROR: braces {} are necessary for all arms of this statement #1501: FILE: libxz/xz_dec_lzma2.c:972: + if (tmp == 0x00) [...] ERROR: braces {} are necessary for all arms of this statement #1532: FILE: libxz/xz_dec_lzma2.c:1003: + if (tmp >= 0xA0) [...] ERROR: braces {} are necessary for all arms of this statement #1536: FILE: libxz/xz_dec_lzma2.c:1007: + if (tmp > 0x02) [...] ERROR: braces {} are necessary for all arms of this statement #1570: FILE: libxz/xz_dec_lzma2.c:1041: + if (!lzma_props(s, b->in[b->in_pos++])) [...] ERROR: braces {} are necessary for all arms of this statement #1576: FILE: libxz/xz_dec_lzma2.c:1047: + if (s->lzma2.compressed < RC_INIT_BYTES) [...] ERROR: braces {} are necessary for all arms of this statement #1579: FILE: libxz/xz_dec_lzma2.c:1050: + if (!rc_read_init(&s->rc, b)) [...] ERROR: braces {} are necessary for all arms of this statement #1598: FILE: libxz/xz_dec_lzma2.c:1069: + if (!lzma2_lzma(s, b)) [...] ERROR: braces {} are necessary for all arms of this statement #1622: FILE: libxz/xz_dec_lzma2.c:1093: + if (s->lzma2.compressed > 0) [...] ERROR: braces {} are necessary for all arms of this statement #1637: FILE: libxz/xz_dec_lzma2.c:1108: + if (s == NULL) [...] ERROR: braces {} are necessary for all arms of this statement #1660: FILE: libxz/xz_dec_lzma2.c:1131: + if (props > 39) [...] ERROR: braces {} are necessary for all arms of this statement #1667: FILE: libxz/xz_dec_lzma2.c:1138: + if (s->dict.size > s->dict.size_max) [...] ERROR: braces {} are necessary for all arms of this statement #1696: FILE: libxz/xz_dec_lzma2.c:1167: + if (DEC_IS_MULTI(s->dict.mode)) [...] ERROR: braces {} are necessary for all arms of this statement #1897: FILE: libxz/xz_dec_stream.c:191: + if (s->pos == 0) [...] ERROR: braces {} are necessary for all arms of this statement #1908: FILE: libxz/xz_dec_stream.c:202: + if (byte == 0 && s->pos != 0) [...] ERROR: braces {} are necessary for all arms of this statement #1916: FILE: libxz/xz_dec_stream.c:210: + if (s->pos == 7 * VLI_BYTES_MAX) [...] ERROR: braces {} are necessary for all arms of this statement #1987: FILE: libxz/xz_dec_stream.c:281: + if (s->check_type == XZ_CHECK_CRC32) [...] + else if (IS_CRC64(s->check_type)) [...] ERROR: braces {} are necessary for all arms of this statement #1989: FILE: libxz/xz_dec_stream.c:283: + else if (IS_CRC64(s->check_type)) [...] ERROR: braces {} are necessary for all arms of this statement #2040: FILE: libxz/xz_dec_stream.c:334: + if (s->index.count != s->block.count) [...] ERROR: braces {} are necessary for all arms of this statement #2075: FILE: libxz/xz_dec_stream.c:369: + if (b->in_pos == b->in_size) [...] ERROR: braces {} are necessary for all arms of this statement #2078: FILE: libxz/xz_dec_stream.c:372: + if (((s->crc >> s->pos) & 0xFF) != b->in[b->in_pos++]) [...] ERROR: braces {} are necessary for all arms of this statement #2099: FILE: libxz/xz_dec_stream.c:393: + if (b->in_pos == b->in_size) [...] ERROR: braces {} are necessary for all arms of this statement #2115: FILE: libxz/xz_dec_stream.c:409: + if (!memeq(s->temp.buf, HEADER_MAGIC, HEADER_MAGIC_SIZE)) [...] ERROR: braces {} are necessary for all arms of this statement #2122: FILE: libxz/xz_dec_stream.c:416: + if (s->temp.buf[HEADER_MAGIC_SIZE] != 0) [...] ERROR: braces {} are necessary for all arms of this statement #2135: FILE: libxz/xz_dec_stream.c:429: + if (s->check_type > XZ_CHECK_MAX) [...] ERROR: braces {} are necessary for all arms of this statement #2138: FILE: libxz/xz_dec_stream.c:432: + if (s->check_type > XZ_CHECK_CRC32 && !IS_CRC64(s->check_type)) [...] ERROR: braces {} are necessary for all arms of this statement #2141: FILE: libxz/xz_dec_stream.c:435: + if (s->check_type > XZ_CHECK_CRC32 && !IS_CRC64(s->check_type)) [...] ERROR: braces {} are necessary for all arms of this statement #2151: FILE: libxz/xz_dec_stream.c:445: + if (!memeq(s->temp.buf + 10, FOOTER_MAGIC, FOOTER_MAGIC_SIZE)) [...] ERROR: braces {} are necessary for all arms of this statement #2154: FILE: libxz/xz_dec_stream.c:448: + if (xz_crc32(s->temp.buf + 4, 6, 0) != get_le32(s->temp.buf)) [...] ERROR: braces {} are necessary for all arms of this statement #2162: FILE: libxz/xz_dec_stream.c:456: + if ((s->index.size >> 2) != get_le32(s->temp.buf + 4)) [...] ERROR: braces {} are necessary for all arms of this statement #2165: FILE: libxz/xz_dec_stream.c:459: + if (s->temp.buf[8] != 0 || s->temp.buf[9] != s->check_type) [...] ERROR: braces {} are necessary for all arms of this statement #2228: FILE: libxz/xz_dec_stream.c:522: + if (s->temp.size - s->temp.pos < 2) [...] ERROR: braces {} are necessary for all arms of this statement #2232: FILE: libxz/xz_dec_stream.c:526: + if (ret != XZ_OK) [...] ERROR: braces {} are necessary for all arms of this statement #2239: FILE: libxz/xz_dec_stream.c:533: + if (s->temp.buf[s->temp.pos++] != 0x00) [...] ERROR: braces {} are necessary for all arms of this statement #2245: FILE: libxz/xz_dec_stream.c:539: + if (s->temp.size - s->temp.pos < 2) [...] ERROR: braces {} are necessary for all arms of this statement #2249: FILE: libxz/xz_dec_stream.c:543: + if (s->temp.buf[s->temp.pos++] != 0x21) [...] ERROR: braces {} are necessary for all arms of this statement #2253: FILE: libxz/xz_dec_stream.c:547: + if (s->temp.buf[s->temp.pos++] != 0x01) [...] ERROR: braces {} are necessary for all arms of this statement #2257: FILE: libxz/xz_dec_stream.c:551: + if (s->temp.size - s->temp.pos < 1) [...] ERROR: braces {} are necessary for all arms of this statement #2261: FILE: libxz/xz_dec_stream.c:555: + if (ret != XZ_OK) [...] ERROR: braces {} are necessary for all arms of this statement #2266: FILE: libxz/xz_dec_stream.c:560: + if (s->temp.buf[s->temp.pos++] != 0x00) [...] ERROR: braces {} are necessary for all arms of this statement #2297: FILE: libxz/xz_dec_stream.c:591: + if (!fill_temp(s, b)) [...] ERROR: braces {} are necessary for all arms of this statement #2310: FILE: libxz/xz_dec_stream.c:604: + if (ret != XZ_OK) [...] ERROR: braces {} are necessary for all arms of this statement #2315: FILE: libxz/xz_dec_stream.c:609: + if (b->in_pos == b->in_size) [...] ERROR: braces {} are necessary for all arms of this statement #2337: FILE: libxz/xz_dec_stream.c:631: + if (!fill_temp(s, b)) [...] ERROR: braces {} are necessary for all arms of this statement #2341: FILE: libxz/xz_dec_stream.c:635: + if (ret != XZ_OK) [...] ERROR: braces {} are necessary for all arms of this statement #2348: FILE: libxz/xz_dec_stream.c:642: + if (ret != XZ_STREAM_END) [...] ERROR: braces {} are necessary for all arms of this statement #2362: FILE: libxz/xz_dec_stream.c:656: + if (b->in_pos == b->in_size) [...] ERROR: braces {} are necessary for all arms of this statement #2365: FILE: libxz/xz_dec_stream.c:659: + if (b->in[b->in_pos++] != 0) [...] ERROR: braces {} are necessary for all arms of this statement #2376: FILE: libxz/xz_dec_stream.c:670: + if (ret != XZ_STREAM_END) [...] ERROR: else should follow close brace '}' #2379: FILE: libxz/xz_dec_stream.c:673: + } + else if (IS_CRC64(s->check_type)) { ERROR: braces {} are necessary for all arms of this statement #2381: FILE: libxz/xz_dec_stream.c:675: + if (ret != XZ_STREAM_END) [...] ERROR: braces {} are necessary for all arms of this statement #2395: FILE: libxz/xz_dec_stream.c:689: + if (ret != XZ_STREAM_END) [...] ERROR: braces {} are necessary for all arms of this statement #2408: FILE: libxz/xz_dec_stream.c:702: + if (b->in[b->in_pos++] != 0) [...] ERROR: braces {} are necessary for all arms of this statement #2424: FILE: libxz/xz_dec_stream.c:718: + if (ret != XZ_STREAM_END) [...] ERROR: braces {} are necessary for all arms of this statement #2431: FILE: libxz/xz_dec_stream.c:725: + if (!fill_temp(s, b)) [...] ERROR: braces {} are necessary for all arms of this statement #2472: FILE: libxz/xz_dec_stream.c:766: + if (DEC_IS_SINGLE(s->mode)) [...] ERROR: braces {} are necessary for all arms of this statement #2491: FILE: libxz/xz_dec_stream.c:785: + if (s->allow_buf_error) [...] ERROR: braces {} are necessary for all arms of this statement #2505: FILE: libxz/xz_dec_stream.c:799: + if (s == NULL) [...] ERROR: braces {} are necessary for all arms of this statement #2512: FILE: libxz/xz_dec_stream.c:806: + if (s->bcj == NULL) [...] ERROR: braces {} are necessary for all arms of this statement #2517: FILE: libxz/xz_dec_stream.c:811: + if (s->lzma2 == NULL) [...] ERROR: braces {} are necessary for all arms of this statement #2625: FILE: libxz/xz_lzma2.h:66: + if (*state <= STATE_SHORTREP_LIT_LIT) [...] + else if (*state <= STATE_LIT_SHORTREP) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #2627: FILE: libxz/xz_lzma2.h:68: + else if (*state <= STATE_LIT_SHORTREP) [...] + else [...] WARNING: Block comments use a leading /* on a separate line #2657: FILE: libxz/xz_lzma2.h:98: +/* Each literal coder is divided in three sections: WARNING: Block comments use a leading /* on a separate line #2673: FILE: libxz/xz_lzma2.h:114: +/* Match length is encoded with 4, 5, or 10 bits. WARNING: Block comments use a leading /* on a separate line #2720: FILE: libxz/xz_lzma2.h:161: +/* Match distances up to 127 are fully encoded using probabilities. Since WARNING: architecture specific defines should be avoided #2782: FILE: libxz/xz_private.h:13: +#ifdef __KERNEL__ WARNING: architecture specific defines should be avoided #2944: FILE: libxz/xz_stream.h:13: +#if defined(__KERNEL__) && !XZ_INTERNAL_CRC32 total: 109 errors, 17 warnings, 2932 lines checked Patch 4/5 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 5/5 Checking commit 7419b332e89b (ppc/pnv: Read the PNOR partition table) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #252: new file mode 100644 total: 0 errors, 1 warnings, 383 lines checked Patch 5/5 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20191021131215.3693-1-clg@kaod.org/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
© 2016 - 2024 Red Hat, Inc.