Re: [PATCH v4] btrfs: allocate raid type kobjects dynamically

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

 




On 05/27/2014 01:20 PM, Jeff Mahoney wrote:
> - gpg control packet
> On 5/27/14, 1:22 PM, Chris Mason wrote:
> 
> 
>> On 05/27/2014 01:08 PM, Chris Mason wrote:
>>> On 05/27/2014 12:59 PM, Jeff Mahoney wrote:
>>>> We are currently allocating space_info objects in an array when
>>>> we allocate space_info. When a user does something like:
>>>>
>>>> # btrfs balance start -mconvert=raid1 -dconvert=raid1 /mnt #
>>>> btrfs balance start -mconvert=single -dconvert=single /mnt -f #
>>>> btrfs balance start -mconvert=raid1 -dconvert=raid1 /
>>>>
>>>> We can end up with memory corruption since the kobject hasn't
>>>> been reinitialized properly and the name pointer was left set.
>>>>
>>>> The rationale behind allocating them statically was to avoid
>>>> creating a separate kobject container that just contained the
>>>> raid type. It used the index in the array to determine the
>>>> index.
>>>>
>>>> Ultimately, though, this wastes more memory than it saves in
>>>> all but the most complex scenarios and introduces kobject
>>>> lifetime questions.
>>>>
>>>> This patch allocates the kobjects dynamically instead. Note
>>>> that we also remove the kobject_get/put of the parent kobject
>>>> since kobject_add and kobject_del do that internally.
>>>>
>>>> Signed-off-by: Jeff Mahoney <jeffm@xxxxxxxx>
>>>
>>> Lets see how smart patchwork is:
>>>
>>> Reported-by:David Sterba <dsterba@xxxxxxx>
> 
>> For future reference, not that smart.
> 
> Have you already added it or should I just post it again with the rb?
> 

Thanks, I did it here.  I was just curious if patchwork would save me
the pain of editing the mbox file ;)

-chris

--
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