From: Sergei Zviagintsev <sergei@s15v.net>
To: David Herrmann <dh.herrmann@gmail.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Daniel Mack <daniel@zonque.org>,
Djalal Harouni <tixxdz@opendz.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 31/44] kdbus: Cleanup kdbus_conn_move_messages()
Date: Fri, 9 Oct 2015 21:47:38 +0300 [thread overview]
Message-ID: <20151009184738.GL2189@localhost.localdomain> (raw)
In-Reply-To: <CANq1E4Q1rnpz+rm8ko9zUKGaOb2AAv4vDwH=SQHUSBBX3803-w@mail.gmail.com>
Hi,
On Thu, Oct 08, 2015 at 04:50:31PM +0200, David Herrmann wrote:
> Hi
>
> On Thu, Oct 8, 2015 at 1:32 PM, Sergei Zviagintsev <sergei@s15v.net> wrote:
> > - Move `r' and `ret' to scopes where they are used. Drop redundant
> > initialization of `ret'.
> >
> > - Initialize `bus' on declaration.
> >
> > - Replace list_for_each_entry_safe() with list_for_each_entry() when
> > iterating over list of replies.
> >
> > - Drop redundant `continue'.
> >
> > Signed-off-by: Sergei Zviagintsev <sergei@s15v.net>
> > ---
> > ipc/kdbus/connection.c | 14 +++++++-------
> > 1 file changed, 7 insertions(+), 7 deletions(-)
> >
> > diff --git a/ipc/kdbus/connection.c b/ipc/kdbus/connection.c
> > index b32b4f981618..6ee688d3de53 100644
> > --- a/ipc/kdbus/connection.c
> > +++ b/ipc/kdbus/connection.c
> > @@ -1293,25 +1293,24 @@ void kdbus_conn_move_messages(struct kdbus_conn *conn_dst,
> > u64 name_id)
> > {
> > struct kdbus_queue_entry *e, *e_tmp;
> > - struct kdbus_reply *r, *r_tmp;
> > - struct kdbus_bus *bus;
> > + struct kdbus_bus *bus = conn_src->ep->bus;
> > struct kdbus_conn *c;
> > LIST_HEAD(msg_list);
> > - int i, ret = 0;
> > + int i;
> >
> > if (WARN_ON(conn_src == conn_dst))
> > return;
> >
> > - bus = conn_src->ep->bus;
> > -
> > /* lock order: domain -> bus -> ep -> names -> conn */
> > down_read(&bus->conn_rwlock);
> > hash_for_each(bus->conn_hash, i, c, hentry) {
> > + struct kdbus_reply *r;
> > +
>
> Why make 'r' local?
So what is the rule to keep some vars block-local and some not? This
function has a number of local vars, so the rationale is to keep things
simple. We don't use `r' function wide, but use it only in this block,
so why don't have it block-local?
>
> > if (c == conn_src || c == conn_dst)
> > continue;
> >
> > mutex_lock(&c->lock);
> > - list_for_each_entry_safe(r, r_tmp, &c->reply_list, entry) {
> > + list_for_each_entry(r, &c->reply_list, entry) {
>
> Looks good.
>
> > if (r->reply_src != conn_src)
> > continue;
> >
> > @@ -1328,6 +1327,8 @@ void kdbus_conn_move_messages(struct kdbus_conn *conn_dst,
> >
> > kdbus_conn_lock2(conn_src, conn_dst);
> > list_for_each_entry_safe(e, e_tmp, &conn_src->queue.msg_list, entry) {
> > + int ret;
> > +
>
> Why make it local?
Same thing here. We have the only use of this `ret' var, so why don't
keep it right here?
>
> > /* filter messages for a specific name */
> > if (name_id > 0 && e->dst_name_id != name_id)
> > continue;
> > @@ -1343,7 +1344,6 @@ void kdbus_conn_move_messages(struct kdbus_conn *conn_dst,
> > if (ret < 0) {
> > kdbus_conn_lost_message(conn_dst);
> > kdbus_queue_entry_free(e);
> > - continue;
>
> Looks good.
>
> Thanks
> David
>
> > }
> > }
> > kdbus_conn_unlock2(conn_src, conn_dst);
> > --
> > 1.8.3.1
> >
next prev parent reply other threads:[~2015-10-09 18:47 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-08 11:31 [PATCH 00/44] kdbus cleanups Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 01/44] Documentation/kdbus: Document new name registry flags Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 02/44] uapi: kdbus.h: Kernel-doc fixes Sergei Zviagintsev
2015-10-08 13:42 ` David Herrmann
2015-10-08 11:31 ` [PATCH 03/44] kdbus: Kernel-docs and comments trivial fixes Sergei Zviagintsev
2015-10-08 13:46 ` David Herrmann
2015-10-08 11:31 ` [PATCH 04/44] kdbus: Update kernel-doc for struct kdbus_pool Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 05/44] kdbus: Add comment on merging free pool slices Sergei Zviagintsev
2015-10-08 13:50 ` David Herrmann
2015-10-09 18:11 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 06/44] kdbus: Fix kernel-doc for struct kdbus_gaps Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 07/44] kdbus: Fix comment on translation of caps between namespaces Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 08/44] kdbus: Rename var in kdbus_meta_export_caps() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 09/44] kdbus: Remove unused KDBUS_MSG_MAX_SIZE constant Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 10/44] kdbus: Use conditional operator Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 11/44] kdbus: Cosmetic fix of kdbus_name_is_valid() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 12/44] kdbus: Use conventional list macros in __kdbus_pool_slice_release() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 13/44] kdbus: Use list_next_entry() in kdbus_queue_entry_unlink() Sergei Zviagintsev
2015-10-08 14:09 ` David Herrmann
2015-10-08 11:31 ` [PATCH 14/44] kdbus: Simplify expression in kdbus_get_memfd() Sergei Zviagintsev
2015-10-08 14:21 ` David Herrmann
2015-10-08 11:31 ` [PATCH 15/44] kdbus: Simplify bitwise expression in kdbus_meta_get_mask() Sergei Zviagintsev
2015-10-08 14:24 ` David Herrmann
2015-10-09 17:50 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 16/44] kdbus: Drop redundant code from kdbus_name_acquire() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 17/44] kdbus: Drop duplicated code from kdbus_pool_slice_alloc() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 18/44] kdbus: Add var initialization to kdbus_conn_entry_insert() Sergei Zviagintsev
2015-10-08 14:28 ` David Herrmann
2015-10-09 17:52 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 19/44] kdbus: Drop useless initialization from kdbus_conn_reply() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 20/44] kdbus: Drop useless initialization from kdbus_cmd_hello() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 21/44] kdbus: Cleanup tests in kdbus_cmd_send() Sergei Zviagintsev
2015-10-08 14:30 ` David Herrmann
2015-10-09 18:07 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 22/44] kdbus: Cleanup error path in kdbus_staging_new_user() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 23/44] kdbus: Cleanup kdbus_conn_call() Sergei Zviagintsev
2015-10-08 14:32 ` David Herrmann
2015-10-09 18:15 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 24/44] kdbus: Cleanup kdbus_conn_unicast() Sergei Zviagintsev
2015-10-08 14:34 ` David Herrmann
2015-10-09 18:32 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 25/44] kdbus: Cleanup kdbus_cmd_conn_info() Sergei Zviagintsev
2015-10-08 14:38 ` David Herrmann
2015-10-09 18:45 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 26/44] kdbus: Cleanup kdbus_pin_dst() Sergei Zviagintsev
2015-10-08 14:40 ` David Herrmann
2015-10-09 18:46 ` Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 27/44] kdbus: Cleanup kdbus_conn_new() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 28/44] kdbus: Cleanup kdbus_queue_entry_new() Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 29/44] kdbus: Improve tests on incrementing quota Sergei Zviagintsev
2015-10-08 11:31 ` [PATCH 30/44] kdbus: Cleanup kdbus_meta_proc_mask() Sergei Zviagintsev
2015-10-08 14:47 ` David Herrmann
2015-10-08 11:32 ` [PATCH 31/44] kdbus: Cleanup kdbus_conn_move_messages() Sergei Zviagintsev
2015-10-08 14:50 ` David Herrmann
2015-10-09 18:47 ` Sergei Zviagintsev [this message]
2015-10-08 11:32 ` [PATCH 32/44] kdbus: Remove duplicated code from kdbus_conn_lock2() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 33/44] kdbus: Improve kdbus_staging_reserve() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 34/44] kdbus: Improve kdbus_conn_entry_sync_attach() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 35/44] kdbus: Drop goto from kdbus_queue_entry_link() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 36/44] kdbus: Improve kdbus_name_release() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 37/44] kdbus: Fix error path in kdbus_meta_proc_collect_cgroup() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 38/44] kdbus: Fix error path in kdbus_user_lookup() Sergei Zviagintsev
2015-10-08 15:06 ` David Herrmann
2015-10-09 18:48 ` Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 39/44] kdbus: Cleanup kdbus_user_lookup() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 40/44] kdbus: Cleanup kdbus_item_validate_name() Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 41/44] kdbus: Fix memfd install algorithm Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 42/44] kdbus: Check if fd is allocated before trying to free it Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 43/44] kdbus: Give up on failed fd allocation Sergei Zviagintsev
2015-10-08 15:14 ` David Herrmann
2015-10-09 18:49 ` Sergei Zviagintsev
2015-10-08 11:32 ` [PATCH 44/44] kdbus: Cleanup kdbus_gaps_install() Sergei Zviagintsev
2015-10-08 15:20 ` [PATCH 00/44] kdbus cleanups David Herrmann
2015-10-09 7:28 ` Sergei Zviagintsev
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=20151009184738.GL2189@localhost.localdomain \
--to=sergei@s15v.net \
--cc=daniel@zonque.org \
--cc=dh.herrmann@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tixxdz@opendz.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).