Return-Path: Received: from vervifontaine.sonycom.com (unknown [80.88.33.193]) by ozlabs.org (Postfix) with ESMTP id 440A2DDDF6 for ; Wed, 14 Mar 2007 01:22:16 +1100 (EST) Message-Id: <20070313142153.080502000@sonycom.com> References: <20070313141910.001573000@sonycom.com> Date: Tue, 13 Mar 2007 15:19:12 +0100 From: Geert.Uytterhoeven@sonycom.com To: Linus Torvalds , Andrew Morton Subject: [patch 2/5] ps3fb: atomic fixes Sender: Geert Uytterhoeven Cc: Geert Uytterhoeven , linux-fbdev-devel@lists.sourceforge.net, James Simmons , "Antonino A. Daplas" , linuxppc-dev@ozlabs.org List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , ps3fb: Use atomic_dec_if_positive() instead of bogus atomic_read()/atomic_dec() combinations Signed-off-by: Geert Uytterhoeven --- drivers/video/ps3fb.c | 12 ++++-------- 1 files changed, 4 insertions(+), 8 deletions(-) --- ps3-linux-2.6.21-rc3.orig/drivers/video/ps3fb.c +++ ps3-linux-2.6.21-rc3/drivers/video/ps3fb.c @@ -680,13 +680,10 @@ EXPORT_SYMBOL_GPL(ps3fb_wait_for_vsync); void ps3fb_flip_ctl(int on) { - if (on) { - if (atomic_read(&ps3fb.ext_flip) > 0) { - atomic_dec(&ps3fb.ext_flip); - } - } else { + if (on) + atomic_dec_if_positive(&ps3fb.ext_flip); + else atomic_inc(&ps3fb.ext_flip); - } } EXPORT_SYMBOL_GPL(ps3fb_flip_ctl); @@ -786,8 +783,7 @@ static int ps3fb_ioctl(struct fb_info *i case PS3FB_IOCTL_OFF: DPRINTK("PS3FB_IOCTL_OFF:\n"); - if (atomic_read(&ps3fb.ext_flip) > 0) - atomic_dec(&ps3fb.ext_flip); + atomic_dec_if_positive(&ps3fb.ext_flip); retval = 0; break; -- Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- Sony Network and Software Technology Center Europe (NSCE) Geert.Uytterhoeven@sonycom.com ------- The Corporate Village, Da Vincilaan 7-D1 Voice +32-2-7008453 Fax +32-2-7008622 ---------------- B-1935 Zaventem, Belgium