Vladimir Serbinenko
80be497baf
xfs: Fix handling of symlink with crc-enabled filesystem.
...
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=049dcfa03c2217f3af9f108d3f41229b8155c534
Last-Update: 2015-11-05
Patch-Name: xfs-crc-fix-symlink.patch
2015-11-25 16:04:43 +00:00
Vladimir Serbinenko
442d2d2861
XFS: Fix wrong alignment treatment.
...
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=ff3c2007ef22b4385ff189b60aaf1f9de3dff24b
Last-Update: 2015-11-05
Patch-Name: xfs-fix-alignment.patch
2015-11-25 16:04:43 +00:00
Jan Kara
cd6abe82a6
xfs: V5 filesystem format support
...
Add support for new XFS on disk format. We have to handle optional
filetype fields in directory entries, additional CRC, LSN, UUID entries
in some structures, etc.
Signed-off-by: Jan Kara <jack@suse.cz>
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=b6e80c7778b708c1632d957d00507aad60d9e255
Bug-Debian: https://bugs.debian.org/772565
Last-Update: 2015-11-05
Patch-Name: xfs-v5.patch
2015-11-25 16:04:43 +00:00
Jan Kara
3bfa66ba21
xfs: Add helpers for inode size
...
Add helpers to return size of XFS inode on disk and when loaded in
memory.
Signed-off-by: Jan Kara <jack@suse.cz>
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=d3ffeb9a9a54148af610cd122028783217d30699
Last-Update: 2015-11-05
Patch-Name: xfs-add-inode-size-helpers.patch
2015-11-25 16:04:42 +00:00
Jan Kara
82f382747d
xfs: Convert inode numbers to cpu endianity immediately after reading
...
Currently XFS driver converted inode numbers to native endianity only
when using them to compute inode position. Although this works, it is
somewhat confusing. So convert inode numbers when reading them from disk
structures as every other field.
Signed-off-by: Jan Kara <jack@suse.cz>
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=a139188eb559ee23f51540948ec84ef5948fb2d1
Last-Update: 2015-11-05
Patch-Name: xfs-simplify-inode-endian-conversion.patch
2015-11-25 16:04:42 +00:00
Jan Kara
7d12bcf99a
xfs: Fix termination loop for directory iteration
...
Directory iteration used wrong position (sizeof wrong structure) for
termination of iteration inside a directory block. Luckily the position
ended up being wrong by just 1 byte and directory entries are larger so
things worked out fine in practice. But fix the problem anyway.
Signed-off-by: Jan Kara <jack@suse.cz>
Origin: upstream, http://git.savannah.gnu.org/cgit/grub.git/commit/?id=1570140f0362d9936f97a014a9fa5cecbca54f07
Last-Update: 2015-11-05
Patch-Name: xfs-fix-directory-iteration.patch
2015-11-25 16:04:42 +00:00
Thomas Falcon
d771f207d2
btrfs: fix get_root key comparison failures due to endianness
...
* grub-core/fs/btrfs.c (get_root): Convert
GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian.
Origin: upstream, http://git.savannah.gnu.org/gitweb/?p=grub.git;a=commitdiff;h=4afd0107efa6a2d9cbe6fc71c529264dc2b9fb8a
Forwarded: not-needed
Last-Update: 2014-03-31
Patch-Name: btrfs-endian.patch
2015-11-25 16:04:41 +00:00
Vladimir Serbinenko
2e238b3708
Make grub_zlib_decompress handle incomplete chunks.
...
Fixes squash4.
2013-12-18 23:39:49 +01:00
Vladimir Serbinenko
b8765fa082
Implement better integration with Mac firmware.
2013-12-17 15:21:02 +01:00
Vladimir Serbinenko
cc6fb517de
Remove practice of assigning random const pointers to device id.
...
This is not required as cache code already checks driver id as well.
2013-12-16 14:49:11 +01:00
Vladimir Serbinenko
7e47e27bd8
Add gcc_struct to all packed structures when compiling with mingw.
...
Just "packed" doesn't always pack the way we expect.
2013-12-15 14:14:30 +01:00
Vladimir Serbinenko
1a454efe89
Decrease stack usage in BtrFS.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Allocate on heap
rather than stack.
2013-11-16 16:15:26 +01:00
Vladimir Serbinenko
7b5d51d837
Decrease stack usage in JFS.
...
We have only 92K of stack and using over 4K per frame is wasteful
* grub-core/fs/jfs.c (getblk): Allocate on heap rather than on
stack. Note: this function is recursive.
(grub_jfs_read_inode): Read only part we care about.
2013-11-16 16:00:42 +01:00
Colin Watson
5da5517288
* grub-core/fs/ext2.c (grub_ext2_read_block): Factor out common code for indirect block handling.
...
Saves 185 bytes on compressed image.
2013-11-14 08:13:06 +00:00
Vladimir Serbinenko
81023dbdbd
* grub-core/fs/zfs/zfs.c (ZAP_LEAF_NUMCHUNKS): Use unsigned arithmetics.
2013-11-13 09:27:36 +01:00
Vladimir Serbinenko
3bbeade41d
* grub-core/fs/proc.c: Allow \0 in proc files.
2013-11-12 15:57:09 +01:00
Vladimir Serbinenko
ac8cac1dac
* grub-core/fs/ext2.c: Remove variable length arrays.
2013-11-12 03:04:19 +01:00
Vladimir Serbinenko
9612ebc00e
Add new ports: i386-xen and x86_64-xen. This allows running GRUB in
...
XEN PV environment and load kernels.
2013-11-09 21:29:11 +01:00
Vladimir Serbinenko
8b66bb5d8d
* grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Return right error
...
type.
(grub_gcm_decrypt): Likewise.
(algo_decrypt): Likewise.
(grub_zfs_decrypt_real): Transform error type.
2013-11-07 00:59:44 +01:00
Vladimir Serbinenko
70bb6c855e
* grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix type of
...
entry_type.
2013-11-07 00:48:04 +01:00
Vladimir Serbinenko
bed78ef4e6
Revert "Attempts at ZFS options"
...
It was accidently committed to wrong branch
This reverts commit 0ee5cdfe9f .
2013-11-03 16:52:33 +01:00
Vladimir Serbinenko
0ee5cdfe9f
Attempts at ZFS options
2013-11-03 16:40:32 +01:00
Vladimir Serbinenko
1397f0b520
* grub-core/fs/fshelp.c (find_file): Save ctx->next when calling
...
find_file recursively for symlink.
2013-11-02 20:29:02 +01:00
Vladimir Serbinenko
f169f65e75
* grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call
...
file_progress_read_hook.
* grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise.
2013-11-02 16:30:53 +01:00
Vladimir Serbinenko
bf0f3a8c3e
* grub-core/fs/tar.c (grub_cpio_read): Add read_hook.
2013-11-01 23:33:59 +01:00
Vladimir Serbinenko
cb72aa1809
Rewrite blocklist functions in order to get progress when
...
reading large extents and decrease amount of blocklist hook calls.
2013-11-01 23:28:03 +01:00
Vladimir Serbinenko
eb03ede014
* grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather
...
strncpy.
* grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise.
* grub-core/kern/misc.c (grub_strncpy): Move from here ...
* include/grub/misc.h (grub_strncpy): ... to here. Make inline.
* grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT
+ strcpy rather than strncpy.
2013-11-01 18:44:46 +01:00
Vladimir Serbinenko
8fbe5c7df7
* grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size.
...
(check_pool_label): Likewise. Fixes overflow.
(nvlist_find_value): Fix comparison.
2013-11-01 18:41:52 +01:00
Vladimir Serbinenko
e54b8f536b
* include/grub/misc.h (grub_strcat): Removed. All users changed to
...
more appropriate functions.
2013-11-01 16:27:37 +01:00
Vladimir Serbinenko
82591fa6e7
Make / in btrfs refer to real root, not the default volume.
...
Modify mkrelpath to work even if device is mounted with subvolid option.
2013-10-28 01:37:19 +01:00
Vladimir Serbinenko
2a8a75855c
* grub-core/fs/iso9660.c: Replace strncat with memcpy.
...
* include/grub/misc.h: Remove strncat.
* grub-core/lib/posix_wrap/string.h: Likewise.
2013-10-26 12:49:51 +02:00
Vladimir Serbinenko
fb56391ee3
* grub-core/fs/zfs/zfs.c (xor_out): Use unsigned modular arithmetics
...
rather than signed one.
(recovery): Likewise.
2013-10-25 20:31:04 +02:00
Vladimir Serbinenko
6673d8e7b6
* grub-core/fs/ext2.c (EXT2_BLOCK_SIZE): Make unsigned.
2013-10-25 18:03:36 +02:00
Paulo Flabiano Smorigo
84a0e9699f
Add progress module to display load progress of files.
...
* grub-core/lib/progress.c: New file.
* grub-core/Makefile.core.def (progress): New module.
* grub-core/kern/file.c (grub_file_open): File name added.
* (grub_file_read): Progress hook added.
* grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
* grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
* include/grub/file.h (struct grub_file): Add progress module
* members.
* include/grub/term.h (struct grub_term_output): Likewise.
* grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
Terminal velocity added.
* grub-core/osdep/windows/emuconsole.c (grub_console_term_output):
* Likewise.
* grub-core/term/arc/console.c (grub_console_term_output): Likewise.
* grub-core/term/efi/console.c (grub_console_term_output): Likewise.
* grub-core/term/gfxterm.c (grub_video_term): Likewise.
* grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output):
* Likewise.
* grub-core/term/i386/pc/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
* grub-core/term/ieee1275/console.c (grub_console_term_output):
* Likewise.
* grub-core/term/morse.c (grub_audio_term_output): Likewise.
* grub-core/term/serial.c (grub_serial_term_output): Likewise.
* grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
* grub-core/term/uboot/console.c (uboot_console_term_output):
* Likewise.
2013-10-22 16:42:20 -02:00
Vladimir 'phcoder' Serbinenko
067e6ae74d
* grub-core/fs/ntfs.c (grub_ntfs_mount): Remove redundant check.
...
Saves 5 bytes on compressed image.
2013-10-21 13:14:38 +02:00
Vladimir 'phcoder' Serbinenko
64a6c791e1
* grub-core/fs/ntfs.c: Move common UTF-16 handling to a separate
...
function get_utf8.
Saves 379 bytes on compressed image.
2013-10-21 13:04:41 +02:00
Vladimir 'phcoder' Serbinenko
979d9f521d
* grub-core/fs/ntfs.c: Handle 48-bit MFT no.
2013-10-21 12:58:38 +02:00
Vladimir 'phcoder' Serbinenko
1437da5440
* grub-core/fs/ntfs.c (read_run_data): Rewrite using bitfields.
...
Saves 40 bytes on compressed image.
2013-10-21 04:05:23 +02:00
Vladimir 'phcoder' Serbinenko
d9ee2269c8
* grub-core/fs/ntfs.c (grub_ntfs_iterate_dir): Use grub_uint8_t for
...
mask rather than 64-bit type.
Saves 20 bytes on compressed image.
2013-10-21 03:23:57 +02:00
Vladimir 'phcoder' Serbinenko
63efa602ff
* grub-core/fs/ntfs.c (read_data): Move code for compressed data to ...
...
* grub-core/fs/ntfscomp.c (ntfscomp): ... here.
2013-10-21 02:48:19 +02:00
Vladimir 'phcoder' Serbinenko
2a40badf82
* grub-core/fs/ufs.c: Remove variable length arrays.
2013-10-20 23:07:50 +02:00
Vladimir 'phcoder' Serbinenko
1ba6b9b96f
* grub-core/fs/ntfs.c: Add comment about fixed allocation size.
2013-10-20 18:48:06 +02:00
Vladimir 'phcoder' Serbinenko
f3e393411b
* grub-core/fs/zfs.c: Remove variable length arrays.
...
Reduces zfs.mod by 160 bytes (208 compressed).
2013-10-20 18:42:40 +02:00
Vladimir 'phcoder' Serbinenko
7152393503
* grub-core/fs/zfs/zfs.c (check_pool_label): Fix memory leak.
2013-10-20 17:57:28 +02:00
Vladimir 'phcoder' Serbinenko
88ce4cd7f6
* grub-core/fs/ntfs.c: Remove variable length arrays.
...
Increases ntfs.mod by 64 bytes (but decreases by 3 when
compressed).
2013-10-20 17:35:17 +02:00
Vladimir 'phcoder' Serbinenko
66123940c7
* grub-core/fs/hfs.c: Remove variable length arrays.
...
Reduces hfs.mod by 8 bytes (52 compressed).
2013-10-20 17:24:19 +02:00
Vladimir 'phcoder' Serbinenko
0927e5bdc8
* grub-core/fs/udf.c: Remove variable length arrays.
...
Increases udf.mod by 128 bytes (but decreases by 13 compressed when
compressed).
2013-10-20 16:33:12 +02:00
Vladimir 'phcoder' Serbinenko
9c12ac9773
* grub-core/fs/iso9660.c: Remove variable length arrays.
...
Increases iso9660.mod by 200 bytes (but decreases by 79 compressed when
compressed).
2013-10-20 16:21:02 +02:00
Vladimir 'phcoder' Serbinenko
97ec2d71d0
* grub-core/fs/nilfs2.c: Remove variable length arrays.
...
Increases xfs.mod by 24 bytes (but decreases by 115 compressed when
compressed).
2013-10-20 16:17:41 +02:00
Vladimir 'phcoder' Serbinenko
156e4ea071
* grub-core/fs/xfs.c: Remove variable length arrays.
...
Reduces xfs.mod by 40 bytes (43 compressed).
2013-10-20 15:52:27 +02:00