Hi David,

On 2014/12/30 0:09, David Sterba wrote:
On Thu, Dec 25, 2014 at 06:21:41PM +0900, Satoru Takeuchi wrote:
From: Satoru Takeuchi <takeuchi_sat...@jp.fujitsu.com>
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -2190,7 +2190,7 @@ void btrfs_free_io_failure_record(struct inode *inode, 
u64 start, u64 end)

                next = next_state(state);

-               failrec = (struct io_failure_record *)state->private;
+               failrec = (struct io_failure_record *)(unsigned 
long)state->private;

We're always using the 'private' data to store a pointer to
'struct io_failure_record *', please change the defintion in
'struct extent_state' instead of the typecasting.

Current definition is as follow.

===============================================================================
struct extent_state {
...
        /* for use by the FS */
        u64 private;
};
===============================================================================

It it OK to changing "u64 private" to "struct io_failure_record *failrec"
and change "{set,get}_state_private()" to "{set,get}_state_failrec()?
Or is it better to keep the name "private" as is and just change its type
to "unsigned long" or "(void *)"?

Thanks,
Satoru


                free_extent_state(state);
                kfree(failrec);

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to