From: Roger Pau Monne Date: Mon, 18 Mar 2013 16:49:33 +0000 (+0100) Subject: xen-blkback: fix foreach_grant_safe to handle empty lists X-Git-Tag: v3.12-rc1~1140^2~9^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=217fd5e709f029c125a9d39de5f13387407f131a;p=kernel%2Fkernel-generic.git xen-blkback: fix foreach_grant_safe to handle empty lists We may use foreach_grant_safe in the future with empty lists, so make sure we can handle them. Signed-off-by: Roger Pau Monné Cc: xen-devel@lists.xen.org Cc: Konrad Rzeszutek Wilk Signed-off-by: Konrad Rzeszutek Wilk --- diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c index 477a17c..2cf8381 100644 --- a/drivers/block/xen-blkback/blkback.c +++ b/drivers/block/xen-blkback/blkback.c @@ -164,7 +164,7 @@ static void make_response(struct xen_blkif *blkif, u64 id, #define foreach_grant_safe(pos, n, rbtree, node) \ for ((pos) = container_of(rb_first((rbtree)), typeof(*(pos)), node), \ - (n) = rb_next(&(pos)->node); \ + (n) = (&(pos)->node != NULL) ? rb_next(&(pos)->node) : NULL; \ &(pos)->node != NULL; \ (pos) = container_of(n, typeof(*(pos)), node), \ (n) = (&(pos)->node != NULL) ? rb_next(&(pos)->node) : NULL)