From: Greg KH <greg@kroah.com>
To: archive@jic23.retrosnub.co.uk
Cc: Jonathan Cameron <jic23@kernel.org>,
linux-iio@vger.kernel.org, lars@metafoo.de,
Jonathan Cameron <jic23@cam.ac.uk>
Subject: Re: [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels.
Date: Fri, 16 Dec 2011 08:24:57 -0800 [thread overview]
Message-ID: <20111216162457.GA5403@kroah.com> (raw)
In-Reply-To: <20111216085057.3DE4240390@saturn.retrosnub.co.uk>
On Fri, Dec 16, 2011 at 08:50:57AM +0000, archive@jic23.retrosnub.co.uk wrote:
> >And how are you guaranteing that anyone walking the list is doing so in
> >a "safe" manner? What's to keep an entry from being removed while some
> >random kernel code is walking it?
> >
> >Hint, don't allow direct access to this list, if you do so, you are in
> >for a world of hurt...
> The entire purpose of this list is to allow a small built in chunk of
> code to fill it up (typically from board files) whilst the rest of IIO can
> still be built as a module.
Why are you trying to do that?
> All but one function that touches this are in
> the IIO core modules. I can wrap this up but only at considerable cost
> (the wrappers will basically be the various list functions with a lock taken
> - I'll add one of those). I can write extreme warnings around it saying
> that it strictly for use by the IIO core. Would that be acceptable?
I still don't understand the point of the list. Why is this somehow
different from any other bus in the kernel in that the only way to
"register" a device is to actually register the device.
> Clearly this element should stay in the IIO directory once the rest of
> the header has gone into include/linux/iio/. I can do that division now
> so the separation is more apparent.
>
> So in summary two options exist.
>
> 1) Leave as is with a suitable warning and maybe rename to make it appear
> less friendly.
> 2) Wrap it so we end up with accessors that are pretty much the standard
> list accessors just with one parameter fixed and trivial locking. This isn't
> too painful but seems conceptually wrong to me.
> 3) Move everything that uses it into the bit that gets built in even
> if IIO is a module.
There should never be a "bit that is always built in if IIO is a
module", sorry.
> This last one will lead to an explosion in what is exported from IIO as we
> will still need to have the divide between the bit that can be modular and
> that which cannot somewhere! (which is why I didn't suggest it
> before).
Why are you trying to make such a strange distinction here? If a device
uses IIO, then you need to have the IIO core. It can be built as a
module or not, again, just like any other bus in the kernel.
greg k-h
next prev parent reply other threads:[~2011-12-16 16:24 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-05 21:55 [PATCH 0/5] staging:iio: inkern pull interfaces for staging tree Jonathan Cameron
2011-12-05 21:56 ` [PATCH 1/5] staging:iio: core: add datasheet_name to chan_spec Jonathan Cameron
2011-12-05 21:56 ` [PATCH 2/5] staging:iio:adc:max1363 add datasheet_name entries Jonathan Cameron
2011-12-05 21:56 ` [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels Jonathan Cameron
2011-12-08 19:40 ` Greg KH
2011-12-08 21:05 ` Jonathan Cameron
2011-12-10 17:08 ` Jonathan Cameron
2011-12-10 19:15 ` Greg KH
2011-12-16 8:50 ` archive
2011-12-16 16:24 ` Greg KH [this message]
2011-12-16 19:41 ` Jonathan Cameron
2011-12-16 22:23 ` Greg KH
2011-12-17 15:54 ` Jonathan Cameron
2011-12-22 17:41 ` Mark Brown
2011-12-05 21:56 ` [PATCH 4/5] staging:iio: move iio data return types into types.h for use by inkern Jonathan Cameron
2011-12-05 21:56 ` [PATCH 5/5] staging:iio::hwmon interface client driver Jonathan Cameron
-- strict thread matches above, loose matches on Subject: below --
2011-11-27 13:13 [PATCH 0/5] IIO/staging inkernel pull interface Jonathan Cameron
2011-11-27 13:14 ` [PATCH 3/5] staging:iio:core add in kernel interface mapping and getting IIO channels Jonathan Cameron
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=20111216162457.GA5403@kroah.com \
--to=greg@kroah.com \
--cc=archive@jic23.retrosnub.co.uk \
--cc=jic23@cam.ac.uk \
--cc=jic23@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.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 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.