libceph, rbd: ignore addr->type while comparing in some cases
[linux-2.6-block.git] / net / ceph / mon_client.c
index a9754a7fa78c9e2c743073abb3c82c9aca2cc6c0..f5f090b4e4090bdc4eb30015cac64b6da686541a 100644 (file)
@@ -161,9 +161,11 @@ int ceph_monmap_contains(struct ceph_monmap *m, struct ceph_entity_addr *addr)
 {
        int i;
 
-       for (i = 0; i < m->num_mon; i++)
-               if (memcmp(addr, &m->mon_inst[i].addr, sizeof(*addr)) == 0)
+       for (i = 0; i < m->num_mon; i++) {
+               if (ceph_addr_equal_no_type(addr, &m->mon_inst[i].addr))
                        return 1;
+       }
+
        return 0;
 }