Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965017AbXBTIIF (ORCPT ); Tue, 20 Feb 2007 03:08:05 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S964983AbXBTIIF (ORCPT ); Tue, 20 Feb 2007 03:08:05 -0500 Received: from vervifontaine.sonytel.be ([80.88.33.193]:34794 "EHLO vervifontaine.sonycom.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S965017AbXBTIIE (ORCPT ); Tue, 20 Feb 2007 03:08:04 -0500 Date: Tue, 20 Feb 2007 09:07:56 +0100 (CET) From: Geert Uytterhoeven To: Jaya Kumar cc: Paul Mundt , Peter Zijlstra , Linux Frame Buffer Device Development , Linux Kernel Development , linux-mm@kvack.org, James Simmons Subject: Re: [PATCH 2.6.20 1/1] fbdev,mm: hecuba/E-Ink fbdev driver In-Reply-To: <45a44e480702192013s7d49d05ai31e576f0448a485e@mail.gmail.com> Message-ID: References: <20070217104215.GB25512@localhost> <1171715652.5186.7.camel@lappy> <45a44e480702170525n9a15fafpb370cb93f1c1fcba@mail.gmail.com> <20070217135922.GA15373@linux-sh.org> <45a44e480702180331t7e76c396j1a9861f689d4186b@mail.gmail.com> <20070218235741.GA22298@linux-sh.org> <45a44e480702192013s7d49d05ai31e576f0448a485e@mail.gmail.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2009 Lines: 53 On Mon, 19 Feb 2007, Jaya Kumar wrote: > On 2/18/07, Paul Mundt wrote: > > Given that, this would have to be something that's dealt with at the > > subsystem level rather than in individual drivers, hence the desire to > > see something like this more generically visible. > > > > Hi Peter, Paul, fbdev folk, > > Ok. Here's what I'm thinking for abstracting this: > > fbdev drivers would setup fb_mmap with their own_mmap as usual. In > own_mmap, they would do what they normally do and setup a vm_ops. They > are free to have their own nopage handler but would set the > page_mkwrite handler to be fbdev_deferred_io_mkwrite(). > fbdev_deferred_io_mkwrite would build up the list of touched pages and > pass it to a delayed workqueue which would then mkclean on each page > and then pass a copy of that page list down to a driver's callback > function. The fbdev driver's callback function can then do the actual > IO to the framebuffer or coalesce DMA based on the provided page list. > > I would like to add something like the following to struct fb_info: > > #ifdef CONFIG_FB_DEFERRED_IO > struct fb_deferred_io *defio; > #endif Don't you need a way to specify the maximum deferral time? E.g. a field in fb_info. > to store the mutex (to protect the page list), the touched page list, > and the driver's callback function. > > I hope this sounds sufficiently generic to meet everyone's (the two of > us? :) needs. Looks fine! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds - 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/