All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kees Cook <keescook@chromium.org>
To: Jan Kara <jack@suse.cz>
Cc: Andy Shevchenko <andy.shevchenko@gmail.com>,
	Kees Cook <kees@kernel.org>, Baokun Li <libaokun1@huawei.com>,
	Josh Poimboeuf <jpoimboe@kernel.org>,
	Nathan Chancellor <nathan@kernel.org>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Ferry Toth <ftoth@exalondelft.nl>,
	linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [GIT PULL] ext2, quota, and udf fixes for 6.6-rc1
Date: Mon, 23 Oct 2023 09:08:09 -0700	[thread overview]
Message-ID: <202310230907.C39FED1BC@keescook> (raw)
In-Reply-To: <20231023121501.ae3ig3hzxqycglyt@quack3>

On Mon, Oct 23, 2023 at 02:15:01PM +0200, Jan Kara wrote:
> On Mon 23-10-23 14:45:05, Andy Shevchenko wrote:
> > On Sat, Oct 21, 2023 at 04:36:19PM -0700, Kees Cook wrote:
> > > On October 20, 2023 1:36:36 PM PDT, andy.shevchenko@gmail.com wrote:
> > > >That said, if you or anyone has ideas how to debug futher, I'm all ears!
> > > 
> > > I don't think this has been tried yet:
> > > 
> > > When I've had these kind of hard-to-find glitches I've used manual
> > > built-binary bisection. Assuming you have a source tree that works when built
> > > with Clang and not with GCC:
> > > - build the tree with Clang with, say, O=build-clang
> > > - build the tree with GCC, O=build-gcc
> > > - make a new tree for testing: cp -a build-clang build-test
> > > - pick a suspect .o file (or files) to copy from build-gcc into build-test
> > > - perform a relink: "make O=build-test" should DTRT since the copied-in .o
> > > files should be newer than the .a and other targets
> > > - test for failure, repeat
> > > 
> > > Once you've isolated it to (hopefully) a single .o file, then comes the
> > > byte-by-byte analysis or something similar...
> > > 
> > > I hope that helps! These kinds of bugs are super frustrating.
> > 
> > I'm sorry, but I can't see how this is not an error prone approach.
> > If it's a timing issue then the arbitrary object change may help and it doesn't
> > prove anything. As earlier I tried to comment out the error message, and it
> > worked with GCC as well. The difference is so little (according to Linus) that
> > it may not be suspectible. Maybe I am missing the point...
> 
> Given how reliably you can hit the problem with some kernels while you
> cannot hit them with others (only slightly different in a code that doesn't
> even get executed on your system) I suspect this is really more a code
> placement issue than a timing issue. Like if during the linking phase of
> vmlinux some code ends up at some position, the kernel fails, otherwise it
> boots fine. Not sure how to debug such thing though. Maybe some playing
> with the linker and the order of object files linked could reveal something
> but I'm just guessing.

Right -- in theory there will be some minimum subset of "from GCC"
objects that when used together in the otherwise "known good" build will
trip the failure.

-- 
Kees Cook

  reply	other threads:[~2023-10-23 16:08 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-30 10:24 [GIT PULL] ext2, quota, and udf fixes for 6.6-rc1 Jan Kara
2023-08-30 19:50 ` pr-tracker-bot
2023-10-17 10:27 ` Andy Shevchenko
2023-10-17 10:29   ` Andy Shevchenko
2023-10-17 10:32     ` Andy Shevchenko
2023-10-17 11:36       ` Jan Kara
2023-10-17 11:49         ` Andy Shevchenko
2023-10-17 11:46       ` Andy Shevchenko
2023-10-17 13:32         ` Jan Kara
2023-10-17 13:42           ` Andy Shevchenko
2023-10-17 14:50             ` Andy Shevchenko
2023-10-17 15:14               ` Andy Shevchenko
2023-10-17 15:34                 ` Andy Shevchenko
2023-10-17 16:02                   ` Andy Shevchenko
2023-10-18 18:46                     ` Jan Kara
2023-10-19  8:46                       ` Andy Shevchenko
2023-10-19 10:18                         ` Jan Kara
2023-10-19 12:01                           ` Andy Shevchenko
2023-10-19 14:12                             ` Andy Shevchenko
2023-10-19 14:49                               ` Andy Shevchenko
2023-10-19 14:44                             ` Andy Shevchenko
2023-10-19 16:42                               ` Josh Poimboeuf
2023-10-19 17:05                                 ` Andy Shevchenko
2023-10-19 17:26                                   ` Linus Torvalds
2023-10-19 17:51                                     ` Linus Torvalds
2023-10-19 18:10                                       ` Andy Shevchenko
2023-10-19 18:16                                         ` Andy Shevchenko
2023-10-19 18:43                                           ` Linus Torvalds
2023-10-20 14:51                                             ` Andy Shevchenko
2023-10-20 15:06                                               ` Andy Shevchenko
2023-10-20 15:12                                                 ` Andy Shevchenko
2023-10-20 17:26                                                   ` Linus Torvalds
2023-10-20 18:09                                                     ` Jan Kara
2023-10-21  1:48                                                 ` Baokun Li
2023-10-23 12:19                                                   ` Andy Shevchenko
2023-10-23 13:40                                                     ` Baokun Li
2023-10-20 17:23                                               ` Linus Torvalds
2023-10-20 18:29                                                 ` Andy Shevchenko
2023-10-20 18:31                                                   ` Andy Shevchenko
2023-10-20 19:43                                                   ` Linus Torvalds
2023-10-20 20:36                                                     ` andy.shevchenko
2023-10-21 23:36                                                       ` Kees Cook
2023-10-23 11:45                                                         ` Andy Shevchenko
2023-10-23 12:15                                                           ` Jan Kara
2023-10-23 16:08                                                             ` Kees Cook [this message]
2023-10-20 18:05                                               ` Jan Kara
2023-10-20 20:29                                                 ` andy.shevchenko
2023-10-20 11:07                                       ` Jan Kara
2025-01-28 13:24         ` Andy Shevchenko
2023-10-22 13:46   ` Linux regression tracking #adding (Thorsten Leemhuis)
2023-11-22  8:15     ` Linux regression tracking #update (Thorsten Leemhuis)
2023-11-24 16:47       ` Andy Shevchenko
2025-01-28 13:26         ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202310230907.C39FED1BC@keescook \
    --to=keescook@chromium.org \
    --cc=andy.shevchenko@gmail.com \
    --cc=ftoth@exalondelft.nl \
    --cc=jack@suse.cz \
    --cc=jpoimboe@kernel.org \
    --cc=kees@kernel.org \
    --cc=libaokun1@huawei.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=nathan@kernel.org \
    --cc=ndesaulniers@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.