[haiku] Re: GSoC 17: Introduction to myself and project discussion
- From: Adrien Destugues <pulkomandy@xxxxxxxxxxxxx>
- To: haiku@xxxxxxxxxxxxx
- Date: Fri, 3 Mar 2017 18:49:59 +0100
On Sat, Mar 04, 2017 at 12:35:35AM +0700, Hy Che wrote:
Sorry, I accidentally sent the email ....
this is what I have done:
mount -t userlandfs -p "btrfs" /dev/disk/ata/0/slave/raw /btrfs/ -> error
mkdir ~/config/non-packaged/add-ons/userlandfs/ (and cp shared obj
btrfs to this dir)
mount -t userlandfs -p "btrfs" /dev/disk/ata/0/slave/raw /btrfs -> still error
I think you are trying to use the btrfs kernel add-on in userland.
There are two kind of filesystems in Haiku. They can run either in the
kernel, or in userspace. Userlandfs is only for the latter. It is used
in 3 cases:
- For FUSE filesystems, as it provides a compatible API, making it easy
to port those from other OSes
- For testing filesystems that would normally be run in the kernel, as a
- For filesystems that are too complex/dangerous to run kernel side.
You are in case 2. However, the btrfs code was not prepared for this.
You can either mount using the kernel add-on directly:
mount -t btrfs /dev/disk/ata/0/slave/raw /btrfs/
(by the way, is your whole slave hard disk formatted as a BTRFS
volume, without a partition table? Otherwise you may need to adjust
Or, you need to adjust the build files in
src/tests/add-ons/kernel/file_systems/userlandfs so you can build btrfs
as an userland module (look at the other filesystems in that directory,
the process should be pretty similar).
Other related posts: