From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DAD01136672 for ; Sun, 22 Mar 2026 22:29:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774218569; cv=none; b=W9Q/QxxJndskdo5LMk9ntoWyMcDIyGoBnJ4VQmgtiLxSv4g0Yc1SA+w6VLJS5q4VKTg5pn7/w1yaaFSNFYy9oY6KqlA33J+7ywOXv7OURHMA1scqneZmhPMSTT/AWN0oblsoa9heiQXkEnb9fHwBunMU+Mpf7zAhmVXJgkwbYVo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774218569; c=relaxed/simple; bh=X739HwK7LuoM5YuosT4azlWBomavIl0xdYjF+OBNu3U=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Vt4oL085mdAw3+lF9VvUBJxhdngvTCNjTJeagbOHibN8VB4d8BFwYre5DbUraIS672Dc0Okg4XMn/JzdLsXHLqoftpcrV7cuZRfpCdrnHZOdm0EhzVpyn9dRSQ6qA08UbymUR+FmcAMXRQ0sK01Dvv10Qa7c2JhKUlTQsQ6KTi8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=9elements.com; spf=pass smtp.mailfrom=9elements.com; dkim=pass (2048-bit key) header.d=9elements.com header.i=@9elements.com header.b=eHiBks7x; arc=none smtp.client-ip=209.85.221.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=9elements.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=9elements.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=9elements.com header.i=@9elements.com header.b="eHiBks7x" Received: by mail-wr1-f48.google.com with SMTP id ffacd0b85a97d-43b44c0bcdbso3760812f8f.1 for ; Sun, 22 Mar 2026 15:29:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=9elements.com; s=google; t=1774218566; x=1774823366; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=abKdeP37jmBxjyAp2ZfplFH3x1dXJJ+xrhwGWjp3+ow=; b=eHiBks7xmNi06jOLzFaEcXZX5CavmL30/eeLHvT/0nyXG5UloVGIPsyRX11kww3nux czeUBZLg1U14FruPoevs4PPaFodhj+p/C5B0eb0Br6hp9F6eTh4XfUNYD6W3N2nGswnz yrLjxI6ySX+NE3Hn3veXulU8O64900PArIz7U5WE6bCHzEDpnZRXE3XX6KfnxphWzGRn ecw/nnOkkagb+ZGQJRB8q1mBhXfhOD2JCY6LZEXi7UGAcVA2BPzgbBKpcCuEyZYZWGCI IFit74bddK/jw4lyn6dfM51V/fQVL/qFhx2W3SP7zoymaRLkAskEHduTJbJx6v1G7ZCZ noCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774218566; x=1774823366; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=abKdeP37jmBxjyAp2ZfplFH3x1dXJJ+xrhwGWjp3+ow=; b=P6FMH9WoJn3cc/iU/8Ones4waUrPa9t04/ZiFCSqL7E3Lwgd9PxnytwSkqmsh2Gbx8 DUyd6sN6UFhqpwLMon/5uMq/LSjP6VIc9vP9CUG2YrDIKvcok5++7HxZDSY7g0Oqy7FD +TAxQ0ui2AdqkAwMCK8xkN+wvt9gyVneDHCSQ6ylwhBrMAn+lEwD7gxFA9wgru9jVBQ7 o0K3Y+gWcIFE5s7STJv9IAmrLm/XXTpV6NW2nKq5ZrYGLi74knNwkIQMa1PMoZmpcZKn +Rs2RvCLGD0CIbJTIbFXOJefYT6J2rEOuIIQynZiYpCIhnDIJNyZaNmWct7JwFg8dOq6 lGEg== X-Gm-Message-State: AOJu0Yzoc415QpdxKu7d681Br4GPpjGmqK0zkapvzxSdDm7OIdG6OI+g 56+757x1KZau2Nk2yZo10ouNBK/h0QbwXCDWa7NVA8HrqH7NqzaGS0fC5eI27aFnTtyhe1uj0Nv MyRoxhQ== X-Gm-Gg: ATEYQzzfO7WEoFUGO3+Q1zLh9eleVLtazMhPaG0hshMTPoQWUhLdR0d91aoGRxOscRx RvuNvLAjnG1zROhu1FR3U8xshvVdchuBocyjTo5hXmqtyb5GoIKKvk5B63EnQ7XWD9wUYqn4xQ1 JViF4vnIPpFDWAjOU7iQFVTj8KIKJC4/4t7jt1ppZ3Bho9Z17f/Xph5v+vlKWMdbv14hbyc/fkD 7vseheok1DBFx2acROM21+7fAtENjOoNexzGNy/q/yZyg1oncQCpryzH7qZIziUFv8o8NMBZjbx LC/DbInzEjpEOXKQGMVxFb+NztuQaBHXl7CKgflaDv9ydKz/7KC9+YWhAtmwi5Kj/nh3dquZZKk TEEcwEPEXJ4msnWW4xL0fjwNc1bRZM56vzgCQ8t4TNmRTDxCp5OwQIXVdGUue/5LqeeytPniqgn VbOgg3XUDyUdgLLwA9WBKX9Yk3YGmJ6HhUPCuZXR3yasVVzWpoXKGsOGD4ADYikdqJrukYMPMJF r+n3ppe8H7mVqFqBHagnuI= X-Received: by 2002:a05:6000:420e:b0:439:ddf9:a205 with SMTP id ffacd0b85a97d-43b64232830mr14726378f8f.10.1774218565627; Sun, 22 Mar 2026 15:29:25 -0700 (PDT) Received: from cyber-t14sg4 (ipservice-092-209-144-003.092.209.pools.vodafone-ip.de. [92.209.144.3]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43b64703650sm24191930f8f.20.2026.03.22.15.29.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Mar 2026 15:29:25 -0700 (PDT) Date: Sun, 22 Mar 2026 23:29:21 +0100 From: Michal Gorlas To: Kees Cook , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" Cc: linux-kernel@vger.kernel.org, Michal Gorlas Subject: Re: [PATCH] x86: replace char builtin_cmdline[COMMAND_LINE_SIZE] with struct seq_buf Message-ID: References: <20260322-x86-remove-strlcat-v1-1-4ff893595133@9elements.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260322-x86-remove-strlcat-v1-1-4ff893595133@9elements.com> Okay, so the Sashiko bot found out two regressions [1] that I missed out. First one about builtin_cmdline.buffer not being initialized for any early callers of __cmdline_find_option() and __cmdline_find_option_bool() could be fixed by letting builtin_cmdline be initialized like this: + char cmdline_buf[COMMAND_LINE_SIZE] = CONFIG_CMDLINE; + struct seq_buf builtin_cmdline = { + .buffer = cmdline_buf, + .size = COMMAND_LINE_SIZE, + .len = sizeof(CONFIG_CMDLINE) - 1, + }; But as for the second issue (handling case when (builtin_cmdline + boot_command_line) > COMMAND_LINE_SIZE), I am not sure whether even using seq_buf makes any sense at all. snprintf() (also mentioned as potential replacement for strlcat in [2]) would make more sense (I think) and the whole patch would suffice to this: if (builtin_cmdline[0]) { /* append boot loader cmdline to builtin */ - strlcat(builtin_cmdline, " ", COMMAND_LINE_SIZE); - strlcat(builtin_cmdline, boot_command_line, COMMAND_LINE_SIZE); + snprintf(builtin_cmdline, COMMAND_LINE_SIZE, "%s %s", + CONFIG_CMDLINE, boot_command_line); strscpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE); } Let me know whether this makes sense. Best, Michal [1] - https://sashiko.dev/#/patchset/20260322-x86-remove-strlcat-v1-1-4ff893595133%409elements.com [2] - https://github.com/KSPP/linux/issues/370