Hi, I don't understand the code but it doesn't look alright: static void to_ib_ah_attr(struct mthca_dev *dev, struct ib_ah_attr *ib_ah_attr, struct mthca_qp_path *path) { memset(ib_ah_attr, 0, sizeof *path); I think it shall be 'sizeof *ib_ah_attr' instead. Please CC me - I'm not on this list. Thanks, Isaac