Hello Maximilian Luz, The patch c167b9c7e3d6: "platform/surface: Add Surface Aggregator subsystem" from Dec 21, 2020, leads to the following static checker warning: drivers/platform/surface/aggregator/ssh_packet_layer.c:1697 ssh_ptl_rx_eval() warn: check likely/unlikely parens drivers/platform/surface/aggregator/ssh_packet_layer.c 1683 static size_t ssh_ptl_rx_eval(struct ssh_ptl *ptl, struct ssam_span *source) 1684 { 1685 struct ssh_frame *frame; 1686 struct ssam_span payload; 1687 struct ssam_span aligned; 1688 bool syn_found; 1689 int status; 1690 1691 /* Error injection: Modify data to simulate corrupt SYN bytes. */ 1692 ssh_ptl_rx_inject_invalid_syn(ptl, source); 1693 1694 /* Find SYN. */ 1695 syn_found = sshp_find_syn(source, &aligned); 1696 1697 if (unlikely(aligned.ptr - source->ptr) > 0) { The unlikely() macro returns 0/1. Smatch is suggesting that this should just be "if (unlikely((aligned.ptr - source->ptr) > 0)) {" but I'm not at all sure that that's correct. Isn't aligned being higher than source the normal case? 1698 ptl_warn(ptl, "rx: parser: invalid start of frame, skipping\n"); 1699 1700 /* 1701 * Notes: 1702 * - This might send multiple NAKs in case the communication regards, dan carpenter