All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] Driver core / debugfs changes for 5.12-rc1
@ 2021-02-24 14:27 Greg KH
  2021-02-24 18:20 ` Linus Torvalds
  2021-02-24 18:46 ` pr-tracker-bot
  0 siblings, 2 replies; 5+ messages in thread
From: Greg KH @ 2021-02-24 14:27 UTC (permalink / raw)
  To: Linus Torvalds, Andrew Morton
  Cc: linux-kernel, Stephen Rothwell, Saravana Kannan

The following changes since commit 6ee1d745b7c9fd573fba142a2efdad76a9f1cb04:

  Linux 5.11-rc5 (2021-01-24 16:47:14 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/driver-core-5.12-rc1

for you to fetch changes up to 3e4c982f1ce75faf5314477b8da296d2d00919df:

  Revert "driver core: Set fw_devlink=on by default" (2021-02-19 08:51:04 +0100)

----------------------------------------------------------------
Driver core / debugfs update for 5.12-rc1

Here is the "big" driver core and debugfs update for 5.12-rc1

This set of driver core patches caused a bunch of problems in linux-next
for the past few weeks, when Saravana tried to set fw_devlink=on as the
default functionality.  This caused a number of systems to stop booting,
and lots of bugs were fixed in this area for almost all of the reported
systems, but this option is not ready to be turned on just yet for the
default operation based on this testing, so I've reverted that change at
the very end so we don't have to worry about regressions in 5.12.  We
will try to turn this on for 5.13 if testing goes better over the next
few months.

Other than the fixes caused by the fw_devlink testing in here, there's
not much more:
	- debugfs fixes for invalid input into debugfs_lookup()
	- kerneldoc cleanups
	- warn message if platform drivers return an error on their
	  remove callback (a futile effort, but good to catch).

All of these have been in linux-next for a while now, and the
regressions have gone away with the revert of the fw_devlink change.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

----------------------------------------------------------------
Arnd Bergmann (1):
      drivers/base: build kunit tests without structleak plugin

Bhaskar Chowdhury (1):
      drivers: base: power: Fix resposible -> responsible in runtime.c

Colin Ian King (1):
      drivers: base: Kconfig: fix spelling mistake "heterogenous" -> "heterogeneous"

Dave Jiang (1):
      driver core: auxiliary bus: Fix calling stage for auxiliary bus init

Furquan Shaikh (1):
      drivers: core: Detach device from power domain on shutdown

Geert Uytterhoeven (1):
      device.h: Remove bogus "the" in kerneldoc

Greg Kroah-Hartman (5):
      Revert "drivers: core: Detach device from power domain on shutdown"
      Merge 5.11-rc5 into driver-core-next
      debugfs: be more robust at handling improper input in debugfs_lookup()
      debugfs: do not attempt to create a new file before the filesystem is initalized
      Revert "driver core: Set fw_devlink=on by default"

Joe Pater (2):
      drivers: base: remove unused function find_bus()
      drivers: base: change 'driver_create_groups' to 'driver_add_groups' in printk

Saravana Kannan (20):
      driver core: Add debug logs for device link related probe deferrals
      driver core: Add device link support for INFERRED flag
      driver core: Have fw_devlink use DL_FLAG_INFERRED
      driver core: Handle cycles in device links created by fw_devlink
      driver core: Set fw_devlink=on by default
      of: property: Add fw_devlink support for "gpio" and "gpios" binding
      of: property: Add fw_devlink support for interrupts
      gpiolib: Bind gpio_device to a driver to enable fw_devlink=on by default
      gpiolib: Don't probe gpio_device if it's not the primary device
      of: property: Fix fw_devlink handling of interrupts/interrupts-extended
      driver core: fw_devlink: Detect supplier devices that will never be added
      of: property: Don't add links to absent suppliers
      driver core: Add fw_devlink.strict kernel param
      of: property: Add fw_devlink support for optional properties
      driver core: fw_devlink: Handle suppliers that don't use driver core
      irqdomain: Mark fwnodes when their irqdomain is added/removed
      PM: domains: Mark fwnodes when their powerdomain is added/removed
      clk: Mark fwnodes when their clock provider is added/removed
      of: irq: Fix the return value for of_irq_parse_one() stub
      of: property: fw_devlink: Ignore interrupts property for some configs

Stephen Rothwell (1):
      of: irq: make a stub for of_irq_parse_one()

Uwe Kleine-König (1):
      driver core: platform: Emit a warning if a remove callback returned non-zero

kernel test robot (1):
      driver core: fw_devlink_relax_cycle() can be static

 Documentation/admin-guide/kernel-parameters.txt |   5 +
 drivers/base/Kconfig                            |   2 +-
 drivers/base/auxiliary.c                        |  13 +-
 drivers/base/base.h                             |   5 +
 drivers/base/bus.c                              |  19 +--
 drivers/base/core.c                             | 159 +++++++++++++++++++++---
 drivers/base/init.c                             |   1 +
 drivers/base/platform.c                         |  11 +-
 drivers/base/power/domain.c                     |   2 +
 drivers/base/power/runtime.c                    |   2 +-
 drivers/base/test/Makefile                      |   1 +
 drivers/clk/clk.c                               |   3 +
 drivers/gpio/gpiolib-of.c                       |  11 ++
 drivers/gpio/gpiolib-of.h                       |   5 +
 drivers/gpio/gpiolib.c                          |  52 ++++++--
 drivers/of/property.c                           |  59 +++++++--
 fs/debugfs/inode.c                              |   5 +-
 include/linux/device.h                          |   2 +
 include/linux/device/driver.h                   |   2 +-
 include/linux/fwnode.h                          |  20 ++-
 include/linux/of_irq.h                          |   9 +-
 kernel/irq/irqdomain.c                          |   2 +
 22 files changed, 321 insertions(+), 69 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Driver core / debugfs changes for 5.12-rc1
  2021-02-24 14:27 [GIT PULL] Driver core / debugfs changes for 5.12-rc1 Greg KH
@ 2021-02-24 18:20 ` Linus Torvalds
  2021-02-27 14:26   ` Greg KH
  2021-02-24 18:46 ` pr-tracker-bot
  1 sibling, 1 reply; 5+ messages in thread
From: Linus Torvalds @ 2021-02-24 18:20 UTC (permalink / raw)
  To: Greg KH
  Cc: Andrew Morton, Linux Kernel Mailing List, Stephen Rothwell,
	Saravana Kannan

On Wed, Feb 24, 2021 at 6:27 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
>  [..] I've reverted that change at
> the very end so we don't have to worry about regressions in 5.12.

Side note: it would have been really nice to see links to the actual
problem reports in the revert commit.

Yes, there's a "Link:" line there, but that points to the
less-than-useful patch submission for the revert, not to the actual
_reasons_ for the revert.

Now I'm looking at that revert, and I have absolutely no idea why it
happened. Only a very vague "there are still reported regressions
happening".

I've pulled it, but wanted to just point out that when there's some
fairly fundamental revert like this, it really would be good to link
to the problems, so that when people try to re-enable it, they have
the history for why it didn't work the first time.

Now all that history is basically lost (well, hopefully Saravana and
you actually remember, but you get my point).

               Linus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Driver core / debugfs changes for 5.12-rc1
  2021-02-24 14:27 [GIT PULL] Driver core / debugfs changes for 5.12-rc1 Greg KH
  2021-02-24 18:20 ` Linus Torvalds
@ 2021-02-24 18:46 ` pr-tracker-bot
  1 sibling, 0 replies; 5+ messages in thread
From: pr-tracker-bot @ 2021-02-24 18:46 UTC (permalink / raw)
  To: Greg KH
  Cc: Linus Torvalds, Andrew Morton, linux-kernel, Stephen Rothwell,
	Saravana Kannan

The pull request you sent on Wed, 24 Feb 2021 15:27:14 +0100:

> git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/driver-core-5.12-rc1

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/7ac1161c2789be25d0d206e831b051f43028866e

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Driver core / debugfs changes for 5.12-rc1
  2021-02-24 18:20 ` Linus Torvalds
@ 2021-02-27 14:26   ` Greg KH
  2021-03-01  7:41     ` Saravana Kannan
  0 siblings, 1 reply; 5+ messages in thread
From: Greg KH @ 2021-02-27 14:26 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Andrew Morton, Linux Kernel Mailing List, Stephen Rothwell,
	Saravana Kannan

On Wed, Feb 24, 2021 at 10:20:44AM -0800, Linus Torvalds wrote:
> On Wed, Feb 24, 2021 at 6:27 AM Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> >  [..] I've reverted that change at
> > the very end so we don't have to worry about regressions in 5.12.
> 
> Side note: it would have been really nice to see links to the actual
> problem reports in the revert commit.

Odd, this showed up in my gmail spam folder, just saw this now :(

> Yes, there's a "Link:" line there, but that points to the
> less-than-useful patch submission for the revert, not to the actual
> _reasons_ for the revert.
> 
> Now I'm looking at that revert, and I have absolutely no idea why it
> happened. Only a very vague "there are still reported regressions
> happening".
> 
> I've pulled it, but wanted to just point out that when there's some
> fairly fundamental revert like this, it really would be good to link
> to the problems, so that when people try to re-enable it, they have
> the history for why it didn't work the first time.
> 
> Now all that history is basically lost (well, hopefully Saravana and
> you actually remember, but you get my point).

Sorry, the history is on the original commit Link that was reverted, and
in lots of other emails on lkml over the past few weeks.  Next time I'll
include links to those threads as well.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [GIT PULL] Driver core / debugfs changes for 5.12-rc1
  2021-02-27 14:26   ` Greg KH
@ 2021-03-01  7:41     ` Saravana Kannan
  0 siblings, 0 replies; 5+ messages in thread
From: Saravana Kannan @ 2021-03-01  7:41 UTC (permalink / raw)
  To: Greg KH
  Cc: Linus Torvalds, Andrew Morton, Linux Kernel Mailing List,
	Stephen Rothwell

On Sat, Feb 27, 2021 at 6:27 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Wed, Feb 24, 2021 at 10:20:44AM -0800, Linus Torvalds wrote:
> > On Wed, Feb 24, 2021 at 6:27 AM Greg KH <gregkh@linuxfoundation.org> wrote:
> > >
> > >  [..] I've reverted that change at
> > > the very end so we don't have to worry about regressions in 5.12.
> >
> > Side note: it would have been really nice to see links to the actual
> > problem reports in the revert commit.
>
> Odd, this showed up in my gmail spam folder, just saw this now :(

Yup, went to spam for me too!

> > Yes, there's a "Link:" line there, but that points to the
> > less-than-useful patch submission for the revert, not to the actual
> > _reasons_ for the revert.
> >
> > Now I'm looking at that revert, and I have absolutely no idea why it
> > happened. Only a very vague "there are still reported regressions
> > happening".
> >
> > I've pulled it, but wanted to just point out that when there's some
> > fairly fundamental revert like this, it really would be good to link
> > to the problems, so that when people try to re-enable it, they have
> > the history for why it didn't work the first time.
> >
> > Now all that history is basically lost (well, hopefully Saravana and
> > you actually remember, but you get my point).
>
> Sorry, the history is on the original commit Link that was reverted, and
> in lots of other emails on lkml over the past few weeks.  Next time I'll
> include links to those threads as well.

These are links of interest. All the fixes are at least linked to from
these two threads. And if they are not, they all mention "Fixes" and
list the commit that was reverted. So it's all trackable if we really
find the need to do so in the future.

The original series that set fw_devlink=on where most of the issues
were reported.
[1] - https://lore.kernel.org/lkml/20201218031703.3053753-1-saravanak@google.com/

This is the series that made fw_devlink=on more forgiving. And a few
issues were reported there.
[2] - https://lore.kernel.org/lkml/20210205222644.2357303-1-saravanak@google.com/

To summarize, the issues fell into one of these types:
* Drivers would initialize the hardware without actually probing a
struct device that existed AND didn't use the existing mechanisms (Eg:
IRQCHIP_DECLARE) meant to allow this. So fw_devlink makes their
consumers wait forever. Bunch of driver fixes for this, but [2] also
workaround most of these by making fw_devlink/fwnode code a bit
smarter.
* Drivers would initialize the hardware without creating a struct
device at all despite the DT node having a compatible property. [2]
handles this by making fw_devlink a bit smarter.
* Some device link status not getting updated correctly when a driver
is force bound with a device (I know the fix, haven't gotten around to
submitting it).
* fw_devlink causing some probe reordering that should technically be
harmless (all suppliers probed before the consumer), but drivers still
don't like it. Bunch of fixes + reducing/removing unnecessary
reordering of probes by fw_devlink (latter is under review).
* Spinlock/corruption errors that fw_devlink exposed by reordering
some probes, but the actual issue was unrelated to fw_devlink.

So it was a mix of making fw_devlink smarter to deal with existing
code and fixing some drivers.

Thanks,
Saravana

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-03-01  7:43 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-24 14:27 [GIT PULL] Driver core / debugfs changes for 5.12-rc1 Greg KH
2021-02-24 18:20 ` Linus Torvalds
2021-02-27 14:26   ` Greg KH
2021-03-01  7:41     ` Saravana Kannan
2021-02-24 18:46 ` pr-tracker-bot

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.