All of lore.kernel.org
 help / color / mirror / Atom feed
From: no-reply@patchew.org
To: ehabkost@redhat.com
Cc: pbonzini@redhat.com, berrange@redhat.com, qemu-devel@nongnu.org
Subject: Re: [PATCH 00/41] qom: Automated conversion of type checking boilerplate
Date: Thu, 13 Aug 2020 16:01:03 -0700 (PDT)	[thread overview]
Message-ID: <159735966266.30403.8079325840459292726@66eaa9a8a123> (raw)
In-Reply-To: <20200813222625.243136-1-ehabkost@redhat.com>

Patchew URL: https://patchew.org/QEMU/20200813222625.243136-1-ehabkost@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20200813222625.243136-1-ehabkost@redhat.com
Subject: [PATCH 00/41] qom: Automated conversion of type checking boilerplate

=== 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 ===

From https://github.com/patchew-project/qemu
 * [new tag]         patchew/20200813222625.243136-1-ehabkost@redhat.com -> patchew/20200813222625.243136-1-ehabkost@redhat.com
Switched to a new branch 'test'
f1d2ad9 crypto: use QOM macros for declaration/definition of TLS creds types
4ea785b crypto: use QOM macros for declaration/definition of secret types
42307a9 Use OBJECT_DECLARE_SIMPLE_TYPE when possible
e1d9baa Use OBJECT_DECLARE_TYPE where possible
6d51dbd Use DECLARE_*CHECKER* when possible (--force mode)
2f68ebb Use DECLARE_*CHECKER* macros
d9a5329 Move QOM typedefs and add missing includes
d99bc90 Use TYPE_INFO macro
cf59308 Delete duplicate QOM typedefs
abb59d3 codeconverter: script for automating QOM code cleanups
c3aacb7 qom: TYPE_INFO macro
6a1dc81 qom: Make type checker functions accept const pointers
94dc349 qom: DECLARE_*_CHECKERS macros
c7d59ae qom: Allow class type name to be specified in OBJECT_DECLARE*
2d59458 qom: Fix G_DEFINE_AUTOPTR_CLEANUP_FUNC
4902ffa qom: provide convenient macros for declaring and defining types
f4ee4e0 qom: make object_ref/unref use a void * instead of Object *.
a47330a platform-bus: Delete macros for non-existing typedef
5bdcdd1 nubus: Delete unused NUBUS_BRIDGE macro
4082689 can_emu: Delete macros for non-existing typedef
d6afc42 s390_flic: Move KVMS390FLICState typedef to header
4579395 mcf_fec: Move mcf_fec_state typedef to header
770881d hvf: Move HVFState typedef to hvf.h
7eff325 i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h
3736e8e pci: Move PCIBusClass typedef to pci.h
5634fc5 throttle-groups: Move ThrottleGroup typedef to header
0001856 tulip: Move TulipState typedef to header
0932b2f hcd-dwc2: Rename USB_*CLASS macros for consistency
d8cad90 hvf: Add missing include
2624fbf virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS
4342dcc versatile: Fix typo in PCI_VPB_HOST definition
f533849 sifive_u: Rename memmap enum constants
330246d sifive_e: Rename memmap enum constants
a4e4116 opentitan: Rename memmap enum constants
3d055c7 aspeed_soc: Rename memmap/irqmap enum constants
9277ac1 allwinner-h3: Rename memmap enum constants
a4deb35 aspeed_timer: Fix ASPEED_TIMER macro definition
c4d2996 vmw_pvscsi: Rename QOM class cast macros
6fc2746 megasas: Rename QOM class cast macros
df20ed6 e1000: Rename QOM class cast macros
8366582 pl1110: Rename PL1110 enum

=== OUTPUT BEGIN ===
1/41 Checking commit 836658277f31 (pl1110: Rename PL1110 enum)
2/41 Checking commit df20ed682a35 (e1000: Rename QOM class cast macros)
3/41 Checking commit 6fc2746358e3 (megasas: Rename QOM class cast macros)
4/41 Checking commit c4d299612aea (vmw_pvscsi: Rename QOM class cast macros)
5/41 Checking commit a4deb3526872 (aspeed_timer: Fix ASPEED_TIMER macro definition)
6/41 Checking commit 9277ac1f1341 (allwinner-h3: Rename memmap enum constants)
WARNING: line over 80 characters
#128: FILE: hw/arm/allwinner-h3.c:328:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_A1],

WARNING: line over 80 characters
#131: FILE: hw/arm/allwinner-h3.c:330:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_A2],

WARNING: line over 80 characters
#134: FILE: hw/arm/allwinner-h3.c:332:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_C],

WARNING: line over 80 characters
#145: FILE: hw/arm/allwinner-h3.c:341:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->sysctrl), 0, s->memmap[AW_H3_DEV_SYSCTRL]);

WARNING: line over 80 characters
#254: FILE: hw/arm/orangepi.c:82:
+    object_property_set_uint(OBJECT(h3), "ram-addr", h3->memmap[AW_H3_DEV_SDRAM],

WARNING: line over 80 characters
#263: FILE: hw/arm/orangepi.c:101:
+    memory_region_add_subregion(get_system_memory(), h3->memmap[AW_H3_DEV_SDRAM],

total: 0 errors, 6 warnings, 310 lines checked

Patch 6/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
7/41 Checking commit 3d055c796062 (aspeed_soc: Rename memmap/irqmap enum constants)
8/41 Checking commit a4e4116b7873 (opentitan: Rename memmap enum constants)
WARNING: line over 80 characters
#152: FILE: hw/riscv/opentitan.c:174:
+        memmap[IBEX_DEV_ALERT_HANDLER].base, memmap[IBEX_DEV_ALERT_HANDLER].size);

total: 0 errors, 1 warnings, 184 lines checked

Patch 8/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
9/41 Checking commit 330246d1c18d (sifive_e: Rename memmap enum constants)
WARNING: line over 80 characters
#83: FILE: hw/riscv/sifive_e.c:114:
+                          memmap[SIFIVE_E_DEV_MROM].base, &address_space_memory);

WARNING: line over 80 characters
#127: FILE: hw/riscv/sifive_e.c:227:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->gpio), 0, memmap[SIFIVE_E_DEV_GPIO0].base);

total: 0 errors, 2 warnings, 185 lines checked

Patch 9/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
10/41 Checking commit f53384995400 (sifive_u: Rename memmap enum constants)
WARNING: line over 80 characters
#263: FILE: hw/riscv/sifive_u.c:494:
+                          memmap[SIFIVE_U_DEV_MROM].base, &address_space_memory);

WARNING: line over 80 characters
#326: FILE: hw/riscv/sifive_u.c:693:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->prci), 0, memmap[SIFIVE_U_DEV_PRCI].base);

WARNING: line over 80 characters
#333: FILE: hw/riscv/sifive_u.c:699:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->gpio), 0, memmap[SIFIVE_U_DEV_GPIO].base);

total: 0 errors, 3 warnings, 360 lines checked

Patch 10/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
11/41 Checking commit 4342dcc2183d (versatile: Fix typo in PCI_VPB_HOST definition)
12/41 Checking commit 2624fbf2fee9 (virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS)
13/41 Checking commit d8cad90cfe8f (hvf: Add missing include)
14/41 Checking commit 0932b2f86c44 (hcd-dwc2: Rename USB_*CLASS macros for consistency)
15/41 Checking commit 0001856c800c (tulip: Move TulipState typedef to header)
16/41 Checking commit 5634fc554406 (throttle-groups: Move ThrottleGroup typedef to header)
17/41 Checking commit 3736e8e3ab84 (pci: Move PCIBusClass typedef to pci.h)
18/41 Checking commit 7eff32559f9f (i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h)
19/41 Checking commit 770881daf21f (hvf: Move HVFState typedef to hvf.h)
20/41 Checking commit 45793953ce7c (mcf_fec: Move mcf_fec_state typedef to header)
21/41 Checking commit d6afc426bbd5 (s390_flic: Move KVMS390FLICState typedef to header)
ERROR: missing space after struct definition
#22: FILE: hw/intc/s390_flic_kvm.c:32:
+struct KVMS390FLICState{

total: 1 errors, 0 warnings, 21 lines checked

Patch 21/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

22/41 Checking commit 4082689e8d82 (can_emu: Delete macros for non-existing typedef)
23/41 Checking commit 5bdcdd1e6fcc (nubus: Delete unused NUBUS_BRIDGE macro)
24/41 Checking commit a47330a4f693 (platform-bus: Delete macros for non-existing typedef)
25/41 Checking commit f4ee4e0507c7 (qom: make object_ref/unref use a void * instead of Object *.)
26/41 Checking commit 4902ffa5e400 (qom: provide convenient macros for declaring and defining types)
WARNING: line over 80 characters
#292: FILE: include/qom/object.h:619:
+ * @...: list of initializers for "InterfaceInfo" to declare implemented interfaces

WARNING: line over 80 characters
#360: FILE: include/qom/object.h:687:
+ * @...: list of initializers for "InterfaceInfo" to declare implemented interfaces

total: 0 errors, 2 warnings, 289 lines checked

Patch 26/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
27/41 Checking commit 2d59458640e1 (qom: Fix G_DEFINE_AUTOPTR_CLEANUP_FUNC)
28/41 Checking commit c7d59aec6ee7 (qom: Allow class type name to be specified in OBJECT_DECLARE*)
WARNING: line over 80 characters
#35: FILE: include/qom/object.h:571:
+#define OBJECT_DECLARE_TYPE(InstanceType, ClassType, module_obj_name, MODULE_OBJ_NAME) \

ERROR: line over 90 characters
#84: FILE: include/qom/object.h:608:
+    OBJECT_DECLARE_TYPE(InstanceType, InstanceType##Class, module_obj_name, MODULE_OBJ_NAME) \

total: 1 errors, 1 warnings, 68 lines checked

Patch 28/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

29/41 Checking commit 94dc349cfe26 (qom: DECLARE_*_CHECKERS macros)
30/41 Checking commit 6a1dc81ace42 (qom: Make type checker functions accept const pointers)
31/41 Checking commit c3aacb7541bf (qom: TYPE_INFO macro)
32/41 Checking commit abb59d3ffcb5 (codeconverter: script for automating QOM code cleanups)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#21: 
new file mode 100644

ERROR: line over 90 characters
#29: FILE: scripts/codeconverter/codeconverter/patching.py:1:
+from typing import IO, Match, NamedTuple, Optional, Literal, Iterable, Type, Dict, List, Any, TypeVar, NewType, Tuple

WARNING: line over 80 characters
#96: FILE: scripts/codeconverter/codeconverter/patching.py:68:
+        logger.log(level, '%s:%d:%d: '+fmt, self.file.filename, pos.line, pos.col, *args)

ERROR: line over 90 characters
#158: FILE: scripts/codeconverter/codeconverter/patching.py:130:
+                                                    end.line, end.col, self.group(0)[:100])

WARNING: line over 80 characters
#161: FILE: scripts/codeconverter/codeconverter/patching.py:133:
+        """Can be implemented by subclasses to keep track of identifier references

WARNING: line over 80 characters
#163: FILE: scripts/codeconverter/codeconverter/patching.py:135:
+        This method will be used by the code that moves declarations around the file,

WARNING: line over 80 characters
#169: FILE: scripts/codeconverter/codeconverter/patching.py:141:
+        """Can be implemented by subclasses to keep track of identifier references

WARNING: line over 80 characters
#171: FILE: scripts/codeconverter/codeconverter/patching.py:143:
+        This method will be used by the code that moves declarations around the file,

ERROR: line over 90 characters
#216: FILE: scripts/codeconverter/codeconverter/patching.py:188:
+        DBG("Applying patch at position %d (%s) - %d (%s): %r", p.start, line_col(s, p.start), p.end, line_col(s, p.end), p.replacement)

ERROR: line over 90 characters
#218: FILE: scripts/codeconverter/codeconverter/patching.py:190:
+            raise OverLappingPatchesError("Overlapping patch at position %d (%s), last patch at %d (%s)" % \

WARNING: line over 80 characters
#229: FILE: scripts/codeconverter/codeconverter/patching.py:201:
+        self.match_name_index: Dict[Tuple[Type[Any], str, str], Optional[FileMatch]] = {}

WARNING: line over 80 characters
#239: FILE: scripts/codeconverter/codeconverter/patching.py:211:
+    def find_match(self, t: Type[T], name: str, group: str='name') -> Optional[T]:

WARNING: line over 80 characters
#259: FILE: scripts/codeconverter/codeconverter/patching.py:231:
+    def __init__(self, files: 'FileList', filename:str, force:bool=False) -> None:

WARNING: line over 80 characters
#280: FILE: scripts/codeconverter/codeconverter/patching.py:252:
+        matches = [klass(self, m) for m in klass.find_matches(self.original_content)]

WARNING: line over 80 characters
#285: FILE: scripts/codeconverter/codeconverter/patching.py:257:
+    def find_match(self, t: Type[T], name: str, group: str='name') -> Optional[T]:

WARNING: line over 80 characters
#332: FILE: scripts/codeconverter/codeconverter/patching.py:304:
+    def patch_content(self, max_passes=0, class_names: Optional[List[str]]=None) -> None:

WARNING: line over 80 characters
#345: FILE: scripts/codeconverter/codeconverter/patching.py:317:
+            DBG("patch content: pass %d: %d patches generated", passes, len(self.patches))

ERROR: line over 90 characters
#353: FILE: scripts/codeconverter/codeconverter/patching.py:325:
+        INFO("%s: %d patches applied total in %d passes", self.filename, total_patches, passes)

WARNING: line over 80 characters
#356: FILE: scripts/codeconverter/codeconverter/patching.py:328:
+        """Replace self.original_content after applying patches from self.patches"""

WARNING: line over 80 characters
#449: FILE: scripts/codeconverter/codeconverter/qom_macros.py:46:
+        """Check if identifiers match, return new identifier with complete list"""

WARNING: line over 80 characters
#565: FILE: scripts/codeconverter/codeconverter/qom_macros.py:162:
+        other_td = [td for td in chain(self.file.matches_of_type(SimpleTypedefMatch),

WARNING: line over 80 characters
#566: FILE: scripts/codeconverter/codeconverter/qom_macros.py:163:
+                                       self.file.matches_of_type(FullStructTypedefMatch))

WARNING: line over 80 characters
#579: FILE: scripts/codeconverter/codeconverter/qom_macros.py:176:
+                if self.group('typedef_type') == 'struct '+td.group('structname'):

ERROR: line over 90 characters
#585: FILE: scripts/codeconverter/codeconverter/qom_macros.py:182:
+        qom_macros = [TypeCheckMacro, DeclareInstanceChecker, DeclareClassCheckers, DeclareObjCheckers]

WARNING: line over 80 characters
#587: FILE: scripts/codeconverter/codeconverter/qom_macros.py:184:
+        in_use = any(RequiredIdentifier('type', self.name) in m.required_identifiers()

ERROR: line over 90 characters
#595: FILE: scripts/codeconverter/codeconverter/qom_macros.py:192:
+        qom_macros = [TypeCheckMacro, DeclareInstanceChecker, DeclareClassCheckers, DeclareObjCheckers]

WARNING: line over 80 characters
#597: FILE: scripts/codeconverter/codeconverter/qom_macros.py:194:
+        in_use = any(RequiredIdentifier('type', self.name) in m.required_identifiers()

WARNING: line over 80 characters
#616: FILE: scripts/codeconverter/codeconverter/qom_macros.py:213:
+CheckerMacroName = Literal['OBJECT_CHECK', 'OBJECT_CLASS_CHECK', 'OBJECT_GET_CLASS']

ERROR: line over 90 characters
#621: FILE: scripts/codeconverter/codeconverter/qom_macros.py:218:
+      M(r'\s*\(\s*', OR(NAMED('typedefname', RE_IDENTIFIER), RE_TYPE, name='c_type'), r'\s*,', CPP_SPACE,

WARNING: line over 80 characters
#672: FILE: scripts/codeconverter/codeconverter/qom_macros.py:269:
+    def merge_ids(self, matches: List['TypeCheckMacro']) -> Optional[TypeIdentifiers]:

WARNING: line over 80 characters
#673: FILE: scripts/codeconverter/codeconverter/qom_macros.py:270:
+        """Try to merge info about type identifiers from all matches in a list"""

WARNING: line over 80 characters
#730: FILE: scripts/codeconverter/codeconverter/qom_macros.py:327:
+            self.warn("couldn't extract type information from macro %s", self.name)

ERROR: line over 90 characters
#740: FILE: scripts/codeconverter/codeconverter/qom_macros.py:337:
+                    self.warn("macro %s is using macro %s instead of %s", self.name, self.checker, checker)

ERROR: line over 90 characters
#745: FILE: scripts/codeconverter/codeconverter/qom_macros.py:342:
+        DBG("found %d matching macros: %s", len(matches), ' '.join(m.name for m in matches))

WARNING: line over 80 characters
#748: FILE: scripts/codeconverter/codeconverter/qom_macros.py:345:
+            DBG("skipping %s (will patch when handling %s)", self.name, matches[0].name)

WARNING: line over 80 characters
#758: FILE: scripts/codeconverter/codeconverter/qom_macros.py:355:
+            self.warn("macro %s doesn't follow the expected name pattern", self.name)

WARNING: line over 80 characters
#769: FILE: scripts/codeconverter/codeconverter/qom_macros.py:366:
+        names = [n for n in (ids.instancetype, ids.classtype, ids.uppercase, ids.typename)

WARNING: line over 80 characters
#779: FILE: scripts/codeconverter/codeconverter/qom_macros.py:376:
+            new_decl = (f'DECLARE_OBJ_CHECKERS({ids.instancetype}, {ids.classtype},\n'

WARNING: line over 80 characters
#780: FILE: scripts/codeconverter/codeconverter/qom_macros.py:377:
+                        f'                     {ids.uppercase}, {ids.typename})\n')

WARNING: line over 80 characters
#782: FILE: scripts/codeconverter/codeconverter/qom_macros.py:379:
+            new_decl = (f'DECLARE_CLASS_CHECKERS({ids.classtype}, {ids.uppercase},\n'

WARNING: line over 80 characters
#785: FILE: scripts/codeconverter/codeconverter/qom_macros.py:382:
+            new_decl = (f'DECLARE_INSTANCE_CHECKER({ids.instancetype}, {ids.uppercase},\n'

WARNING: line over 80 characters
#800: FILE: scripts/codeconverter/codeconverter/qom_macros.py:397:
+                self.warn("typedef %s need to be moved earlier in the file", td.name)

ERROR: line over 90 characters
#873: FILE: scripts/codeconverter/codeconverter/qom_macros.py:470:
+            self.warn("type %s mismatch with uppercase name %s", ids.typename, ids.uppercase)

WARNING: line over 80 characters
#886: FILE: scripts/codeconverter/codeconverter/qom_macros.py:483:
+            #TODO: check if the only match is inside the "struct { ... }" declaration

ERROR: line over 90 characters
#887: FILE: scripts/codeconverter/codeconverter/qom_macros.py:484:
+            if re.search(r'\b'+t+r'\b', self.file.original_content[td.end():self.start()]):

WARNING: line over 80 characters
#888: FILE: scripts/codeconverter/codeconverter/qom_macros.py:485:
+                self.warn("typedef %s can't be moved, it is used before the macro", t)

ERROR: line over 90 characters
#903: FILE: scripts/codeconverter/codeconverter/qom_macros.py:500:
+               r'\s*{\s*', NAMED('parent_struct', RE_IDENTIFIER), r'\s*parent(_class)?\s*;\s*};\n')

WARNING: line over 80 characters
#918: FILE: scripts/codeconverter/codeconverter/qom_macros.py:515:
+        trivial_struct = self.file.find_match(TrivialClassStruct, self.group('classtype'))

WARNING: line over 80 characters
#924: FILE: scripts/codeconverter/codeconverter/qom_macros.py:521:
+                 "                           %(uppercase)s, %(parent_struct)s)\n" % d)

ERROR: line over 90 characters
#956: FILE: scripts/codeconverter/codeconverter/qom_macros.py:553:
+        definition_classes = [SimpleTypedefMatch, FullStructTypedefMatch, ConstantDefine, Include]

ERROR: line over 90 characters
#957: FILE: scripts/codeconverter/codeconverter/qom_macros.py:554:
+        user_classes = [TypeCheckMacro, DeclareObjCheckers, DeclareInstanceChecker, DeclareClassCheckers]

WARNING: line over 80 characters
#965: FILE: scripts/codeconverter/codeconverter/qom_macros.py:562:
+                    index.setdefault(i, SymbolUserList([], [])).definitions.append(d)

WARNING: line over 80 characters
#985: FILE: scripts/codeconverter/codeconverter/qom_macros.py:582:
+                    u.warn("definition of %s %s not found in file", i.type, i.name)

ERROR: line over 90 characters
#1015: FILE: scripts/codeconverter/codeconverter/qom_macros.py:612:
+                definition.warn("definition of %s %s needs to be moved earlier in the file", i.type, i.name)

WARNING: line over 80 characters
#1016: FILE: scripts/codeconverter/codeconverter/qom_macros.py:613:
+                earliest.warn("definition of %s %s is used here", i.type, i.name)

WARNING: line over 80 characters
#1036: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:13:
+RE_ARRAY_ITEM = S(r'{\s*', NAMED('arrayitem', M(RE_SIMPLE_VALUE, n='?')), r'\s*}\s*,?')

ERROR: line over 90 characters
#1061: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:38:
+RE_TYPEINFO_START = S(r'^[ \t]*', M(r'(static|const)\s+', name='modifiers'), r'TypeInfo\s+',

ERROR: line over 90 characters
#1078: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:55:
+    return [m.group('arrayitem') for m in re.finditer(RE_ARRAY_ITEM, m.group('arrayitems'))]

ERROR: line over 90 characters
#1133: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:110:
+        if typename and re.fullmatch(RE_IDENTIFIER, typename) and typename.startswith("TYPE_"):

WARNING: line over 80 characters
#1215: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:192:
+                yield self.append_field('instance_finalize', ids.lowercase+'_finalize')

ERROR: line over 90 characters
#1219: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:196:
+                yield self.prepend(('static void %s_class_init(ObjectClass *oc, void *data)\n'

WARNING: line over 80 characters
#1222: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:199:
+                yield self.append_field('class_init', ids.lowercase+'_class_init')

WARNING: line over 80 characters
#1228: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:205:
+    regexp = S(r'^[ \t]*type_init\(\s*', NAMED('name', RE_IDENTIFIER), r'\s*\);?[ \t]*\n')

WARNING: line over 80 characters
#1241: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:218:
+    #      of the function.  Tt will just look for "}" in the beginning of a line

WARNING: line over 80 characters
#1242: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:219:
+    regexp = S(r'static\s+void\s+', NAMED('name', RE_IDENTIFIER), r'\s*\(\s*void\s*\)\n',

ERROR: line over 90 characters
#1260: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:237:
+    regexp = S(r'^[ \t]*type_register_static\(&\s*', NAMED('name', RE_IDENTIFIER), r'\s*\);[ \t]*\n')

ERROR: line over 90 characters
#1272: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:249:
+            self.warn("can't find function where type_register_static(&%s) is called", self.name)

ERROR: line over 90 characters
#1300: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:277:
+    regexp = S(r'^[ \t]*TYPE_INFO\s*\(\s*', NAMED('name', RE_IDENTIFIER), r'\s*\)[ \t]*;?[ \t]*\n')

WARNING: line over 80 characters
#1358: FILE: scripts/codeconverter/codeconverter/regexps.py:15:
+    """Just add parenthesis around regexp(s), with optional name or repeat suffix"""

ERROR: line over 90 characters
#1428: FILE: scripts/codeconverter/codeconverter/regexps.py:85:
+RE_INCLUDE = S(r'^[ \t]*#[ \t]*include[ \t]+', NAMED('includepath', RE_INCLUDEPATH), r'[ \t]*\n')

WARNING: line over 80 characters
#1627: FILE: scripts/codeconverter/codeconverter/test_regexps.py:85:
+    assert fullmatch(RE_TI_FIELDS, r'''/* could be TYPE_SYS_BUS_DEVICE (or LPC etc) */

ERROR: line over 90 characters
#1767: FILE: scripts/codeconverter/codeconverter/test_regexps.py:225:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: line over 90 characters
#1782: FILE: scripts/codeconverter/codeconverter/test_regexps.py:240:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: line over 90 characters
#1809: FILE: scripts/codeconverter/codeconverter/test_regexps.py:267:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: adding a line without newline at end of file
#1885: FILE: scripts/codeconverter/codeconverter/utils.py:65:
+__all__ = ['not_optional', 'opt_compare', 'merge', 'line_col', 'LineAndColumn']

WARNING: line over 80 characters
#1911: FILE: scripts/codeconverter/converter.py:19:
+def process_all_files(parser: argparse.ArgumentParser, args: argparse.Namespace) -> None:

WARNING: line over 80 characters
#1972: FILE: scripts/codeconverter/converter.py:80:
+    p = argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter)

ERROR: adding a line without newline at end of file
#2005: FILE: scripts/codeconverter/converter.py:113:
+    main()

total: 29 errors, 49 warnings, 1934 lines checked

Patch 32/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

33/41 Checking commit cf5930853474 (Delete duplicate QOM typedefs)
34/41 Checking commit d99bc90946f3 (Use TYPE_INFO macro)
35/41 Checking commit d9a532959f24 (Move QOM typedefs and add missing includes)
36/41 Checking commit 2f68ebbda954 (Use DECLARE_*CHECKER* macros)
WARNING: line over 80 characters
#55: FILE: backends/cryptodev-vhost-user.c:43:
+DECLARE_INSTANCE_CHECKER(CryptoDevBackendVhostUser, CRYPTODEV_BACKEND_VHOST_USER,

WARNING: line over 80 characters
#3999: FILE: hw/net/xilinx_axienet.c:54:
+DECLARE_INSTANCE_CHECKER(XilinxAXIEnetStreamSlave, XILINX_AXI_ENET_CONTROL_STREAM,

total: 0 errors, 2 warnings, 9753 lines checked

Patch 36/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
37/41 Checking commit 6d51dbd39eff (Use DECLARE_*CHECKER* when possible (--force mode))
38/41 Checking commit e1d9baaad12b (Use OBJECT_DECLARE_TYPE where possible)
39/41 Checking commit 42307a974ffa (Use OBJECT_DECLARE_SIMPLE_TYPE when possible)
40/41 Checking commit 4ea785bc3a22 (crypto: use QOM macros for declaration/definition of secret types)
WARNING: line over 80 characters
#128: FILE: crypto/secret_keyring.c:30:
+                                   QCRYPTO_SECRET_KEYRING, QCRYPTO_SECRET_COMMON,

total: 0 errors, 1 warnings, 138 lines checked

Patch 40/41 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
41/41 Checking commit f1d2ad919d9e (crypto: use QOM macros for declaration/definition of TLS creds types)
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20200813222625.243136-1-ehabkost@redhat.com/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com

  parent reply	other threads:[~2020-08-13 23:02 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-13 22:25 [PATCH 00/41] qom: Automated conversion of type checking boilerplate Eduardo Habkost
2020-08-13 22:25 ` [PATCH 01/41] pl1110: Rename PL1110 enum Eduardo Habkost
2020-08-14 17:45   ` Philippe Mathieu-Daudé
2020-08-18 21:30     ` Eduardo Habkost
2020-08-19  2:45       ` Philippe Mathieu-Daudé
2020-08-13 22:25 ` [PATCH 02/41] e1000: Rename QOM class cast macros Eduardo Habkost
2020-08-17 15:49   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 03/41] megasas: " Eduardo Habkost
2020-08-17 15:53   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 04/41] vmw_pvscsi: " Eduardo Habkost
2020-08-17 15:54   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 05/41] aspeed_timer: Fix ASPEED_TIMER macro definition Eduardo Habkost
2020-08-14 17:47   ` Philippe Mathieu-Daudé
2020-08-17 15:54   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 06/41] allwinner-h3: Rename memmap enum constants Eduardo Habkost
2020-08-14 17:54   ` Philippe Mathieu-Daudé
2020-08-17 19:07     ` Niek Linnenbank
2020-08-18 21:43       ` Eduardo Habkost
2020-08-13 22:25 ` [PATCH 07/41] aspeed_soc: Rename memmap/irqmap " Eduardo Habkost
2020-08-13 22:25 ` [PATCH 08/41] opentitan: Rename memmap " Eduardo Habkost
2020-08-14 15:06   ` Alistair Francis
2020-08-14 17:56   ` Philippe Mathieu-Daudé
2020-08-17  9:52     ` Bin Meng
2020-08-21 18:53       ` Alistair Francis
2020-08-25 12:38         ` Bin Meng
2020-08-13 22:25 ` [PATCH 09/41] sifive_e: " Eduardo Habkost
2020-08-14 15:07   ` Alistair Francis
2020-08-13 22:25 ` [PATCH 10/41] sifive_u: " Eduardo Habkost
2020-08-14 15:09   ` Alistair Francis
2020-08-13 22:25 ` [PATCH 11/41] versatile: Fix typo in PCI_VPB_HOST definition Eduardo Habkost
2020-08-14 17:59   ` Philippe Mathieu-Daudé
2020-08-17 15:56   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 12/41] virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS Eduardo Habkost
2020-08-17  7:25   ` Cornelia Huck
2020-08-17 15:57   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 13/41] hvf: Add missing include Eduardo Habkost
2020-08-17 15:58   ` Daniel P. Berrangé
2020-08-18  7:12   ` Philippe Mathieu-Daudé
2020-08-18 10:29   ` Roman Bolshakov
2020-08-13 22:25 ` [PATCH 14/41] hcd-dwc2: Rename USB_*CLASS macros for consistency Eduardo Habkost
2020-08-14 18:00   ` Philippe Mathieu-Daudé
2020-08-17 15:58   ` Daniel P. Berrangé
2020-08-13 22:25 ` [PATCH 15/41] tulip: Move TulipState typedef to header Eduardo Habkost
2020-08-14 18:01   ` Philippe Mathieu-Daudé
2020-08-17 15:59   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 16/41] throttle-groups: Move ThrottleGroup " Eduardo Habkost
2020-08-14 18:01   ` Philippe Mathieu-Daudé
2020-08-17 15:59   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 17/41] pci: Move PCIBusClass typedef to pci.h Eduardo Habkost
2020-08-17 16:00   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 18/41] i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h Eduardo Habkost
2020-08-14 18:02   ` Philippe Mathieu-Daudé
2020-08-17 16:00   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 19/41] hvf: Move HVFState typedef to hvf.h Eduardo Habkost
2020-08-17 16:01   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 20/41] mcf_fec: Move mcf_fec_state typedef to header Eduardo Habkost
2020-08-17 16:02   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 21/41] s390_flic: Move KVMS390FLICState " Eduardo Habkost
2020-08-17  7:26   ` Cornelia Huck
2020-08-17 16:02   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 22/41] can_emu: Delete macros for non-existing typedef Eduardo Habkost
2020-08-14 18:03   ` Philippe Mathieu-Daudé
2020-08-17 16:02   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 23/41] nubus: Delete unused NUBUS_BRIDGE macro Eduardo Habkost
2020-08-14 18:03   ` Philippe Mathieu-Daudé
2020-08-17 16:03   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 24/41] platform-bus: Delete macros for non-existing typedef Eduardo Habkost
2020-08-17 16:03   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 25/41] qom: make object_ref/unref use a void * instead of Object * Eduardo Habkost
2020-08-13 22:26 ` [PATCH 26/41] qom: provide convenient macros for declaring and defining types Eduardo Habkost
2020-08-13 22:26 ` [PATCH 27/41] qom: Fix G_DEFINE_AUTOPTR_CLEANUP_FUNC Eduardo Habkost
2020-08-17 16:04   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 28/41] qom: Allow class type name to be specified in OBJECT_DECLARE* Eduardo Habkost
2020-08-17 16:06   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 29/41] qom: DECLARE_*_CHECKERS macros Eduardo Habkost
2020-08-17 16:06   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 30/41] qom: Make type checker functions accept const pointers Eduardo Habkost
2020-08-14 18:05   ` Philippe Mathieu-Daudé
2020-08-17 16:08   ` Daniel P. Berrangé
2020-08-18 20:56     ` Eduardo Habkost
2020-08-13 22:26 ` [PATCH 31/41] qom: TYPE_INFO macro Eduardo Habkost
2020-08-17 16:09   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 32/41] codeconverter: script for automating QOM code cleanups Eduardo Habkost
2020-08-13 22:26 ` [PATCH 33/41] [automated] Delete duplicate QOM typedefs Eduardo Habkost
2020-08-17 16:11   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 34/41] [automated] Use TYPE_INFO macro Eduardo Habkost
2020-08-17 16:14   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 35/41] [automated] Move QOM typedefs and add missing includes Eduardo Habkost
2020-08-17 16:16   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 36/41] [automated] Use DECLARE_*CHECKER* macros Eduardo Habkost
2020-08-17 16:17   ` Daniel P. Berrangé
2020-08-13 22:26 ` [PATCH 37/41] [automated] Use DECLARE_*CHECKER* when possible (--force mode) Eduardo Habkost
2020-08-17 16:29   ` Daniel P. Berrangé
2020-08-17 17:14     ` Eduardo Habkost
2020-08-13 22:26 ` [PATCH 38/41] [automated] Use OBJECT_DECLARE_TYPE where possible Eduardo Habkost
2020-08-13 22:26 ` [PATCH 39/41] [automated] Use OBJECT_DECLARE_SIMPLE_TYPE when possible Eduardo Habkost
2020-08-13 22:26 ` [PATCH 40/41] crypto: use QOM macros for declaration/definition of secret types Eduardo Habkost
2020-08-13 22:26 ` [PATCH 41/41] crypto: use QOM macros for declaration/definition of TLS creds types Eduardo Habkost
2020-08-13 23:01 ` no-reply [this message]
2020-08-13 23:03 ` [PATCH 00/41] qom: Automated conversion of type checking boilerplate no-reply
2020-08-13 23:07 ` no-reply
2020-08-18  9:59 ` Roman Bolshakov
2020-08-18 13:19   ` Eduardo Habkost

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=159735966266.30403.8079325840459292726@66eaa9a8a123 \
    --to=no-reply@patchew.org \
    --cc=berrange@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.