Re: [PATCH 14/14] Pramfs: XIP operations
From: Marco
Date: Sun Jun 14 2009 - 03:21:27 EST
Sam Ravnborg wrote:
> On Sat, Jun 13, 2009 at 03:23:13PM +0200, Marco wrote:
>> From: Marco Stornelli <marco.stornelli@xxxxxxxxx>
>>
>> XIP operations.
>>
>> Signed-off-by: Marco Stornelli <marco.stornelli@xxxxxxxxx>
>> ---
>>
>> diff -uprN linux-2.6.30-orig/fs/pramfs/xip.c linux-2.6.30/fs/pramfs/xip.c
>> --- linux-2.6.30-orig/fs/pramfs/xip.c 1970-01-01 01:00:00.000000000 +0100
>> +++ linux-2.6.30/fs/pramfs/xip.c 2009-06-13 12:54:26.000000000 +0200
>> @@ -0,0 +1,90 @@
>> +/*
>> + * FILE NAME fs/pramfs/xip.c
>> + *
>> + * BRIEF DESCRIPTION
>> + *
>> + * XIP operations.
>> + *
>> + * Copyright 2009 Marco Stornelli <marco.stornelli@xxxxxxxxx>
>> + * This file is licensed under the terms of the GNU General Public
>> + * License version 2. This program is licensed "as is" without any
>> + * warranty of any kind, whether express or implied.
>> + */
>> +
>> +#include <linux/mm.h>
>> +#include <linux/fs.h>
>> +#include <linux/genhd.h>
>> +#include <linux/buffer_head.h>
>> +#include "pram_fs.h"
>> +#include "xip.h"
>> +
>> +static int pram_find_and_alloc_blocks(struct inode *inode, sector_t iblock,
>> + sector_t *data_block, int create)
>> +{
>> + int err = -EIO;
>> + off_t block;
>> +
>> + lock_kernel();
>
> Can we find other solutions than taking the BKL?
> We are trying to get rid of it.
>
I know. It wasn't my intention to introduce it but as I said in my first
patch I've done a porting of this code from 2.6.10 and to remove it I
need time to analyze well the code to avoid deadlock and so on. If
someone would like to help me I'd really appreciate it. However I see
the use of BKL even in other recent "mainlined" fs as ext4, so I
preferred to move the porting effort on other areas. However it's the
first item on my todo list.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/