Problem with building btrfs into the kernel instead of module
Hi
I have compiled btrfs into the kernel instead of building as module. Then I create a btrfs filesystem on a partition and try to mount it and I get the following error.
# mkfs.btrfs /dev/sda1
fs created label (null) on /dev/sda1
nodesize 4096 leafsize 4096 sectorsize 4096 size 4.88GB
Btrfs v0.16-8-g09ab036# mount -t btrfs /dev/sda1 /mnt/sda1/ mount: unknown filesystem type 'btrfs'
If I perform the above steps with btrfs built as a module I don't get any error.
Is this a known issue or am I doing something wrong?
-Arun
Quoted 5 lines · Arun Bhanu
Hi
I have compiled btrfs into the kernel instead of building as module. Then I create a btrfs filesystem on a partition and try to mount it and I get the following error.
fs/btrfs/Makefile is a bit wonky. This at least makes it work both ways:
fs/btrfs/Makefile +1 -1
@@ -1,7 +1,7 @@ ifneq ($(KERNELRELEASE),) # kbuild part of makefile -obj-m := btrfs.o +obj-$(CONFIG_BTRFS_FS) := btrfs.o btrfs-y := super.o ctree.o extent-tree.o print-tree.o root-tree.o
dir-item.o \
file-item.o inode-item.o inode-map.o disk-io.o \
transaction.o inode.o file.o tree-defrag.o \@@ -14,7 +14,7 @@ else
KERNELDIR := /lib/modules/uname -r/build
all:
- $(MAKE) -C $(KERNELDIR) M=pwd modules
+ $(MAKE) -C $(KERNELDIR) M=pwd CONFIG_BTRFS_FS=m modules
modules_install:
$(MAKE) -C $(KERNELDIR) M=`pwd` modules_install
Quoted 8 lines · * Sage Weil ([email protected]) wrote:
Quoted 5 lines · Arun Bhanu
Hi
I have compiled btrfs into the kernel instead of building as module. Then I create a btrfs filesystem on a partition and try to mount it and I get the following error.
fs/btrfs/Makefileis a bit wonky. This at least makes it work both ways:
Thanks. With your patch applied, it is working as expected in both cases.
Quoted 16 lines
fs/btrfs/Makefile +1
-1@@ -1,7 +1,7 @@ ifneq ($(KERNELRELEASE),) # kbuild part of makefile -obj-m := btrfs.o +obj-$(CONFIG_BTRFS_FS) := btrfs.o btrfs-y := super.o ctree.o extent-tree.o print-tree.o root-tree.o dir-item.o \ file-item.o inode-item.o inode-map.o disk-io.o \transaction.o inode.o file.o tree-defrag.o \
fs/btrfs/Makefile else · line 20
Quoted 8 lines
fs/btrfs/Makefile +1
-1@@ -14,7 +14,7 @@ else KERNELDIR := /lib/modules/`uname -r`/build all: - $(MAKE) -C $(KERNELDIR) M=`pwd` modules + $(MAKE) -C $(KERNELDIR) M=`pwd` CONFIG_BTRFS_FS=m modules modules_install: $(MAKE) -C $(KERNELDIR) M=`pwd` modules_install
-Arun