Szymon Janc
4334690fbf
More work on LZO for btrfs support. Some fixes and code refactoring.
2011-08-20 02:05:08 +02:00
Szymon Janc
095f077e6d
Add support for LZO compression in btrfs.
...
* Makefile.util.def (libgrubmods.a): Add minilzo.c and add required flags
to cflags in cppflags.
* Makefile.core.def (btrfs): Likewise.
* grub-core/fs/btrfs.c: Include minilzo.h.
(grub_btrfs_superblock): Add sectorsize, nodesize, leafsize, stripsize and
dummy5 field.
(GRUB_BTRFS_COMPRESSION_LZO): New define.
(grub_btrfs_extent_read): Add support for LZO compression type.
2011-08-14 11:46:05 +02:00
Szymon Janc
b6085f3236
* grub-core/fs/btrfs.c: Some code style fixes.
2011-08-14 11:42:53 +02:00
Yves Blusseau
9e322ce8de
Display the path of the file when file is not found
...
* grub-core/fs/fat.c: Display the filename when file is not found.
* grub-core/fs/fshelp.c: Likewise.
* grub-core/fs/hfs.c: Likewise.
* grub-core/fs/jfs.c: Likewise.
* grub-core/fs/minix.c: Likewise.
* grub-core/fs/ufs.c: Likewise.
* grub-core/fs/btrfs.c: Likewise.
* grub-core/commands/i386/pc/play.c: Likewise.
2011-06-26 21:48:52 +02:00
Vladimir 'phcoder' Serbinenko
bf947d36e3
Use full 64-bit division.
...
* grub-core/kern/misc.c (grub_divmod64_full): Renamed to ...
(grub_divmod64): ... this.
* include/grub/misc.h (grub_divmod64): Removed. All users switch to full
version.
2011-05-18 15:35:19 +02:00
Vladimir 'phcoder' Serbinenko
983b414d77
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
...
warning. Move variables before code while on it.
2011-05-15 10:23:02 +02:00
Vladimir 'phcoder' Serbinenko
34faa5955a
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Support huge
...
chunks.
* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_BUG.
2011-04-18 23:10:19 +02:00
Vladimir 'phcoder' Serbinenko
fe6b2cbaa6
BtrFS support. Written by me (Vladimir) with important bugfixes and
...
even more important testing by Colin.
* Makefile.util.def (libgrubmods.a): Add crc.c and gzio.c
* grub-core/Makefile.core.def (btrfs): Add crc.c.
* grub-core/fs/btrfs.c: Stub replaced with real implementation.
* grub-core/io/gzio.c (grub_gzio): New fields mem_input_size,
mem_input_off and mem_input. All users updated to accept in-RAM input.
(gzio_seek): New function.
(test_zlib_header): Likewise.
(grub_gzio_read): Likewise.
(grub_zlib_decompress): Likewise.
* grub-core/kern/emu/getroot.c (grub_find_root_device_from_mountinfo):
Accept partial and non-virtual mounts.
(grub_guess_root_device): Do rescanning after device_from_mountinfo to
avoid receiving /dev/dm-X as device.
* grub-core/kern/emu/misc.c (grub_make_system_path_relative_to_its_root):
Handle bind and partial mounts.
* grub-core/lib/crc.c: New file.
* include/grub/deflate.h: Likewise.
* include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): New
proto.
* include/grub/lib/crc.h: New file.
2011-04-11 23:26:41 +02:00
Vladimir 'phcoder' Serbinenko
e745cf0ca6
Implement automatic module license checking according to new GNU
...
guidelines.
* grub-core/kern/dl.c (grub_dl_check_license): New function.
(grub_dl_load_core): Use grub_dl_check_license.
* include/grub/dl.h (GRUB_MOD_SECTION): New macro.
(GRUB_MOD_LICENSE): Likewise.
(GRUB_MOD_DUAL_LICENSE): Likewise.
All modules updated.
2011-04-11 23:01:51 +02:00
Colin Watson
2a9bc0169e
* grub-core/fs/btrfs.c (grub_btrfs_fs) [GRUB_UTIL]: Set
...
reserved_first_sector to 1. btrfs reserves plenty of space for boot
loaders.
Reported by: Gene Cumm. Fixes Ubuntu bug #757446 .
2011-04-11 16:06:37 +01:00
Vladimir 'phcoder' Serbinenko
6a01f54aff
use actually filled extent size if available
2011-04-11 07:53:21 +02:00
Vladimir 'phcoder' Serbinenko
565f076311
Take extent offset in account on uncompressed extents
2011-04-11 07:52:39 +02:00
Vladimir 'phcoder' Serbinenko
228f95a250
Fix filename comparison
2011-04-11 07:51:15 +02:00
Vladimir 'phcoder' Serbinenko
ec25b87d29
Add dprintfs to report chunk lookups
2011-04-11 07:50:22 +02:00
Vladimir 'phcoder' Serbinenko
e8980227e8
Remove stale comment about redundancy
2011-04-11 07:49:26 +02:00
Vladimir 'phcoder' Serbinenko
099821e9e4
Fix RAID1/duplicated chunk size calculation
2011-04-09 21:55:50 +02:00
Colin Watson
5870a4a06f
typo
2011-02-04 16:35:07 +00:00
Vladimir 'phcoder' Serbinenko
b1969b3049
* grub-core/fs/btrfs.c (grub_btrfs_mount): Transform out of range into
...
badfs.
Reported by: TiCPU.
2011-01-10 17:35:32 +01:00
Vladimir 'phcoder' Serbinenko
d6f07b29fc
mtime btrfs support
2010-12-10 14:38:16 +01:00
Vladimir 'phcoder' Serbinenko
79282228ec
use anopther RAID1(0) copy if main one fails
2010-12-06 20:26:49 +01:00
Vladimir 'phcoder' Serbinenko
3be8e5ea96
BtrFS zlib compression support
2010-12-03 21:42:13 +01:00
Vladimir 'phcoder' Serbinenko
6333f1e9b6
Add RAID10 support
2010-12-03 18:11:10 +01:00
Vladimir 'phcoder' Serbinenko
db51e201fc
symlink loop detection. btrfs-raid0 and raid1 support
2010-12-03 16:56:49 +01:00
Vladimir 'phcoder' Serbinenko
0e761d3dbd
Rename some btrfs variables for more uniformity
2010-12-03 11:30:24 +01:00
Vladimir 'phcoder' Serbinenko
34018a7d1f
symlink support
2010-12-03 10:44:47 +01:00
Vladimir 'phcoder' Serbinenko
a43c4bc55f
buffer extent for performance
2010-12-02 15:28:29 +01:00
Vladimir 'phcoder' Serbinenko
8006f6779e
Fix in-extent reading
2010-12-02 15:08:46 +01:00
Vladimir 'phcoder' Serbinenko
98042add0c
Fix handling of non-leaf next
2010-12-02 13:57:07 +01:00
Vladimir 'phcoder' Serbinenko
eb82b8569a
Remove leftover unused attribute
2010-12-02 13:32:24 +01:00
Vladimir 'phcoder' Serbinenko
d9865a25f7
Implicitly skip /default prefix
2010-12-02 13:31:50 +01:00
Vladimir 'phcoder' Serbinenko
93e0c7a7c2
Fix subvolume handling
2010-12-02 13:23:20 +01:00
Vladimir 'phcoder' Serbinenko
9b4cb862f8
handle directories correctly
2010-12-02 00:11:14 +01:00
Vladimir 'phcoder' Serbinenko
1f60e35331
initialise the type of search for root
2010-12-02 00:03:19 +01:00
Vladimir 'phcoder' Serbinenko
ac5dcabe67
Fix incorrect statement from previous commit
2010-12-01 23:16:19 +01:00
Vladimir 'phcoder' Serbinenko
a3d1fcfb10
Fix 2 warnings
2010-12-01 22:59:51 +01:00
Vladimir 'phcoder' Serbinenko
d980826df2
Remove \n from error message
2010-12-01 16:45:12 +01:00
Vladimir 'phcoder' Serbinenko
df80cd06fb
Check file type
2010-12-01 16:36:05 +01:00
Vladimir 'phcoder' Serbinenko
355b3eed0f
support trees
2010-12-01 16:22:51 +01:00
Vladimir 'phcoder' Serbinenko
b18610feb5
partial btrfs support. Now able to list and access files as long as all trees are flat
2010-12-01 01:23:47 +01:00
Robert Millan
9dfe92d07a
2010-11-18 Robert Millan <rmh@gnu.org>
...
* grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp()
with grub_memcmp().
2010-11-18 16:52:27 +01:00
Robert Millan
4dfbc57428
2010-09-09 Robert Millan <rmh@gnu.org>
...
Basic Btrfs support (detection and UUID).
* grub-core/fs/btrfs.c: New file.
* Makefile.util.def (library): Register btrfs.c.
* grub-core/Makefile.core.def: Likewise.
2010-09-09 01:12:10 +02:00