> Current memfree FW has a bug which in some cases, assumes that ICM > pages passed to it are cleared -- this patch will clear any ICM page > passed to the FW. It is essential to use this patch since there are > many cards already in use which use FW with this bug. At some time > when we're sure all systems are updated with the new FW (yet to be > released), we can remove this patch.
realistically I think we leave this workaround forever. it's not like it costs very much. Does mlx4 have any similar problem? > --- > This fixes the bug reported by Arthur from SGI here: > http://lists.openfabrics.org/pipermail/general/2008-May/050026.html This should be in the changelog itself... there's no reason to throw away this useful information when merging the patch. Anyway, thanks for debugging this... one question, why not just use the following (completely untested) change instead? Does this not work? At least using clear_highpage() instead of vmap() by hand seems much simpler too if __GFP_ZERO isn't usable for some reason. diff --git a/drivers/infiniband/hw/mthca/mthca_memfree.c b/drivers/infiniband/hw/mthca/mthca_memfree.c index 9e77ba9..4fb3c85 100644 --- a/drivers/infiniband/hw/mthca/mthca_memfree.c +++ b/drivers/infiniband/hw/mthca/mthca_memfree.c @@ -107,7 +107,7 @@ static int mthca_alloc_icm_pages(struct scatterlist *mem, int order, gfp_t gfp_m { struct page *page; - page = alloc_pages(gfp_mask, order); + page = alloc_pages(gfp_mask | __GFP_ZERO, order); if (!page) return -ENOMEM; _______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
