From: Joe Perches <joe@perches.com>
To: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
Arnd Bergmann <arnd@arndb.de>
Cc: devel@driverdev.osuosl.org, linux-arch@vger.kernel.org,
linux-scsi@vger.kernel.org, iss_storagedev@hp.com,
linux-rdma@vger.kernel.org, netdev@vger.kernel.org,
linux-atm-general@lists.sourceforge.net,
linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org,
dri-devel@lists.freedesktop.org, linux-crypto@vger.kernel.org,
linux-media@vger.kernel.org, linux-eata@i-connect.net
Subject: Re: [PATCH 00/22] Add and use pci_zalloc_consistent
Date: Mon, 23 Jun 2014 12:13:29 -0700 [thread overview]
Message-ID: <1403550809.15811.13.camel@joe-AO725> (raw)
In-Reply-To: <20140623172512.GA1390@garbanzo.do-not-panic.com>
On Mon, 2014-06-23 at 10:25 -0700, Luis R. Rodriguez wrote:
> On Mon, Jun 23, 2014 at 06:41:28AM -0700, Joe Perches wrote:
> > Adding the helper reduces object code size as well as overall
> > source size line count.
> >
> > It's also consistent with all the various zalloc mechanisms
> > in the kernel.
> >
> > Done with a simple cocci script and some typing.
>
> Awesome, any chance you can paste in the SmPL? Also any chance
> we can get this added to a make coccicheck so that maintainers
> moving forward can use that to ensure that no new code is
> added that uses the old school API?
Not many of these are recent.
Arnd Bergmann reasonably suggested that the pci_alloc_consistent
api be converted the the more widely used dma_alloc_coherent.
https://lkml.org/lkml/2014/6/23/513
> Shouldn't these drivers just use the normal dma-mapping API now?
and I replied:
https://lkml.org/lkml/2014/6/23/525
> Maybe. I wouldn't mind.
> They do seem to have a trivial bit of unnecessary overhead for
> hwdev == NULL ? NULL : &hwdev->dev
Anyway, here's the little script.
I'm not sure it's worthwhile to add it though.
$ cat ./scripts/coccinelle/api/alloc/pci_zalloc_consistent.cocci
///
/// Use pci_zalloc_consistent rather than
/// pci_alloc_consistent followed by memset with 0
///
/// This considers some simple cases that are common and easy to validate
/// Note in particular that there are no ...s in the rule, so all of the
/// matched code has to be contiguous
///
/// Blatantly cribbed from: scripts/coccinelle/api/alloc/kzalloc-simple.cocci
@@
type T, T2;
expression x;
expression E1,E2,E3;
statement S;
@@
- x = (T)pci_alloc_consistent(E1,E2,E3);
+ x = pci_zalloc_consistent(E1,E2,E3);
if ((x==NULL) || ...) S
- memset((T2)x,0,E2);
next prev parent reply other threads:[~2014-06-23 19:13 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-23 13:41 [PATCH 00/22] Add and use pci_zalloc_consistent Joe Perches
2014-06-23 13:41 ` [PATCH 02/22] atm: Use pci_zalloc_consistent Joe Perches
2014-06-23 13:41 ` [PATCH 08/22] amd: " Joe Perches
2014-06-23 18:02 ` Don Fry
2014-06-23 19:15 ` Joe Perches
2014-06-23 21:05 ` [PATCH V2 " Joe Perches
2014-06-23 21:36 ` [PATCH] amd: Neaten and remove unnecessary OOM messages Joe Perches
2014-06-23 22:42 ` Don Fry
2014-06-25 23:32 ` David Miller
2014-06-23 22:22 ` [PATCH V2 08/22] amd: Use pci_zalloc_consistent Don Fry
2014-06-25 4:49 ` Guenter Roeck
2014-06-25 4:59 ` Joe Perches
2014-06-25 23:55 ` [PATCH V2] pcnet32: Neaten and remove unnecessary OOM messages Joe Perches
2014-07-01 19:19 ` David Miller
2014-07-01 19:26 ` Joe Perches
2014-06-25 23:51 ` [PATCH V3 08/22] pcnet32: Use pci_zalloc_consistent Joe Perches
2014-06-23 13:41 ` [PATCH 09/22] atl1e: " Joe Perches
2014-06-23 13:41 ` [PATCH 10/22] enic: " Joe Perches
2014-06-26 6:27 ` Govindarajulu Varadarajan
2014-06-23 13:41 ` [PATCH 11/22] sky2: " Joe Perches
2014-06-23 13:41 ` [PATCH 12/22] micrel: " Joe Perches
2014-06-23 13:41 ` [PATCH 13/22] qlogic: " Joe Perches
2014-06-23 13:41 ` [PATCH 14/22] irda: " Joe Perches
2014-06-23 13:41 ` [PATCH 15/22] ipw2100: " Joe Perches
2014-06-23 13:41 ` [PATCH 16/22] mwl8k: " Joe Perches
2014-06-23 13:41 ` [PATCH 17/22] rtl818x: " Joe Perches
2014-06-23 13:41 ` [PATCH 18/22] rtlwifi: " Joe Perches
2014-06-23 17:25 ` [PATCH 00/22] Add and use pci_zalloc_consistent Luis R. Rodriguez
2014-06-23 19:13 ` Joe Perches [this message]
2014-06-23 23:27 ` Julian Calaby
2014-06-24 11:32 ` Johannes Berg
[not found] ` <cover.1403530604.git.joe-6d6DIl74uiNBDgjK7y7TUQ@public.gmane.org>
2014-06-23 21:49 ` David Miller
2014-06-25 19:41 ` John W. Linville
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=1403550809.15811.13.camel@joe-AO725 \
--to=joe@perches.com \
--cc=arnd@arndb.de \
--cc=devel@driverdev.osuosl.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=iss_storagedev@hp.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-atm-general@lists.sourceforge.net \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-eata@i-connect.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=mcgrof@do-not-panic.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).