grub-devel
[Top][All Lists]
Advanced

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

Fwd: Update: btrfs patch for grub2 with annotations


From: Surbhi Palande
Subject: Fwd: Update: btrfs patch for grub2 with annotations
Date: Wed, 11 Aug 2010 15:35:49 +0300
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.10) Gecko/20100527 Thunderbird/3.0.5

Hi Chris,

I was wondering if you had a chance to look at the btrfs patch and if it could be accepted with a GPLv2+ license at least?

Thanks a lot!

Warm Regards,
Surbhi.

P/S: I have copy pasted the original message sent to address@hidden at the end of this email.

-------- Original Message --------
Subject: btrfs patch for grub2 with annotations
Date: Wed, 14 Jul 2010 22:15:51 +0300
From: Surbhi Palande <address@hidden>
Reply-To: address@hidden
Organization: Canonical
To: address@hidden

Hi Chris,

As discussed on the #btrfs, I am sending you the btrfs patches for
grub2. I have also attached a btrfs-annotation.txt with a list of
functions and description of whether they are different or based on some
other implementation.

If the code based on syslinux (http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-4.01.tar.bz2) cannot be accepted under GPLv2+, then I will rewrite that code either entirely or base it on the patch in grub-legacy.

I however do hope that this code can at least passed off as GPLv2+.

Thanks a lot!

Warm Regards,
Surbhi.


-------- Original Message Copy Pasted here --------
Subject: btrfs support for grub2
Date: Wed, 5 Jul 2010
From: Surbhi Palande <address@hidden>
Reply-To: address@hidden
Organization: Canonical
To: address@hidden

Hi All,

I am attaching two patches along with this email for enabling btrfs support in grub2. Please note that the licensing for this patch needs to be sorted out as grub-2 is at GPL-v3 and btrfs support in the linux kernel is at GPL-v2.

I have referred to the btrfs code in the kernel, btrfs-tools, sys-linux and legacy grub. I have used some code from sys-linux's btrfs support (written by Alek Du). As agreed in #btrfs irc, I am sending this email to Chris Mason to find out whether the code in the patch can be passed under GPLv3.

The patch provides btrfs support for the following:
1) single device.
2) subvolumes.

I have tested this patch using grub-fstest (using subcommands-ls, hex and crc). *I have not yet tested it by booting through the btrfs partition*

This is the first version of the patch and I have listed a few changes that could be made:

1) change the storage identifiers to the grub compliant ones.
2) linkcount for symbolic links needs better handling

I have a decompression support for btrfs-grub2 in an almost ready state. I will send that patch after these patches are sorted out.

Please do let me know your comments. I will be glad to incorporate the changes inorder to get btrfs support into grub-2.

Thanks for your time!

Warm Regards,
Surbhi.

P/S:
Following is a brief procedure with some eg. of how one can test these patches in qemu:

1) used an image created with "dd" as a hdb for qemu:
kvm -hda ubuntu.img -hdb btrfs.img -m 512 -net nic,macaddr='DE:AD:BE:EF::'
-net tap
This is detected as /dev/sdb in qemu.
2) Booted through qemu and then did: fdisk -l /dev/sdb, created a partition
table in /dev/sdb
4) Used mkfs.btrfs -A <byte_num> to create a filesystem at a byte reflected by
the "start" field  of the output of fdisk -ul
and then mounted this btrfs img/partition using mount -o offset=<byte-num>.
Populated the fs.
5) compiled grub-2 with this patch
6) tested using this command:
   a) grub-fstest /dev/sdb ls '(loop0,1)/' etc.

Subvolumes can be created as follows:
1) mount -t btrfs /dev/sdb /mnt/btrfs
2) btrfsctl -S subvol1 /mnt
3) mount -t btrfs -o subvol=subvol1 /dev/sdb /mnt/btrfs_subvol
4) create some files, dir, links on /mnt/btrfs_subvol

Now you can check the contents of the subvolume by using
./grub_fstest /dev/sdb ls '(loop0,1)/subvol1/'

surbhi (2):
  config support for btrfs
  btrfs support for grub-2

 conf/common.rmk           |   40 +-
 conf/i386-pc.rmk          |    4 +-
 conf/sparc64-ieee1275.rmk |    5 +-
fs/btrfs.c | 1434 +++++++++++++++++++++++++++++++++++++++++++++
 fs/btrfs.h                |  385 ++++++++++++
 5 files changed, 1843 insertions(+), 25 deletions(-)
 create mode 100644 fs/btrfs.c
 create mode 100644 fs/btrfs.h


Attachment: btrfs-annotation.txt
Description: Text document

Attachment: 0001-config-support-for-btrfs.patch
Description: Text Data

Attachment: 0002-btrfs-support-for-grub-2.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]