Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753881AbbKWJFv (ORCPT ); Mon, 23 Nov 2015 04:05:51 -0500 Received: from mail-wm0-f50.google.com ([74.125.82.50]:38328 "EHLO mail-wm0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753139AbbKWJFr (ORCPT ); Mon, 23 Nov 2015 04:05:47 -0500 Date: Mon, 23 Nov 2015 10:05:43 +0100 From: Daniel Vetter To: Geliang Tang Cc: David Airlie , lkp@intel.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, kbuild-all@01.org Subject: Re: [PATCH v2] drm/mm: rewrite drm_mm_for_each_hole Message-ID: <20151123090543.GZ17050@phenom.ffwll.local> Mail-Followup-To: Geliang Tang , David Airlie , lkp@intel.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, kbuild-all@01.org References: <201511211859.4WwE6vlY%fengguang.wu@intel.com> <5d23398953dc718e7bd17a559b5ac2a9cae72bf6.1448114127.git.geliangtang@163.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5d23398953dc718e7bd17a559b5ac2a9cae72bf6.1448114127.git.geliangtang@163.com> X-Operating-System: Linux phenom 4.1.0-2-amd64 User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3090 Lines: 76 On Sat, Nov 21, 2015 at 10:04:04PM +0800, Geliang Tang wrote: > When backwards is 0, __drm_mm_for_each_hole is same as > drm_mm_for_each_hole. So I rewrite drm_mm_for_each_hole > by using __drm_mm_for_each_hole. > > Signed-off-by: Geliang Tang Applied to drm-misc, thanks. -Daniel > --- > Changes in v2: > - fix make htmldocs warning > --- > include/drm/drm_mm.h | 23 +++++++++-------------- > 1 file changed, 9 insertions(+), 14 deletions(-) > > diff --git a/include/drm/drm_mm.h b/include/drm/drm_mm.h > index 0de6290..a58cc6c 100644 > --- a/include/drm/drm_mm.h > +++ b/include/drm/drm_mm.h > @@ -180,6 +180,14 @@ static inline u64 drm_mm_hole_node_end(struct drm_mm_node *hole_node) > &(mm)->head_node.node_list, \ > node_list) > > +#define __drm_mm_for_each_hole(entry, mm, hole_start, hole_end, backwards) \ > + for (entry = list_entry((backwards) ? (mm)->hole_stack.prev : (mm)->hole_stack.next, struct drm_mm_node, hole_stack); \ > + &entry->hole_stack != &(mm)->hole_stack ? \ > + hole_start = drm_mm_hole_node_start(entry), \ > + hole_end = drm_mm_hole_node_end(entry), \ > + 1 : 0; \ > + entry = list_entry((backwards) ? entry->hole_stack.prev : entry->hole_stack.next, struct drm_mm_node, hole_stack)) > + > /** > * drm_mm_for_each_hole - iterator to walk over all holes > * @entry: drm_mm_node used internally to track progress > @@ -200,20 +208,7 @@ static inline u64 drm_mm_hole_node_end(struct drm_mm_node *hole_node) > * going backwards. > */ > #define drm_mm_for_each_hole(entry, mm, hole_start, hole_end) \ > - for (entry = list_entry((mm)->hole_stack.next, struct drm_mm_node, hole_stack); \ > - &entry->hole_stack != &(mm)->hole_stack ? \ > - hole_start = drm_mm_hole_node_start(entry), \ > - hole_end = drm_mm_hole_node_end(entry), \ > - 1 : 0; \ > - entry = list_entry(entry->hole_stack.next, struct drm_mm_node, hole_stack)) > - > -#define __drm_mm_for_each_hole(entry, mm, hole_start, hole_end, backwards) \ > - for (entry = list_entry((backwards) ? (mm)->hole_stack.prev : (mm)->hole_stack.next, struct drm_mm_node, hole_stack); \ > - &entry->hole_stack != &(mm)->hole_stack ? \ > - hole_start = drm_mm_hole_node_start(entry), \ > - hole_end = drm_mm_hole_node_end(entry), \ > - 1 : 0; \ > - entry = list_entry((backwards) ? entry->hole_stack.prev : entry->hole_stack.next, struct drm_mm_node, hole_stack)) > + __drm_mm_for_each_hole(entry, mm, hole_start, hole_end, 0) > > /* > * Basic range manager support (drm_mm.c) > -- > 2.5.0 > > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/