From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966041Ab2FAXjB (ORCPT ); Fri, 1 Jun 2012 19:39:01 -0400 Received: from e37.co.us.ibm.com ([32.97.110.158]:35062 "EHLO e37.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S966015Ab2FAXjA (ORCPT ); Fri, 1 Jun 2012 19:39:00 -0400 From: John Stultz To: LKML Cc: John Stultz , Andrew Morton , Android Kernel Team , Robert Love , Mel Gorman , Hugh Dickins , Dave Hansen , Rik van Riel , Dmitry Adamushko , Dave Chinner , Neil Brown , Andrea Righi , "Aneesh Kumar K.V" , Taras Glek , Mike Hommey , Jan Kara , KOSAKI Motohiro Subject: [PATCH 0/3] [RFC] Fallocate Volatile Ranges v3 Date: Fri, 1 Jun 2012 16:38:43 -0700 Message-Id: <1338593926-17344-1-git-send-email-john.stultz@linaro.org> X-Mailer: git-send-email 1.7.3.2.146.gca209 X-Content-Scanned: Fidelis XPS MAILER x-cbid: 12060123-7408-0000-0000-000005833049 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Just another quick iteration on the fallocate volatile ranges. This version utilizes Dave Hansen's suggestion to use the shmem_writepage code to trigger the volatile range purging. This avoids using a shrinker as requested by KOSAKI Motohiro and makes unnecessary some of the page counting logic. Also caught an off by one bug in the page purging. Let me know if you have any further feedback or thoughts! thanks -john CC: Andrew Morton CC: Android Kernel Team CC: Robert Love CC: Mel Gorman CC: Hugh Dickins CC: Dave Hansen CC: Rik van Riel CC: Dmitry Adamushko CC: Dave Chinner CC: Neil Brown CC: Andrea Righi CC: Aneesh Kumar K.V CC: Taras Glek CC: Mike Hommey CC: Jan Kara CC: KOSAKI Motohiro John Stultz (3): [RFC] Interval tree implementation [RFC] Add volatile range management code [RFC] tmpfs: Add FALLOC_FL_MARK_VOLATILE/UNMARK_VOLATILE handlers fs/open.c | 3 +- include/linux/falloc.h | 7 +- include/linux/intervaltree.h | 55 +++++ include/linux/volatile.h | 41 ++++ lib/Makefile | 2 +- lib/intervaltree.c | 119 ++++++++++ mm/Makefile | 2 +- mm/shmem.c | 84 ++++++++ mm/volatile.c | 486 ++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 793 insertions(+), 6 deletions(-) create mode 100644 include/linux/intervaltree.h create mode 100644 include/linux/volatile.h create mode 100644 lib/intervaltree.c create mode 100644 mm/volatile.c -- 1.7.3.2.146.gca209