Re: fsck segfaults on rpi3 running 13-stable (and on 14-CURRENT analyzing the same file system that resulted from the 13-STABLE crash)

bob prohaska <[email protected]>
Newsgroups gmane.os.freebsd.devel.arm
Message-ID <[email protected]>
On Wed, Feb 15, 2023 at 09:40:51AM -0800, Mark Millard wrote:
> 
> Looking in my /usr/main-src/sbin/fsck_ffs/inode.c
> I see that the original file has a leading tab
> instead of spaces.
> 
> The following mostly ignores the 1st column that
> should have a space, -, or + in the diff output for
> the file-content lines. It is mostly about the text
> after the first column.
> 
> So, if you have spaces instead after the first column
> for the lines that start with a space, those lines
> will not match, leading to a rejection for the
> context matching done by patch.

Replacing spaces with tabs allowed patch to find the 
location, but it still fails with 
patch: **** malformed patch at line 5: printf("SIZE=%ju ", (uintmax_t)DIP(dp, di_size));

Editing by hand looks like a good way to drive myself crazy 8-)

I take it the goal is to find the lines
        printf("SIZE=%ju ", (uintmax_t)DIP(dp, di_size));
        t = DIP(dp, di_mtime);
        p = ctime(&t);
delete the line 
	printf("MTIME=%12.12s %4.4s ", &p[4], &p[20]);
and add the four lines
	if (p == NULL)
               printf("MTIME=invalid ");
       else
	       printf("MTIME=%12.12s %4.4s ", &p[4], &p[20]);       

Do I at least correctly understand the intent of the patch?

Thanks for all your patience, it might be best to wait for
a fix to be committed to src. 

bob prohaska
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.