From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030250AbXDUIQz (ORCPT ); Sat, 21 Apr 2007 04:16:55 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1030316AbXDUIQz (ORCPT ); Sat, 21 Apr 2007 04:16:55 -0400 Received: from smtp-out.google.com ([216.239.45.13]:28226 "EHLO smtp-out.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1030250AbXDUIQx (ORCPT ); Sat, 21 Apr 2007 04:16:53 -0400 DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=received:message-id:date:from:user-agent:mime-version:to:cc: subject:references:in-reply-to:content-type:content-transfer-encoding; b=nN3Gt/bSOXVk++XGrgULHjZxTSjMaQKhY2bXRrESVFLO9TyN9/nw827sq4STb/L65 1y53JeqiQ3Pvol8rhzfyg== Message-ID: <4629C81D.8050606@google.com> Date: Sat, 21 Apr 2007 01:15:25 -0700 From: Ethan Solomita User-Agent: Thunderbird 1.5.0.10 (Windows/20070221) MIME-Version: 1.0 To: Christoph Lameter CC: akpm@osdl.org, Paul Menage , linux-kernel@vger.kernel.org, Nick Piggin , linux-mm@kvack.org, Andi Kleen , Paul Jackson , Dave Chinner , KAMEZAWA Hiroyuki Subject: Re: [RFC 0/8] Cpuset aware writeback References: <20070116054743.15358.77287.sendpatchset@schroedinger.engr.sgi.com> <45C2960B.9070907@google.com> <46019F67.3010300@google.com> <4626CEDA.7050608@google.com> <46296ACD.3020402@google.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Christoph Lameter wrote: > On Fri, 20 Apr 2007, Ethan Solomita wrote: > > >> cpuset_write_dirty_map.htm >> >> In __set_page_dirty_nobuffers() you always call cpuset_update_dirty_nodes() >> but in __set_page_dirty_buffers() you call it only if page->mapping is still >> set after locking. Is there a reason for the difference? Also a question not >> about your patch: why do those functions call __mark_inode_dirty() even if the >> dirty page has been truncated and mapping == NULL? >> > > If page->mapping has been cleared then the page was removed from the > mapping. __mark_inode_dirty just dirties the inode. If a truncation occurs > then the inode was modified. > You didn't address the first half. Why do the buffers() and nobuffers() act differently when calling cpuset_update_dirty_nodes()? >> cpuset_write_throttle.htm >> >> I noticed that several lines have leading spaces. I didn't check if other >> patches have the problem too. >> > > Maybe download the patches? How did those strange .htm endings get > appended to the patches? > Something weird with Firefox, but instead of jumping on me did you consider double checking your patches? I just went back, found the text versions, and the spaces are still there.e.g.: + unsigned long dirtyable_memory; >> In get_dirty_limits(), when cpusets are configd you don't subtract highmen >> the same way that is done without cpusets. Is this intentional? >> > > That is something in flux upstream. Linus changed it recently. Do it one > way or the other. > Exactly -- your patch should be consistent and do it the same way as whatever your patch is built against. Your patch is built against a kernel that subtracts off highmem. "Do it..." are you handing off the patch and are done with it? >> It seems that dirty_exceeded is still a global punishment across cpusets. >> Should it be addressed? >> > > Sure. It would be best if you could place that somehow in a cpuset. > Again it sounds like you're handing them off. I'm not objecting I just hadn't understood that. -- Ethan