From: Greg KH <gregkh@linuxfoundation.org>
To: Arun MURTHY <arun.murthy@stericsson.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"alan@lxorguk.ukuu.org.uk" <alan@lxorguk.ukuu.org.uk>
Subject: Re: [PATCHv4 1/4] modem_shm: Add Modem Access Framework
Date: Mon, 1 Oct 2012 08:59:40 -0700 [thread overview]
Message-ID: <20121001155940.GA1957@kroah.com> (raw)
In-Reply-To: <F45880696056844FA6A73F415B568C695B6962C153@EXDCVYMBSTM006.EQ1STM.local>
On Mon, Oct 01, 2012 at 07:30:38AM +0200, Arun MURTHY wrote:
> > On Fri, Sep 28, 2012 at 01:35:01PM +0530, Arun Murthy wrote:
> > > +#include <linux/module.h>
> > > +#include <linux/slab.h>
> > > +#include <linux/err.h>
> > > +#include <linux/printk.h>
> > > +#include <linux/modem_shm/modem.h>
> > > +
> > > +static struct class *modem_class;
> >
> > What's wrong with a bus_type instead?
>
> Can I know the advantage of using bus_type over class?
You have devices living on a bus, and it's much more descriptive than a
class (which we are going to eventually get rid of one of these
days...).
Might I ask why you choose a class over a bus_type?
> > > +int modem_release(struct modem_desc *mdesc) {
> > > + if (!mdesc->release)
> > > + return -EFAULT;
> > > +
> > > + if (modem_is_requested(mdesc)) {
> > > + atomic_dec(&mdesc->mclients->cnt);
> > > + if (atomic_read(&mdesc->use_cnt) == 1) {
> > > + mdesc->release(mdesc);
> > > + atomic_dec(&mdesc->use_cnt);
> > > + }
> >
> > Eeek, why aren't you using the built-in reference counting that the struct
> > device provided to you, and instead are rolling your own? This happens in
> > many places, why?
>
> My usage of counters over here is for each modem there are many clients.
> Each of the clients will have a ref to modem_desc. Each of them use this for
> requesting and releasing the modem. One counter for tracking the request
> and release for each client which is done by variable 'cnt' in struct clients.
> The counter use_cnt is used for tracking the modem request/release irrespective
> of the clients and counter cli_cnt is used for restricting the modem_get to
> the no of clients defined in no_clients.
>
> So totally 3 counter one for restricting the usage of modem_get by clients,
> second for restricting modem request/release at top level, and 3rd for
> restricting modem release/request for per client per modem basis.
>
> Can you let me know if the same can be achieved by using built-in ref
> counting?
Yes, because you don't need all of those different levels, just stick
with one and you should be fine. :)
thanks,
greg k-h
next prev parent reply other threads:[~2012-10-01 15:59 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-28 8:05 [PATCHv4 0/4] modem_shm: U8500 SHaRed Memory driver(SHRM) Arun Murthy
2012-09-28 8:05 ` [PATCHv4 1/4] modem_shm: Add Modem Access Framework Arun Murthy
2012-09-28 16:00 ` Greg KH
2012-10-01 5:30 ` Arun MURTHY
2012-10-01 6:33 ` anish singh
2012-10-01 6:57 ` Arun MURTHY
2012-10-01 6:57 ` Arun MURTHY
2012-10-01 8:57 ` anish singh
2012-10-01 9:12 ` Arun MURTHY
2012-10-01 9:12 ` Arun MURTHY
2012-10-01 15:59 ` Greg KH [this message]
2012-10-03 3:54 ` Arun MURTHY
2012-10-03 4:17 ` anish singh
2012-10-03 4:31 ` Arun MURTHY
2012-10-03 4:31 ` Arun MURTHY
2012-10-03 15:17 ` Greg KH
2012-10-04 4:08 ` Arun MURTHY
2012-10-09 5:37 ` Arun MURTHY
2012-10-09 13:59 ` Greg KH
2012-10-11 9:37 ` Arun MURTHY
2012-10-11 11:01 ` Greg KH
2012-09-28 8:05 ` [PATCHv4 2/4] modem_shm: Register u8500 client for MAF Arun Murthy
2012-09-28 8:05 ` [PATCHv4 3/4] modem_shm: u8500-shm: U8500 Shared Memory Driver Arun Murthy
2012-09-28 8:05 ` [PATCHv4 4/4] Doc: Add u8500_shrm document Arun Murthy
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=20121001155940.GA1957@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=arun.murthy@stericsson.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@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.