Now that zxdh is main branch, ran the PVS studio analyzer over it and reported many new warnings.


MESSAGES
LocationCodeMessage
Fails/Info
zxdh_common.c (223)
V1032The pointer 'recv_buf' is cast to a more strictly aligned pointer type.
zxdh_ethdev.c (816)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 813, 816.
zxdh_ethdev.c (866)
V560A part of conditional expression is always false: rxmode->mq_mode != RTE_ETH_MQ_RX_NONE.
zxdh_ethdev.c (709)
V522There might be dereferencing of a potential null pointer 'hdr_mz'.
zxdh_ethdev.c (724)
V522There might be dereferencing of a potential null pointer 'txvq'.
zxdh_ethdev.c (651)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_ethdev.c (651)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_ethdev.c (1322)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_ethdev.c (107)
V1027Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.
zxdh_ethdev.c (1188)
V1027Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.
zxdh_ethdev.c (1452)
V1027Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.
zxdh_ethdev_ops.c (723)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 721, 723.
zxdh_ethdev_ops.c (744)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 742, 744.
zxdh_ethdev_ops.c (769)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 767, 769.
zxdh_ethdev_ops.c (791)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 789, 791.
zxdh_ethdev_ops.c (818)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 816, 818.
zxdh_ethdev_ops.c (840)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 838, 840.
zxdh_ethdev_ops.c (1072)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1070, 1072.
zxdh_ethdev_ops.c (1090)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1088, 1090.
zxdh_ethdev_ops.c (1186)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1184, 1186.
zxdh_ethdev_ops.c (1212)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1210, 1212.
zxdh_ethdev_ops.c (357)
V526The 'memcmp' function returns 0 if corresponding buffers are equal. Consider examining the condition for mistakes.
zxdh_ethdev_ops.c (1283)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The UNSIGNED integer type argument is expected.
zxdh_ethdev_ops.c (1485)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The UNSIGNED integer type argument is expected.
zxdh_ethdev_ops.c (1537)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The UNSIGNED integer type argument is expected.
zxdh_ethdev_ops.c (329)
V1048The 'mac_filter->filter_flag' variable was assigned the same value.
zxdh_msg.c (203)
V547Expression 'lock_id >= (511)' is always false.
zxdh_msg.c (463)
V557Array overrun is possible. The value of 'dst_index' index could reach 255.
zxdh_msg.c (463)
V557Array overrun is possible. The value of 'src_index' index could reach 255.
zxdh_msg.c (464)
V557Array overrun is possible. The value of 'dst_index' index could reach 255.
zxdh_msg.c (464)
V557Array overrun is possible. The value of 'src_index' index could reach 255.
zxdh_msg.c (579)
V1032The pointer 'msg_header' is cast to a more strictly aligned pointer type.
zxdh_msg.c (592)
V1032The pointer 'msg_header' is cast to a more strictly aligned pointer type.
zxdh_msg.c (664)
V1032The pointer 'tmp_msg_header' is cast to a more strictly aligned pointer type.
zxdh_msg.c (397)
V1037Two or more case-branches perform the same actions. Check lines: 397, 400
zxdh_msg.c (394)
V525The code contains the collection of similar blocks. Check items '2', '1', '1', '0' in lines 394, 397, 400, 403.
zxdh_np.c (1068)
V614Potentially uninitialized variable 'temp_idx' used.
zxdh_np.c (1524)
V785Constant expression in switch statement.
zxdh_np.c (1925)
V1032The pointer 'form_buff' is cast to a more strictly aligned pointer type.
zxdh_np.c (224)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (285)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (385)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (388)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (392)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (397)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (588)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (588)
V576Incorrect format. Consider checking the seventh actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (588)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (604)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (714)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (714)
V576Incorrect format. Consider checking the seventh actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (714)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (778)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (783)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (806)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (838)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (909)
V576Incorrect format. Consider checking the seventh actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (949)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1158)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1166)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1317)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1326)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1326)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1438)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1623)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1672)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1738)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1761)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1766)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1812)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1812)
V576Incorrect format. Consider checking the sixth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1832)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1877)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1911)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (2010)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (2040)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_np.c (1353)
V1048The 'rc' variable was assigned the same value.
zxdh_np.c (1365)
V1048The 'rc' variable was assigned the same value.
zxdh_np.c (2049)
V1051Consider checking for misprints. It's possible that the 'ppu_eram_baddr' should be checked here.
zxdh_pci.c (181)
V519The 'notify_off' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 180, 181.
zxdh_pci.c (422)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_queue.c (187)
V763Parameter 'nb_desc' is always rewritten in function body before being used.
zxdh_queue.c (230)
V763Parameter 'nb_desc' is always rewritten in function body before being used.
zxdh_queue.c (118)
V547Expression 'queue_type == ZXDH_VTNET_TQ' is always true.
zxdh_queue.c (243)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The UNSIGNED integer type argument is expected.
zxdh_queue.h (305)
V1048The 'vq->vq_packed.event_flags_shadow' variable was assigned the same value.
zxdh_tables.c (350)
V519The 'ret' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 341, 350.
zxdh_tables.c (58)
V547Expression '!hw->is_pf' is always false.
zxdh_tables.c (64)
V547Expression '!port_attr.rss_enable' is always true.
zxdh_tables.c (34)
V1032The pointer 'port_attr' is cast to a more strictly aligned pointer type.
zxdh_tables.c (98)
V1032The pointer '& port_attr' is cast to a more strictly aligned pointer type.
zxdh_tables.c (200)
V1032The pointer 'port_attr' is cast to a more strictly aligned pointer type.
zxdh_tables.c (741)
V1032The pointer '& rss_vqid' is cast to a more strictly aligned pointer type.
zxdh_tables.c (765)
V1032The pointer '& rss_vqid' is cast to a more strictly aligned pointer type.
zxdh_tables.c (146)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The UNSIGNED integer type argument is expected.
zxdh_tables.c (289)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_tables.c (324)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.
zxdh_tables.c (353)
V576Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.