From mboxrd@z Thu Jan 1 00:00:00 1970 From: zhigang.gong@linux.intel.com Subject: [PATCH 1/2] intel_dri: Fixed a buffer leak when enable glamor. Date: Thu, 12 Jul 2012 18:47:50 +0800 Message-ID: <1342090071-18809-1-git-send-email-zhigang.gong@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id B34A99EB58 for ; Thu, 12 Jul 2012 04:12:05 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org From: Zhigang Gong We need to put current front_buffer to back buffer thus we don't need to create a new back buffer next time. This behaviou should be the same with or without glamor. Previous code incorrectly discard the previous front_buffer and cause a big buffer leak problem. Signed-off-by: Zhigang Gong --- src/intel_dri.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/intel_dri.c b/src/intel_dri.c index ed5078e..0405937 100644 --- a/src/intel_dri.c +++ b/src/intel_dri.c @@ -1023,9 +1023,10 @@ I830DRI2ScheduleFlip(struct intel_screen_private *intel, priv = info->front->driverPrivate; /* Exchange the current front-buffer with the fresh bo */ + + intel->back_buffer = intel->front_buffer; + drm_intel_bo_reference(intel->back_buffer); if (!(intel->uxa_flags & UXA_USE_GLAMOR)) { - intel->back_buffer = intel->front_buffer; - drm_intel_bo_reference(intel->back_buffer); intel_set_pixmap_bo(priv->pixmap, new_back); drm_intel_bo_unreference(new_back); } -- 1.7.4.4