Patchew URL: https://patchew.org/QEMU/20210114211612.387052-1-and...@daynix.com/
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20210114211612.387052-1-and...@daynix.com Subject: [RFC PATCH v3 0/6] eBPF RSS support for virtio-net === 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/20210109143637.29645-1-bmeng...@gmail.com -> patchew/20210109143637.29645-1-bmeng...@gmail.com - [tag update] patchew/20210112164045.98565-1-th...@redhat.com -> patchew/20210112164045.98565-1-th...@redhat.com - [tag update] patchew/20210114165730.31607-1-alex.ben...@linaro.org -> patchew/20210114165730.31607-1-alex.ben...@linaro.org - [tag update] patchew/20210114170304.87507-1-mre...@redhat.com -> patchew/20210114170304.87507-1-mre...@redhat.com - [tag update] patchew/20210114174509.2944817-1-phi...@redhat.com -> patchew/20210114174509.2944817-1-phi...@redhat.com * [new tag] patchew/20210114211612.387052-1-and...@daynix.com -> patchew/20210114211612.387052-1-and...@daynix.com Switched to a new branch 'test' 32a7d31 docs: Added eBPF documentation. 5829b35 virtio-net: Added eBPF RSS to virtio-net. c1e16f7 ebpf: Added eBPF RSS loader. 67e8d5f ebpf: Added eBPF RSS program. 9955cbd net: Added SetSteeringEBPF method for NetClientState. 7255813 net/tap: Added TUNSETSTEERINGEBPF code. === OUTPUT BEGIN === 1/6 Checking commit 725581347a66 (net/tap: Added TUNSETSTEERINGEBPF code.) 2/6 Checking commit 9955cbd7e95d (net: Added SetSteeringEBPF method for NetClientState.) 3/6 Checking commit 67e8d5f1220d (ebpf: Added eBPF RSS program.) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #18: new file mode 100755 WARNING: line over 80 characters #216: FILE: tools/ebpf/rss.bpf.c:155: + * According to https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml WARNING: line over 80 characters #219: FILE: tools/ebpf/rss.bpf.c:158: + * Need to choose reasonable amount of maximum extensions/options we may check to find WARNING: line over 80 characters #279: FILE: tools/ebpf/rss.bpf.c:218: + *l4_offset + opt_offset + offsetof(struct ipv6_destopt_hao, addr), total: 0 errors, 4 warnings, 538 lines checked Patch 3/6 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 4/6 Checking commit c1e16f784c92 (ebpf: Added eBPF RSS loader.) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #91: new file mode 100644 WARNING: architecture specific defines should be avoided #373: FILE: ebpf/rss.bpf.skeleton.h:4: +#ifndef __RSS_BPF_SKEL_H__ ERROR: code indent should never use tabs #380: FILE: ebpf/rss.bpf.skeleton.h:11: +^Istruct bpf_object_skeleton *skeleton;$ ERROR: code indent should never use tabs #381: FILE: ebpf/rss.bpf.skeleton.h:12: +^Istruct bpf_object *obj;$ ERROR: code indent should never use tabs #382: FILE: ebpf/rss.bpf.skeleton.h:13: +^Istruct {$ ERROR: code indent should never use tabs #383: FILE: ebpf/rss.bpf.skeleton.h:14: +^I^Istruct bpf_map *tap_rss_map_configurations;$ ERROR: code indent should never use tabs #384: FILE: ebpf/rss.bpf.skeleton.h:15: +^I^Istruct bpf_map *tap_rss_map_indirection_table;$ ERROR: code indent should never use tabs #385: FILE: ebpf/rss.bpf.skeleton.h:16: +^I^Istruct bpf_map *tap_rss_map_toeplitz_key;$ ERROR: code indent should never use tabs #386: FILE: ebpf/rss.bpf.skeleton.h:17: +^I} maps;$ ERROR: code indent should never use tabs #387: FILE: ebpf/rss.bpf.skeleton.h:18: +^Istruct {$ ERROR: code indent should never use tabs #388: FILE: ebpf/rss.bpf.skeleton.h:19: +^I^Istruct bpf_program *tun_rss_steering_prog;$ ERROR: code indent should never use tabs #389: FILE: ebpf/rss.bpf.skeleton.h:20: +^I} progs;$ ERROR: code indent should never use tabs #390: FILE: ebpf/rss.bpf.skeleton.h:21: +^Istruct {$ ERROR: code indent should never use tabs #391: FILE: ebpf/rss.bpf.skeleton.h:22: +^I^Istruct bpf_link *tun_rss_steering_prog;$ ERROR: code indent should never use tabs #392: FILE: ebpf/rss.bpf.skeleton.h:23: +^I} links;$ ERROR: code indent should never use tabs #398: FILE: ebpf/rss.bpf.skeleton.h:29: +^Iif (!obj)$ ERROR: braces {} are necessary for all arms of this statement #398: FILE: ebpf/rss.bpf.skeleton.h:29: + if (!obj) [...] ERROR: code indent should never use tabs #399: FILE: ebpf/rss.bpf.skeleton.h:30: +^I^Ireturn;$ ERROR: code indent should never use tabs #400: FILE: ebpf/rss.bpf.skeleton.h:31: +^Iif (obj->skeleton)$ ERROR: braces {} are necessary for all arms of this statement #400: FILE: ebpf/rss.bpf.skeleton.h:31: + if (obj->skeleton) [...] ERROR: code indent should never use tabs #401: FILE: ebpf/rss.bpf.skeleton.h:32: +^I^Ibpf_object__destroy_skeleton(obj->skeleton);$ ERROR: code indent should never use tabs #402: FILE: ebpf/rss.bpf.skeleton.h:33: +^Ifree(obj);$ ERROR: code indent should never use tabs #411: FILE: ebpf/rss.bpf.skeleton.h:42: +^Istruct rss_bpf *obj;$ ERROR: code indent should never use tabs #413: FILE: ebpf/rss.bpf.skeleton.h:44: +^Iobj = (struct rss_bpf *)calloc(1, sizeof(*obj));$ ERROR: code indent should never use tabs #414: FILE: ebpf/rss.bpf.skeleton.h:45: +^Iif (!obj)$ ERROR: braces {} are necessary for all arms of this statement #414: FILE: ebpf/rss.bpf.skeleton.h:45: + if (!obj) [...] ERROR: code indent should never use tabs #415: FILE: ebpf/rss.bpf.skeleton.h:46: +^I^Ireturn NULL;$ ERROR: code indent should never use tabs #416: FILE: ebpf/rss.bpf.skeleton.h:47: +^Iif (rss_bpf__create_skeleton(obj))$ ERROR: braces {} are necessary for all arms of this statement #416: FILE: ebpf/rss.bpf.skeleton.h:47: + if (rss_bpf__create_skeleton(obj)) [...] ERROR: code indent should never use tabs #417: FILE: ebpf/rss.bpf.skeleton.h:48: +^I^Igoto err;$ ERROR: code indent should never use tabs #418: FILE: ebpf/rss.bpf.skeleton.h:49: +^Iif (bpf_object__open_skeleton(obj->skeleton, opts))$ ERROR: braces {} are necessary for all arms of this statement #418: FILE: ebpf/rss.bpf.skeleton.h:49: + if (bpf_object__open_skeleton(obj->skeleton, opts)) [...] ERROR: code indent should never use tabs #419: FILE: ebpf/rss.bpf.skeleton.h:50: +^I^Igoto err;$ ERROR: code indent should never use tabs #421: FILE: ebpf/rss.bpf.skeleton.h:52: +^Ireturn obj;$ ERROR: code indent should never use tabs #423: FILE: ebpf/rss.bpf.skeleton.h:54: +^Irss_bpf__destroy(obj);$ ERROR: code indent should never use tabs #424: FILE: ebpf/rss.bpf.skeleton.h:55: +^Ireturn NULL;$ ERROR: code indent should never use tabs #430: FILE: ebpf/rss.bpf.skeleton.h:61: +^Ireturn rss_bpf__open_opts(NULL);$ ERROR: code indent should never use tabs #436: FILE: ebpf/rss.bpf.skeleton.h:67: +^Ireturn bpf_object__load_skeleton(obj->skeleton);$ ERROR: code indent should never use tabs #442: FILE: ebpf/rss.bpf.skeleton.h:73: +^Istruct rss_bpf *obj;$ ERROR: code indent should never use tabs #444: FILE: ebpf/rss.bpf.skeleton.h:75: +^Iobj = rss_bpf__open();$ ERROR: code indent should never use tabs #445: FILE: ebpf/rss.bpf.skeleton.h:76: +^Iif (!obj)$ ERROR: braces {} are necessary for all arms of this statement #445: FILE: ebpf/rss.bpf.skeleton.h:76: + if (!obj) [...] ERROR: code indent should never use tabs #446: FILE: ebpf/rss.bpf.skeleton.h:77: +^I^Ireturn NULL;$ ERROR: code indent should never use tabs #447: FILE: ebpf/rss.bpf.skeleton.h:78: +^Iif (rss_bpf__load(obj)) {$ ERROR: code indent should never use tabs #448: FILE: ebpf/rss.bpf.skeleton.h:79: +^I^Irss_bpf__destroy(obj);$ ERROR: code indent should never use tabs #449: FILE: ebpf/rss.bpf.skeleton.h:80: +^I^Ireturn NULL;$ ERROR: code indent should never use tabs #450: FILE: ebpf/rss.bpf.skeleton.h:81: +^I}$ ERROR: code indent should never use tabs #451: FILE: ebpf/rss.bpf.skeleton.h:82: +^Ireturn obj;$ ERROR: code indent should never use tabs #457: FILE: ebpf/rss.bpf.skeleton.h:88: +^Ireturn bpf_object__attach_skeleton(obj->skeleton);$ ERROR: code indent should never use tabs #463: FILE: ebpf/rss.bpf.skeleton.h:94: +^Ireturn bpf_object__detach_skeleton(obj->skeleton);$ ERROR: code indent should never use tabs #469: FILE: ebpf/rss.bpf.skeleton.h:100: +^Istruct bpf_object_skeleton *s;$ ERROR: code indent should never use tabs #471: FILE: ebpf/rss.bpf.skeleton.h:102: +^Is = (struct bpf_object_skeleton *)calloc(1, sizeof(*s));$ ERROR: code indent should never use tabs #472: FILE: ebpf/rss.bpf.skeleton.h:103: +^Iif (!s)$ ERROR: braces {} are necessary for all arms of this statement #472: FILE: ebpf/rss.bpf.skeleton.h:103: + if (!s) [...] ERROR: code indent should never use tabs #473: FILE: ebpf/rss.bpf.skeleton.h:104: +^I^Ireturn -1;$ ERROR: code indent should never use tabs #474: FILE: ebpf/rss.bpf.skeleton.h:105: +^Iobj->skeleton = s;$ ERROR: code indent should never use tabs #476: FILE: ebpf/rss.bpf.skeleton.h:107: +^Is->sz = sizeof(*s);$ ERROR: code indent should never use tabs #477: FILE: ebpf/rss.bpf.skeleton.h:108: +^Is->name = "rss_bpf";$ ERROR: code indent should never use tabs #478: FILE: ebpf/rss.bpf.skeleton.h:109: +^Is->obj = &obj->obj;$ ERROR: code indent should never use tabs #480: FILE: ebpf/rss.bpf.skeleton.h:111: +^I/* maps */$ ERROR: code indent should never use tabs #481: FILE: ebpf/rss.bpf.skeleton.h:112: +^Is->map_cnt = 3;$ ERROR: code indent should never use tabs #482: FILE: ebpf/rss.bpf.skeleton.h:113: +^Is->map_skel_sz = sizeof(*s->maps);$ ERROR: code indent should never use tabs #483: FILE: ebpf/rss.bpf.skeleton.h:114: +^Is->maps = (struct bpf_map_skeleton *)calloc(s->map_cnt, s->map_skel_sz);$ ERROR: code indent should never use tabs #484: FILE: ebpf/rss.bpf.skeleton.h:115: +^Iif (!s->maps)$ ERROR: braces {} are necessary for all arms of this statement #484: FILE: ebpf/rss.bpf.skeleton.h:115: + if (!s->maps) [...] ERROR: code indent should never use tabs #485: FILE: ebpf/rss.bpf.skeleton.h:116: +^I^Igoto err;$ ERROR: code indent should never use tabs #487: FILE: ebpf/rss.bpf.skeleton.h:118: +^Is->maps[0].name = "tap_rss_map_configurations";$ ERROR: code indent should never use tabs #488: FILE: ebpf/rss.bpf.skeleton.h:119: +^Is->maps[0].map = &obj->maps.tap_rss_map_configurations;$ ERROR: code indent should never use tabs #490: FILE: ebpf/rss.bpf.skeleton.h:121: +^Is->maps[1].name = "tap_rss_map_indirection_table";$ ERROR: code indent should never use tabs #491: FILE: ebpf/rss.bpf.skeleton.h:122: +^Is->maps[1].map = &obj->maps.tap_rss_map_indirection_table;$ ERROR: code indent should never use tabs #493: FILE: ebpf/rss.bpf.skeleton.h:124: +^Is->maps[2].name = "tap_rss_map_toeplitz_key";$ ERROR: code indent should never use tabs #494: FILE: ebpf/rss.bpf.skeleton.h:125: +^Is->maps[2].map = &obj->maps.tap_rss_map_toeplitz_key;$ ERROR: code indent should never use tabs #496: FILE: ebpf/rss.bpf.skeleton.h:127: +^I/* programs */$ ERROR: code indent should never use tabs #497: FILE: ebpf/rss.bpf.skeleton.h:128: +^Is->prog_cnt = 1;$ ERROR: code indent should never use tabs #498: FILE: ebpf/rss.bpf.skeleton.h:129: +^Is->prog_skel_sz = sizeof(*s->progs);$ WARNING: line over 80 characters #499: FILE: ebpf/rss.bpf.skeleton.h:130: + s->progs = (struct bpf_prog_skeleton *)calloc(s->prog_cnt, s->prog_skel_sz); ERROR: code indent should never use tabs #499: FILE: ebpf/rss.bpf.skeleton.h:130: +^Is->progs = (struct bpf_prog_skeleton *)calloc(s->prog_cnt, s->prog_skel_sz);$ ERROR: code indent should never use tabs #500: FILE: ebpf/rss.bpf.skeleton.h:131: +^Iif (!s->progs)$ ERROR: braces {} are necessary for all arms of this statement #500: FILE: ebpf/rss.bpf.skeleton.h:131: + if (!s->progs) [...] ERROR: code indent should never use tabs #501: FILE: ebpf/rss.bpf.skeleton.h:132: +^I^Igoto err;$ ERROR: code indent should never use tabs #503: FILE: ebpf/rss.bpf.skeleton.h:134: +^Is->progs[0].name = "tun_rss_steering_prog";$ ERROR: code indent should never use tabs #504: FILE: ebpf/rss.bpf.skeleton.h:135: +^Is->progs[0].prog = &obj->progs.tun_rss_steering_prog;$ ERROR: code indent should never use tabs #505: FILE: ebpf/rss.bpf.skeleton.h:136: +^Is->progs[0].link = &obj->links.tun_rss_steering_prog;$ ERROR: code indent should never use tabs #507: FILE: ebpf/rss.bpf.skeleton.h:138: +^Is->data_sz = 7088;$ ERROR: code indent should never use tabs #508: FILE: ebpf/rss.bpf.skeleton.h:139: +^Is->data = (void *)"\$ ERROR: code indent should never use tabs #760: FILE: ebpf/rss.bpf.skeleton.h:391: +^Ireturn 0;$ ERROR: code indent should never use tabs #762: FILE: ebpf/rss.bpf.skeleton.h:393: +^Ibpf_object__destroy_skeleton(s);$ ERROR: code indent should never use tabs #763: FILE: ebpf/rss.bpf.skeleton.h:394: +^Ireturn -1;$ total: 85 errors, 3 warnings, 756 lines checked Patch 4/6 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 5/6 Checking commit 5829b35f89fc (virtio-net: Added eBPF RSS to virtio-net.) WARNING: line over 80 characters #192: FILE: hw/net/virtio-net.c:2868: + warn_report("Can't post-load eBPF RSS - fallback to software RSS"); total: 0 errors, 1 warnings, 223 lines checked Patch 5/6 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 6/6 Checking commit 32a7d313e818 (docs: Added eBPF documentation.) WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #33: new file mode 100644 total: 0 errors, 1 warnings, 139 lines checked Patch 6/6 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/20210114211612.387052-1-and...@daynix.com/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-de...@redhat.com