All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Bob Pearson" <rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org>
To: 'Bart Van Assche' <bvanassche-HInyCGIudOg@public.gmane.org>
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: RE: [patch 34/44] rxe_arbiter.c
Date: Sun, 3 Jul 2011 10:21:44 -0500	[thread overview]
Message-ID: <002d01cc3994$eb7cf600$c276e200$@systemfabricworks.com> (raw)
In-Reply-To: <CAO+b5-oh8Qavo1q5n1-KKa9XVmLcJ0s7ZZswC1Efp+gOgOAqQw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

A regression slipped in. We had been clean on sparse and checkpatch except
for the msleep which is not ciritical to performance.
CHECK_ENDIAN is new to me. That will help.

-----Original Message-----
From: bart.vanassche-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [mailto:bart.vanassche-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org] On Behalf
Of Bart Van Assche
Sent: Sunday, July 03, 2011 2:53 AM
To: rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [patch 34/44] rxe_arbiter.c

On Fri, Jul 1, 2011 at 3:18 PM, <rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org> wrote:
>
> +int rxe_arbiter(void *arg)
> +{
> +       int err;
> +       unsigned long flags;
> +       struct rxe_dev *rxe = (struct rxe_dev *)arg;
> +       struct sk_buff *skb;
> +       struct list_head *qpl;
> +       struct rxe_qp *qp;
> +
> +       /* get the next qp's send queue */
> +       spin_lock_irqsave(&rxe->arbiter.list_lock, flags);
> +       if (list_empty(&rxe->arbiter.qp_list)) {
> +               spin_unlock_irqrestore(&rxe->arbiter.list_lock, 
> + flags);
> +               return 1;
> +       }
> +
> +       qpl = rxe->arbiter.qp_list.next;
> +       list_del_init(qpl);
> +       qp = list_entry(qpl, struct rxe_qp, arbiter_list);
> +       spin_unlock_irqrestore(&rxe->arbiter.list_lock, flags);
> +
> +       /* get next packet from queue and try to send it
> +          note skb could have already been removed */
> +       skb = skb_dequeue(&qp->send_pkts);
> +       if (skb) {
> +               err = xmit_one_packet(rxe, qp, skb);
> +               if (err) {
> +                       if (err == RXE_QUEUE_STOPPED)
> +                               skb_queue_head(&qp->send_pkts, skb);
> +                       rxe_run_task(&rxe->arbiter.task, 1);
> +                       
> + spin_unlock_irqrestore(&rxe->arbiter.list_lock, flags);
> +                       return 1;
> +               }
> +       }

Can you please run these patches through sparse ? Sparse complains about the
above code:

$ make C=2 M=drivers/infiniband/hw/rxe
[ ... ]
drivers/infiniband/hw/rxe/rxe_arbiter.c:155:25: warning: context imbalance
in 'rxe_arbiter' - unexpected unlock [ ... ]

Also, several complaints are reported with endianness checking enabled (make
CF=-D__CHECK_ENDIAN__ C=2 M=drivers/infiniband/hw/rxe).

Checkpatch is complaining too:

$ git show HEAD | scripts/checkpatch.pl - -nosignoff
WARNING: suspect code indent for conditional statements (8, 10)
#1061: FILE: drivers/infiniband/hw/rxe/rxe_arbiter.c:69:
+       if (is_request) {
+         if (qp->req.state != QP_STATE_READY)

WARNING: suspect code indent for conditional statements (10, 12)
#1062: FILE: drivers/infiniband/hw/rxe/rxe_arbiter.c:70:
+         if (qp->req.state != QP_STATE_READY)
+           goto drop;

WARNING: suspect code indent for conditional statements (10, 12)
#1065: FILE: drivers/infiniband/hw/rxe/rxe_arbiter.c:73:
+         if (qp->resp.state != QP_STATE_READY)
+           goto drop;

WARNING: msleep < 20ms can sleep for up to 20ms; see
Documentation/timers/timers-howto.txt
+               msleep(1);
total: 0 errors, 4 warnings, 14803 lines checked

Bart.

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2011-07-03 15:21 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-01 13:18 [patch 00/44] RDMA over Ethernet rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 01/44] ib_pack.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 02/44] rxe_hdr.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 03/44] rxe_opcode.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 04/44] rxe_opcode.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 05/44] rxe_param.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 06/44] rxe.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 07/44] rxe_loc.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 08/44] rxe_mmap.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 09/44] rxe_mmap.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 10/44] rxe_queue.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 11/44] rxe_queue.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 12/44] rxe_verbs.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 13/44] rxe_verbs.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 14/44] rxe_pool.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 15/44] rxe_pool.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 16/44] rxe_task.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 17/44] rxe_task.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 18/44] rxe_av.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 19/44] rxe_av.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 20/44] rxe_srq.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 21/44] rxe_srq.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 22/44] rxe_cq.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 23/44] rxe_cq.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 24/44] rxe_qp.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 25/44] rxe_qp.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 26/44] rxe_mr.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 27/44] rxe_mr.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 28/44] rxe_mcast.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 29/44] rxe_mcast.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 30/44] rxe_recv.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 31/44] rxe_comp.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 32/44] rxe_req.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 33/44] rxe_resp.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 34/44] rxe_arbiter.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
     [not found]   ` <20110701132202.342196794-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org>
2011-07-03  7:52     ` Bart Van Assche
     [not found]       ` <CAO+b5-oh8Qavo1q5n1-KKa9XVmLcJ0s7ZZswC1Efp+gOgOAqQw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-07-03 15:21         ` Bob Pearson [this message]
2011-07-01 13:18 ` [patch 35/44] rxe_dma.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 36/44] gen_sb8tables.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:18 ` [patch 37/44] rxe_sb8.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
     [not found]   ` <20110701132202.486466900-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org>
2011-07-01 22:03     ` Roland Dreier
     [not found]       ` <CAL1RGDWLRw26RUr=WjUgzrn=6aGBukghoyOm5ordJv72mSsTBA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-07-01 23:09         ` Bob Pearson
2011-07-02 16:55           ` David Dillow
     [not found]             ` <1309625729.20982.2.camel-1q1vX8mYZiGLUyTwlgNVppKKF0rrzTr+@public.gmane.org>
2011-07-14  5:03               ` Bob Pearson
2011-07-01 13:18 ` [patch 38/44] rxe.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 39/44] rxe_net.h rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 40/44] rxe_net.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 41/44] rxe_net_sysfs.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 42/44] rxe_sample.c rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 43/44] Makefile rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
2011-07-01 13:19 ` [patch 44/44] Kconfig rpearson-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5
     [not found]   ` <20110701132202.824114065-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org>
2011-07-22 13:32     ` Bart Van Assche
     [not found] ` <20110701131821.928693424-klaOcWyJdxkshyMvu7JE4pqQE7yCjDx5@public.gmane.org>
2011-07-02  9:42   ` [patch 00/44] RDMA over Ethernet Bart Van Assche

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='002d01cc3994$eb7cf600$c276e200$@systemfabricworks.com' \
    --to=rpearson-klaocwyjdxkshymvu7je4pqqe7ycjdx5@public.gmane.org \
    --cc=bvanassche-HInyCGIudOg@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.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.