Thank you for the advise.
I am still wonder why there are same-name files in btrfs(kernel source) and 
btrfs-progs.
They are quite many as follows.
    backref.{c, h}
    ctree.{c, h}
    dir-item.c
    disk-io.{c, h}
    extent_io.{c, h}
    extent-tree.c
    file.c
    file-item.c
    free-space-cashe.{c, h}
    hash.h
    inode.c
    inode-item.c
    inode-map.c
    print-tree.{c, h}
    props.{c, h}
    qgroup.{c, h}
    root-tree.c
    send.h
    ulist.{c, h}
    uuid-tree.c
    volumes.{c, h}

It seems btrfs-progs files have been ported from kernel files.
Are they the result of efforts to port btrfs from kernel to user space?
Or at least can I utilize the them so that I have to only port the remaining 
files?

------- Original Message -------
Sender : Austin S Hemmelgarn<ahferro...@gmail.com> 
Date   : 2015-04-08 20:37 (GMT+09:00)
Title  : Re: Porting BTRFS to user space

On 2015-04-07 19:57, 인정식 wrote:
> Thank you for the information.
> I just found that btrfs-progs includes several files that seem modified from 
> btrfs kernel source.
> I am not sure exactly what they are.
> Web pages say libbtrfs is to provide interface for apps that use btrfs.
> Why should there be duplicated codes between kernel and user space?
> Is it an on-going effort to port whole btrfs to user space?
> 
> Could you lead me to some more information about libbtrfs or how to port 
> btrfs to user space?
> 
> Thank you,
> Jeongsik
> 
> 
As far as I understand it, the intent is to allow things like btrfs
check and btrfs restore to still work even if the kernel doesn't have
btrfs support.  From what I can tell, you are the first person to
actually be serious about getting BTRFS running in userspace, so there
probably isn't much BTRFS specific literature out there.

I would, however suggest looking at the FUSE drivers for ext4 and ZFS,
as those are both ported from kernel space, and should give some good
examples of where to start.

<p>&nbsp;</p><p>&nbsp;</p>

Reply via email to