Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757468AbZGEQeN (ORCPT ); Sun, 5 Jul 2009 12:34:13 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757181AbZGEQd7 (ORCPT ); Sun, 5 Jul 2009 12:33:59 -0400 Received: from smtp239.poczta.interia.pl ([217.74.64.239]:29054 "EHLO smtp239.poczta.interia.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756918AbZGEQd6 (ORCPT ); Sun, 5 Jul 2009 12:33:58 -0400 Date: Sun, 5 Jul 2009 18:43:19 +0200 From: Krzysztof Helt To: Paul Mundt Cc: Linus Torvalds , Wu Zhangjin , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mips@linux-mips.org, Krzysztof Helt , Peter Zijlstra , "Rafael J. Wysocki" , Andrew Morton , Ralf Baechle , ???? , zhangfx Subject: Re: [BUG] drivers/video/sis: deadlock introduced by "fbdev: add mutex for fb_mmap locking" Message-Id: <20090705184319.6e77be82.krzysztof.h1@poczta.fm> In-Reply-To: <20090705152557.GA10588@linux-sh.org> References: <1246785112.14240.34.camel@falcon> <20090705145203.GA8326@linux-sh.org> <20090705150134.GB8326@linux-sh.org> <20090705152557.GA10588@linux-sh.org> X-Mailer: Sylpheed 2.4.3 (GTK+ 2.11.0; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-EMID: 38e2b138 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1684 Lines: 48 On Mon, 6 Jul 2009 00:25:57 +0900 Paul Mundt wrote: > Ok, here is an updated version with an updated matroxfb and the sm501fb > change reverted. > > Signed-off-by: Paul Mundt > Here is a patch which should fix problem with sm501fb driver: diff --git a/drivers/video/sm501fb.c b/drivers/video/sm501fb.c index 16d4f4c..924d794 100644 --- a/drivers/video/sm501fb.c +++ b/drivers/video/sm501fb.c @@ -1540,9 +1540,6 @@ static int sm501fb_init_fb(struct fb_info *fb, if (ret) dev_err(info->dev, "check_var() failed on initial setup?\n"); - /* ensure we've activated our new configuration */ - (fb->fbops->fb_set_par)(fb); - return 0; } Paul, please test it (without additional initialization of the mm_lock mutext). I will post the patch if it works for you. An issue here is that these drivers calls fb_set_par() function (or part of it as the sisfb driver) but the register_framebuffer() calls the fb_set_par() also after all structures are set up. There should be no need to call the fb_set_par() just before the register_framebuffer(). The matroxfb driver is quite far from standard driver framework by now. I vote for fixing it by adding this early initialization of the mm_mutex for now. Kind regards, Krzysztof ---------------------------------------------------------------------- Promocja ubezpieczen komunikacyjnych Ergo Hestia. Sprawdz! http://link.interia.pl/f222f -- 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/