public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Yafang Shao <laoar.shao@gmail.com>
Cc: rafael@kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] drivers: base: Introduce a new kernel parameter driver_sync_probe=
Date: Thu, 7 Dec 2023 11:19:25 +0100	[thread overview]
Message-ID: <2023120724-overstep-gesture-75be@gregkh> (raw)
In-Reply-To: <CALOAHbDtFKDh7C0NYeZ0xBV1z3AsNBDdnL7qRtWOrGbaU7W9VQ@mail.gmail.com>

On Wed, Dec 06, 2023 at 10:08:40PM +0800, Yafang Shao wrote:
> On Wed, Dec 6, 2023 at 9:31 PM Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> > On Wed, Dec 06, 2023 at 11:53:55AM +0000, Yafang Shao wrote:
> > > After upgrading our kernel from version 4.19 to 6.1, certain regressions
> > > occurred due to the driver's asynchronous probe behavior. Specifically,
> > > the SCSI driver transitioned to an asynchronous probe by default, resulting
> > > in a non-fixed root disk behavior. In the prior 4.19 kernel, the root disk
> > > was consistently identified as /dev/sda. However, with kernel 6.1, the root
> > > disk can be any of /dev/sdX, leading to issues for applications reliant on
> > > /dev/sda, notably impacting monitoring systems monitoring the root disk.
> >
> > Device names are never guaranteed to be stable, ALWAYS use a persistant
> > names like a filesystem label or other ways.  Look at /dev/disk/ for the
> > needed ways to do this properly.
> 
> The root disk is typically identified as /dev/sda or /dev/vda, right?

Depends on your system.  It can also be identified, in the proper way,
as /dev/disk/by-uuid/eef0abc1-4039-4c3f-a123-81fc99999993 if you want
(note, fake uuid, use your own disk uuid please.)

Why not do that?  That's the most stable and recommended way of doing
things.

> This is because the root disk, which houses the operating system,
> cannot be removed or hotplugged.

Not true at all, happens for many systems (think about how systems that
run their whole OS out of ram work...)

> Therefore, it usually remains as the
> first disk in the system. With the synchronous probe, the root disk
> maintains a stable and consistent identification.
> 
> >
> > > To address this, a new kernel parameter 'driver_sync_probe=' is introduced
> > > to enforce synchronous probe behavior for specific drivers.
> >
> > This should be a per-bus thing, not a driver-specific thing as drivers
> > for the same bus could have differing settings here which would cause a
> > mess.
> >
> > Please just revert the scsi bus functionality if you have had
> > regressions here, it's not a driver-core thing to do.
> 
> Are you suggesting a reversal of the asynchronous probe code in the
> SCSI driver?

For your broken scsi driver, yes.

> While reverting to synchronous probing could ensure
> stability, it's worth noting that asynchronous probing can potentially
> shorten the reboot duration under specific conditions. Thus, there
> might be some resistance to reverting this change as it offers
> performance benefits in certain scenarios. That's why I prefer to
> introduce a kernel parameter for it.

I don't want to add a new parameter that we need to support for forever
and add to the complexity of the system unless it is REALLY needed.
Please work with the scsi developers to resolve the issue for your
hardware, as it's been working for everyone else for well over a year
now, right?

thanks,

greg k-h

  reply	other threads:[~2023-12-07 10:19 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-06 11:53 [PATCH] drivers: base: Introduce a new kernel parameter driver_sync_probe= Yafang Shao
2023-12-06 13:31 ` Greg KH
2023-12-06 14:08   ` Yafang Shao
2023-12-07 10:19     ` Greg KH [this message]
2023-12-07 11:59       ` Yafang Shao
2023-12-07 12:12         ` Greg KH
2023-12-07 12:36           ` Yafang Shao
2023-12-08  5:36             ` Greg KH
2023-12-08  6:49               ` Yafang Shao
2023-12-08  7:15                 ` Greg KH
2023-12-08  7:26                   ` Yafang Shao

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=2023120724-overstep-gesture-75be@gregkh \
    --to=gregkh@linuxfoundation.org \
    --cc=laoar.shao@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox