[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <84144f020808200122w3e5adc4ci4eec761a1e570bda@mail.gmail.com>
Date: Wed, 20 Aug 2008 11:22:47 +0300
From: "Pekka Enberg" <penberg@...helsinki.fi>
To: "Andrew Morton" <akpm@...ux-foundation.org>
Cc: "Ryusuke Konishi" <konishi.ryusuke@....ntt.co.jp>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFC] nilfs2: continuous snapshotting file system
On Wed, Aug 20, 2008 at 10:43 AM, Andrew Morton
<akpm@...ux-foundation.org> wrote:
>> It is not yet divided into pieces (sorry). Unlike original code
>> available at [4], many code lines to support past kernel versions and
>> peculiar debug code are removed in this patch.
>
> Yes, please do that splitup and let's get down to reviewing it.
Hmm, this looks bit scary:
> +/*
> + * Low-level nilfs pages, page functions
> + * Reviews should be made to adapt these to the common pagemap and buffer code.
> + */
> +static struct nilfs_pages {
> + spinlock_t lru_lock;
> + struct list_head active;
> + struct list_head inactive;
> + unsigned long nr_active;
> + unsigned long nr_inactive;
> + struct rw_semaphore shrink_sem;
> +} nilfs_pages;
> +
> +/*
> + * XXX per-cpu pagevecs may be able to reduce the overhead of list handlings
> + *
> + * static DEFINE_PER_CPU(struct pagevec, nilfs_lru_active) = { 0, };
> + * static DEFINE_PER_CPU(struct pagevec, nilfs_lru_inactive) = { 0, };
> + */
> +
> +void nilfs_pages_init(void)
> +{
> + INIT_LIST_HEAD(&nilfs_pages.active);
> + INIT_LIST_HEAD(&nilfs_pages.inactive);
> + spin_lock_init(&nilfs_pages.lru_lock);
> + init_rwsem(&nilfs_pages.shrink_sem);
> + nilfs_pages.nr_active = 0;
> + nilfs_pages.nr_inactive = 0;
> +}
(a) why does NILFS need this and (b) why aren't these patches against
generic mm/*.c?
Pekka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists