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]
Message-ID: <20110705061153.GA1625@opensource.wolfsonmicro.com>
Date:	Mon, 4 Jul 2011 23:11:54 -0700
From:	Mark Brown <broonie@...nsource.wolfsonmicro.com>
To:	Grant Likely <grant.likely@...retlab.ca>
Cc:	Kay Sievers <kay.sievers@...y.org>,
	Greg Kroah-Hartman <gregkh@...e.de>,
	linux-kernel@...r.kernel.org, "Rafael J. Wysocki" <rjw@...k.pl>,
	"David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH] drivercore: Add driver probe deferral mechanism

On Mon, Jul 04, 2011 at 05:25:09PM -0600, Grant Likely wrote:
> On Mon, Jul 04, 2011 at 01:47:18PM -0700, Mark Brown wrote:

> > where we decide that everything is registered and we should run the
> > actual probe functions so it'll help with that.  Having a clock API we
> > can actually use off-SoC will help with a lot of the remaining stuff.

> Is that the bit that snd_soc_instantiate_cards() is doing?  If I made 
> snd_soc_register_card() attempt to instantiate immediately and return
> -EAGAIN if resources were not available, it looks like I should be
> able to remove the card_list entirely.  Would that be the right way to
> go about it?

That's exactly what I'd expect to do, yes.

> > I *think* we'll still going to need to have the infrastructure to deal
> > with running all the probes together, at least for a while, as the
> > current code really assumes that it's got some of the card wide stuff
> > around when all the devices get instantiated but I think if we were
> > starting from fresh this would be fairly good.

> I'm not sure what you're getting at here.  Are you talking about the
> infrastructure to keep track of codecs, DAIs and the like?  Yes, that
> infrastructure is still needed because the drivers need an api for
> each of the kinds of resources it needs.

Sort of, but I'm more thinking of the fact that we currently defer all
the "real" probes until the full card is ready - ideally these could all
be done as part of the device model probe, but this is something we can
improve over time rather than a critical thing.  The regmap API will
help here.

> > The only thing I can
> > think might be an issue is n way dependencies, but those mostly shake
> > out as being a dependency of the overall card on subdevices.  I'd need
> > to separate out the implementation issues from the assumptions to be
> > 100% clear if that was the case, though.

> Do you have an example?  I don't see any problems with complex
> dependencies providing that none of them are circular.  If, say,
> device A depends on B and C, and B also depends on C, then it may take
> a couple of cycles before everything gets probed, but it all still
> works correctly.

It's circular dependencies that worry me.  I don't have any concrete
examples in mainline now but I'm aware of systems that are more
complicated than mainline.  Things like clock trees that go out of one
device, into another, and back into to the first.  Like I say I think
these all shake out as simple dependencies of component devices on the
card so it's probably not a problem.
--
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