Re: Re: [PATCH] btrfs: Simplify offset calculation method for ctree.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



sniper wrote:
> No, many pointers in btrfs function arguments are not pointing to an
> absolute address, but relative to the start address of extent.
> Take following function as example, argument inode_item is an offset
> value to the beginning of leaf. So we can't reach its member with
> &inode_item->xxx

Notice that we are not reach its member, we are getting pointer of its
member with &inode_item->mtime.
This operation have same effect as old one.

Thanks
Zhaolei

> 
>>  static inline struct btrfs_timespec *
>>  btrfs_inode_mtime(struct btrfs_inode_item *inode_item)
>>  {
>> -       unsigned long ptr = (unsigned long)inode_item;
>> -       ptr += offsetof(struct btrfs_inode_item, mtime);
>> -       return (struct btrfs_timespec *)ptr;
>> +       return &inode_item->mtime;
>>  }


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

[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux