[{"id":3681554,"web_url":"http://patchwork.ozlabs.org/comment/3681554/","msgid":"<362cafcd-2ce0-4da0-be6b-39a78c6b94b7@suse.de>","list_archive_url":null,"date":"2026-04-23T16:06:54","subject":"Re: [PATCH nft] evaluate: zap useless 0-shifts","submitter":{"id":90904,"url":"http://patchwork.ozlabs.org/api/people/90904/","name":"Fernando Fernandez Mancera","email":"fmancera@suse.de"},"content":"On 4/22/26 7:26 PM, Florian Westphal wrote:\n> There is a (not yet applied) kernel patch that rejects 0-shifts,\n> auto-suppress them at eval stage.\n> \n> Signed-off-by: Florian Westphal <fw@strlen.de>\n> ---\n\nReviewed-by: Fernando Fernandez Mancera <fmancera@suse.de>\n\nThat is quite elegant indeed, thanks!\n\n>   src/evaluate.c | 6 ++++++\n>   1 file changed, 6 insertions(+)\n> \n> diff --git a/src/evaluate.c b/src/evaluate.c\n> index 482708ae6191..8bb7b6095309 100644\n> --- a/src/evaluate.c\n> +++ b/src/evaluate.c\n> @@ -1454,6 +1454,12 @@ static int expr_evaluate_shift(struct eval_ctx *ctx, struct expr **expr)\n>   \t\t\t\t\t \"shifts exceeding %u bits are not supported\", UINT_MAX);\n>   \n>   \tshift = mpz_get_uint32(right->value);\n> +\tif (shift == 0) {\n> +\t\t*expr = expr_get(left);\n> +\t\texpr_free(op);\n> +\t\treturn 0;\n> +\t}\n> +\n>   \tif (ctx->stmt_len > left->len)\n>   \t\tmax_shift_len = ctx->stmt_len;\n>   \telse","headers":{"Return-Path":"\n <netfilter-devel+bounces-12163-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","netfilter-devel@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=suse.de header.i=@suse.de header.a=rsa-sha256\n header.s=susede2_rsa header.b=XSuNTkmJ;\n\tdkim=pass header.d=suse.de header.i=@suse.de header.a=ed25519-sha256\n header.s=susede2_ed25519 header.b=6vQ0TrNQ;\n\tdkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de\n header.a=rsa-sha256 header.s=susede2_rsa header.b=XSuNTkmJ;\n\tdkim=neutral header.d=suse.de header.i=@suse.de header.a=ed25519-sha256\n header.s=susede2_ed25519 header.b=6vQ0TrNQ;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.105.105.114; helo=tor.lore.kernel.org;\n envelope-from=netfilter-devel+bounces-12163-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de\n header.b=\"XSuNTkmJ\";\n\tdkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de\n header.b=\"6vQ0TrNQ\";\n\tdkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de\n header.b=\"XSuNTkmJ\";\n\tdkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de\n header.b=\"6vQ0TrNQ\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=195.135.223.130","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=suse.de","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=suse.de","smtp-out1.suse.de;\n\tnone"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org [172.105.105.114])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g1gwB3CwBz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 02:07:22 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 0F2B4304A9ED\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 16:07:02 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 13C22376BD3;\n\tThu, 23 Apr 2026 16:06:59 +0000 (UTC)","from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 5F25736C598\n\tfor <netfilter-devel@vger.kernel.org>; Thu, 23 Apr 2026 16:06:57 +0000 (UTC)","from imap1.dmz-prg2.suse.org (unknown [10.150.64.97])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby smtp-out1.suse.de (Postfix) with ESMTPS id 88F8F6A882;\n\tThu, 23 Apr 2026 16:06:55 +0000 (UTC)","from imap1.dmz-prg2.suse.org (localhost [127.0.0.1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 60957593A3;\n\tThu, 23 Apr 2026 16:06:55 +0000 (UTC)","from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167])\n\tby imap1.dmz-prg2.suse.org with ESMTPSA\n\tid iVjEFJ9D6mmXTgAAD6G6ig\n\t(envelope-from <fmancera@suse.de>); Thu, 23 Apr 2026 16:06:55 +0000"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1776960418; cv=none;\n b=ktJje9C1XCC3H4M3ycN/m+t19HExNaKTLiuuN+B7H/v5xKxoHJkU8YoCGfaRMyUOJsCLEXzWS19xYccvPl7dsrx7xwH/EoHilvMYeBu4XPiS/rvUK2Qw9zb9tih3e/Lm0r5yv5q/sogdOrWs19AZVi3R76rryuw12JDiqzG78MY=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1776960418; c=relaxed/simple;\n\tbh=gtLtCROUv3kWPSrNhwwWjN/REHDEftjbhmv2/aXAjVE=;\n\th=Message-ID:Date:MIME-Version:Subject:To:References:From:\n\t In-Reply-To:Content-Type;\n b=DmZZrOsRbzhc9hchjTZO4goUnOTNH7EAeoSjXMS2w1lijDi7F1QLTD4lqSPbmojg0o/clJDPl9RDhXzyFQ8ZKjeAHFKYGs0q4xpOs09RbRowwUvXhhmGjSp1JhumUSgcNpNM0AvZ+6WZO65DQTWAdWnj4mGh31zOkkQUyz7sDA0=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=suse.de;\n spf=pass smtp.mailfrom=suse.de;\n dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de\n header.b=XSuNTkmJ;\n dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de\n header.b=6vQ0TrNQ;\n dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de\n header.b=XSuNTkmJ;\n dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de\n header.b=6vQ0TrNQ; arc=none smtp.client-ip=195.135.223.130","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de;\n s=susede2_rsa;\n\tt=1776960415; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:\n\t mime-version:mime-version:content-type:content-type:\n\t content-transfer-encoding:content-transfer-encoding:\n\t in-reply-to:in-reply-to:references:references;\n\tbh=03mHhwrVErBBFYKVMjjyAWZhU0nBIHih8dnTq/STpMM=;\n\tb=XSuNTkmJ4YPT3JuTj6EHk6gYRJvvUfKn1Fs/EWIv285q1LDLNIv0rhpaAlGfeKfVG5QhP+\n\tLp3aeYe8rMZQ2ELlr8wDxogVlr4tVBiVdNEfaX6y4ckb0cJPHWd46yZKYaO9u78LGUaB8L\n\tqwcnycMUyCu/6IMTeUq2GINKo4aBnTw=","v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de;\n\ts=susede2_ed25519; t=1776960415;\n\th=from:from:reply-to:date:date:message-id:message-id:to:to:cc:\n\t mime-version:mime-version:content-type:content-type:\n\t content-transfer-encoding:content-transfer-encoding:\n\t in-reply-to:in-reply-to:references:references;\n\tbh=03mHhwrVErBBFYKVMjjyAWZhU0nBIHih8dnTq/STpMM=;\n\tb=6vQ0TrNQhvoye+YwgmF+D6S0JNFEvZ6uLFoeifkwv4CMJngz0pkzxq/YbGcaAw6l3/Cd3U\n\tnV4oDwUiMqzmp/Bg==","v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de;\n s=susede2_rsa;\n\tt=1776960415; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:\n\t mime-version:mime-version:content-type:content-type:\n\t content-transfer-encoding:content-transfer-encoding:\n\t in-reply-to:in-reply-to:references:references;\n\tbh=03mHhwrVErBBFYKVMjjyAWZhU0nBIHih8dnTq/STpMM=;\n\tb=XSuNTkmJ4YPT3JuTj6EHk6gYRJvvUfKn1Fs/EWIv285q1LDLNIv0rhpaAlGfeKfVG5QhP+\n\tLp3aeYe8rMZQ2ELlr8wDxogVlr4tVBiVdNEfaX6y4ckb0cJPHWd46yZKYaO9u78LGUaB8L\n\tqwcnycMUyCu/6IMTeUq2GINKo4aBnTw=","v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de;\n\ts=susede2_ed25519; t=1776960415;\n\th=from:from:reply-to:date:date:message-id:message-id:to:to:cc:\n\t mime-version:mime-version:content-type:content-type:\n\t content-transfer-encoding:content-transfer-encoding:\n\t in-reply-to:in-reply-to:references:references;\n\tbh=03mHhwrVErBBFYKVMjjyAWZhU0nBIHih8dnTq/STpMM=;\n\tb=6vQ0TrNQhvoye+YwgmF+D6S0JNFEvZ6uLFoeifkwv4CMJngz0pkzxq/YbGcaAw6l3/Cd3U\n\tnV4oDwUiMqzmp/Bg=="],"Message-ID":"<362cafcd-2ce0-4da0-be6b-39a78c6b94b7@suse.de>","Date":"Thu, 23 Apr 2026 18:06:54 +0200","Precedence":"bulk","X-Mailing-List":"netfilter-devel@vger.kernel.org","List-Id":"<netfilter-devel.vger.kernel.org>","List-Subscribe":"<mailto:netfilter-devel+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:netfilter-devel+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH nft] evaluate: zap useless 0-shifts","To":"Florian Westphal <fw@strlen.de>, netfilter-devel@vger.kernel.org","References":"<20260422172659.24184-1-fw@strlen.de>","Content-Language":"en-US","From":"Fernando Fernandez Mancera <fmancera@suse.de>","In-Reply-To":"<20260422172659.24184-1-fw@strlen.de>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","X-Spam-Score":"-4.30","X-Spam-Level":"","X-Spamd-Result":"default: False [-4.30 / 50.00];\n\tBAYES_HAM(-3.00)[100.00%];\n\tNEURAL_HAM_LONG(-1.00)[-1.000];\n\tNEURAL_HAM_SHORT(-0.20)[-0.999];\n\tMIME_GOOD(-0.10)[text/plain];\n\tRCVD_VIA_SMTP_AUTH(0.00)[];\n\tFUZZY_RATELIMITED(0.00)[rspamd.com];\n\tARC_NA(0.00)[];\n\tMIME_TRACE(0.00)[0:+];\n\tMID_RHS_MATCH_FROM(0.00)[];\n\tRCPT_COUNT_TWO(0.00)[2];\n\tRCVD_TLS_ALL(0.00)[];\n\tDKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519];\n\tFROM_HAS_DN(0.00)[];\n\tTO_DN_SOME(0.00)[];\n\tFROM_EQ_ENVFROM(0.00)[];\n\tTO_MATCH_ENVRCPT_ALL(0.00)[];\n\tRCVD_COUNT_TWO(0.00)[2];\n\tDBL_BLOCKED_OPENRESOLVER(0.00)[imap1.dmz-prg2.suse.org:helo,suse.de:mid,suse.de:email]","X-Spam-Flag":"NO"}}]