[ewg] [PATCH] ofa_kernel madeye.c
Mike Heinz
michael.heinz at qlogic.com
Wed May 26 13:00:58 PDT 2010
This is a simple fix. Several of the snoop filters in ./drivers/infiniband/util/madeye.c don't switch the attribute id to host byte order before checking it.
Signed-off-by: Michael Heinz <michael.heinz at qlogic.com>
diff --git a/drivers/infiniband/util/madeye.c b/drivers/infiniband/util/madeye.c
index 0cda06c..2c650a3 100644
--- a/drivers/infiniband/util/madeye.c
+++ b/drivers/infiniband/util/madeye.c
@@ -401,7 +401,7 @@ static void snoop_smi_handler(struct ib_mad_agent *mad_agent,
if (!smp && hdr->mgmt_class != mgmt_class)
return;
- if (attr_id && hdr->attr_id != attr_id)
+ if (attr_id && be16_to_cpu(hdr->attr_id) != attr_id)
return;
printk("Madeye:sent SMP\n");
@@ -413,7 +413,7 @@ static void recv_smi_handler(struct ib_mad_agent *mad_agent,
{
if (!smp && mad_recv_wc->recv_buf.mad->mad_hdr.mgmt_class != mgmt_class)
return;
- if (attr_id && mad_recv_wc->recv_buf.mad->mad_hdr.attr_id != attr_id)
+ if (attr_id && be16_to_cpu(mad_recv_wc->recv_buf.mad->mad_hdr.attr_id) != attr_id)
return;
printk("Madeye:recv SMP\n");
@@ -446,7 +446,7 @@ static void snoop_gsi_handler(struct ib_mad_agent *mad_agent,
if (!gmp && hdr->mgmt_class != mgmt_class)
return;
- if (attr_id && hdr->attr_id != attr_id)
+ if (attr_id && be16_to_cpu(hdr->attr_id) != attr_id)
return;
printk("Madeye:sent GMP\n");
@@ -468,7 +468,7 @@ static void recv_gsi_handler(struct ib_mad_agent *mad_agent,
if (!gmp && hdr->mgmt_class != mgmt_class)
return;
- if (attr_id && mad_recv_wc->recv_buf.mad->mad_hdr.attr_id != attr_id)
+ if (attr_id && be16_to_cpu(mad_recv_wc->recv_buf.mad->mad_hdr.attr_id) != attr_id)
return;
printk("Madeye:recv GMP\n");
More information about the ewg
mailing list