lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 8 Sep 2010 10:44:32 -0600
From:	Grant Likely <grant.likely@...retlab.ca>
To:	Mark Brown <broonie@...nsource.wolfsonmicro.com>
Cc:	Jassi Brar <jassisinghbrar@...il.com>,
	Jassi Brar <jassi.brar@...sung.com>,
	David Brownell <dbrownell@...rs.sourceforge.net>,
	spi-devel-general@...ts.sourceforge.net,
	patches@...nsource.wolfsonmicro.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] spi/spi_s3c64xx: Move to subsys_initcall()

On Wed, Sep 08, 2010 at 05:22:51PM +0100, Mark Brown wrote:
> On Wed, Sep 08, 2010 at 10:12:45AM -0600, Grant Likely wrote:
> 
> [reflowed into 80 columns]

Sorry about that.  I'm in the process of switching to mutt+vim for my
mailer.  gmail is just not efficient enough when managing patches.

> > ... but it seems to me that there is a systemic problem in the way the
> > driver model is being used if SPI (and I2C) bus drivers need to be
> > 'special' in this regard.  What are the ordering requirements on things
> > like PMICs?  (My uneducated assumption is that other devices depend on
> > them being enabled before being probed.)  Would it be better to have a
> 
> Pretty much this, yes - if you might want to turn on your supplies
> when you're probed it's rather helpful if the subsystem needed to
> control the regulators is available when you probe.
> 
> > mechanism to defer probing on certain devices until other devices are
> > probed?  Then the relationships could be made explicit instead of the
> > rather coarse-grained (and potentially fragile) approach of changing the
> > init order.
> 
> That would be much nicer (and this is far from the only case where we
> need to deal with it) but it's a substantial change to core kernel
> infrastructure so it's being worked around like this.  Given how all the
> discussions about sorting and dependencies for suspend and resume went
> it might be an uphill struggle to do much more, especially while we are
> able to continue to deal with things fairly easily using the current
> infrastructure.
> 
> Doing dependencies could get pretty complicated, especially once you
> handle optional dependencies ("is this missing because it didn't probe
> yet or because it's just not there?") so it's not entirely clear to me
> that it's worth the hassle.

I think it might be doable.  I had a similar problem with Ethernet
MACs and PHYs where the PHY was on a completely separate bus from the
MAC with zero guarantees on probe order.  I had some code that made it
simple to use a bus notifier to defer MAC initialization until the
required phy turned up and was probed.  I eventually abandoned it
because accessing the PHY could be deferred until .ndo_open() time.
However, it would be easy to resurrect, and might be a reasonable
solution.  At the very least it is worth an investigation.

g.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ