On Wednesday, March 26th, 2025 at 5:41 PM, Kent Overstreet <[email protected]> wrote:
> On Thu, Mar 27, 2025 at 12:36:25AM +0800, Alan Huang wrote: > > > On Mar 27, 2025, at 00:17, Kent Overstreet [email protected] wrote: > > > > > On Wed, Mar 26, 2025 at 09:19:06PM +0530, Bharadwaj Raju wrote: > > > > > > > On Wed, Mar 26, 2025 at 8:22 PM Kent Overstreet > > > > [email protected] wrote: > > > > > > > > > Or better, a new helper: when we're copying to a fixed size buffer we > > > > > really want to zero out the rest of the buffer - we don't just want a > > > > > single terminating nul. > > > > > > > > I believe strscpy_pad does this? > > > > > > > > https://docs.kernel.org/core-api/kernel-api.html#c.strscpy_pad > > > > > > almost, we don't want the 'required nul termination'; that's a > > > requirement at least for disk labels where we need to preserve existing > > > behaviour > > > > memcpy_and_pad :) > > > I'll take that patch :) I'll send a follow-up patch with memcpy_and_pad with the pad_char=0. Even though strscpy_pad does not require it, it does make the assumption that the destination buffer should be NUL-terminated, and it does some extra checks we don't need, so memcpy_and_pad is the way to go. I'll also replace the memcpy calls in bch2_trans_log_msg() and __bch2_fs_log_ms().
