On Fri, 17 Aug 2007 17:49:30 -0400
Josef Bacik <[EMAIL PROTECTED]> wrote:

> Hello,
> 
> This patch adds block accounting per root_item in btrfs, and adds a
> sysfs infrastructure to report it (as well as future things).  The
> sysfs heirarchy is 
> 
> /sys/fs/btrfs/<sb->s_id>/<root_item name>/

Ok, this is almost perfect ;)  I see one small problem, quoting from
the kobject docs (Documentation/kobject.txt

-------
It is _imperative_ that you supply a destructor for dynamically
allocated kobjects to free them if you are using kobject reference
counts. The reference count controls the lifetime of the object.
If it goes to 0, then it is assumed that the object will
be freed and cannot be used.
-------

This means that we have to free anything referenced by the kobject in
the destructor for the kobject.  Looks like most of your sysfs bits
touch things from kmalloc (struct btrfs_root and struct btrfs_fs_info),
with the exception of the 3 fields that reference struct
btrfs_fs_info->disk_super.

What I would do in this case is just get rid of those sysfs methods.
You can get them via df, and we can deal with other problems later ;)

-chris

_______________________________________________
Btrfs-devel mailing list
[email protected]
http://oss.oracle.com/mailman/listinfo/btrfs-devel

Reply via email to