On Fri, 2008-02-15 at 23:46 +0530, Aneesh Kumar K.V wrote:
> fallocate blocks are considered as sparse area and read from them should
> return zero. ext4_ext_get_blocks should return zero for read request.
> 

The patch itself looks harmless, but I still don't see how this could
fix the problem you described at irc: a write hit a BUG_ON() in
fs/buffer.c saying the buffer is not mapped. Could you add more details
here?

Thanks
Mingming
 
> Signed-off-by: Aneesh Kumar K.V <[EMAIL PROTECTED]>
> ---
>  fs/ext4/extents.c |    8 +++++++-
>  1 files changed, 7 insertions(+), 1 deletions(-)
> 
> diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
> index 3efbfd1..5b22f71 100644
> --- a/fs/ext4/extents.c
> +++ b/fs/ext4/extents.c
> @@ -2379,8 +2379,14 @@ int ext4_ext_get_blocks(handle_t *handle, struct inode 
> *inode,
>                       }
>                       if (create == EXT4_CREATE_UNINITIALIZED_EXT)
>                               goto out;
> -                     if (!create)
> +                     if (!create) {
> +                             /*
> +                              * read request should return zero blocks
> +                              * allocated
> +                              */
> +                             allocated = 0;
>                               goto out2;
> +                     }
> 
>                       ret = ext4_ext_convert_to_initialized(handle, inode,
>                                                               path, iblock,

-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to