search for: gpt_part

Displaying 15 results from an estimated 15 matches for "gpt_part".

2010 Jul 30
4
chain.c: fix v2 for public indexes in iterators (for master and disklib)
>From the earlier patches - that simple fix for indexes not counting non-data partitions in gpt and mbr cases. Patches don't touch any other parts of the code at this stage - bigger stuff later for disklib as we agreed - but this is potentially useful right now. Michal Soltys (1): chain.c: fix public index value in mbr and gpt iterators
2015 Sep 24
0
[PATCH] com32/disk: add UEFI support
...nst char disk_gpt_sig_magic[] = "EFI PART"; +/* common.c */ +extern void disk_dos_part_dump(const struct disk_dos_part_entry *const part); +extern void guid_to_str(char *buf, const struct guid *const id); +extern int str_to_guid(const char *buf, struct guid *const id); +extern void disk_gpt_part_dump(const struct disk_gpt_part_entry *const + gpt_part); + +/* disk.c */ +#ifndef SYSLINUX_EFI extern int disk_int13_retry(const com32sys_t * inreg, com32sys_t * outreg); +#endif + extern int disk_get_params(int disk, struct disk_info *const diskinfo); extern void...
2010 Jul 23
0
[PATCH] chain.c: gpt's index/private.index mismatch fix, cosmetic iterator changes
...r.parent); @@ -629,7 +624,6 @@ static struct disk_part_iter *next_mbr_part(struct disk_part_iter *part) part->record = table + part->private.mbr_index; return part; - free(ebr_part); err_alloc: free(part->block); @@ -869,7 +863,7 @@ static struct disk_part_iter *next_gpt_part(struct disk_part_iter *part) part->private.gpt.part_guid = &gpt_part->uid; part->private.gpt.part_label = gpt_part->name; /* Update our index */ - part->index++; + part->index = part->private.gpt.index + 1; gpt_part_dump(gpt_part); /* In a G...
2014 Nov 22
1
Get rid of printf format warning format ‘%llx’ expects type ‘long long unsigned int’, but argument 2 has type ‘uint64_t’
...5a99bb4..d5f4489 100644 --- a/com32/lib/syslinux/disk.c +++ b/com32/lib/syslinux/disk.c @@ -35,6 +35,7 @@ #include <core.h> #include <dprintf.h> +#include <inttypes.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -528,9 +529,9 @@ void disk_gpt_part_dump(const struct disk_gpt_part_entry *const gpt_part) char guid_text[37]; dprintf("----------------------------------\n" - "GPT part. LBA first __ : 0x%.16llx\n" - "GPT part. LBA last ___ : 0x%.16llx\n" - "GPT part. attribs ____ : 0x%.16ll...
2010 Aug 08
1
PATCH/RFC chain.c: update iterator code, yank from chain.c, move both to separate directory
1) code split and move Iterator related functionality is yanked from chain.c and moved to iterator.{c,h}. Both are moved to com32/chain and this way chain.c is ready for further splitting. Alternatively, partiter could be moved to com32/lib at any time in the future. It's potentially useful for other modules (e.g. if someone wanted to code partition dumper or editor). 2) Iterator updates
2013 Oct 18
0
[RFC/PATCH 1/3] Move partiter from com32/chain to com32/lib/syslinux
...- iter->type = typedos; - return 0; -bail: - pi_dtor_(iter); - return -1; -} - -/* pi_gpt_ctor() - GPT iterator specific initialization */ -static int pi_gpt_ctor(struct part_iter *iter, - const struct disk_info *di, int flags, - const struct disk_gpt_header *gpth, const struct disk_gpt_part_entry *gptl -) -{ - uint64_t siz; - - if (pi_ctor(iter, di, flags)) - return -1; - - siz = (uint64_t)gpth->part_count * gpth->part_size; - - if (!(iter->data = malloc((size_t)siz))) { - critm(); - goto bail; - } - - memcpy(iter->data, gptl, (size_t)siz); - - iter-&g...
2015 Jul 22
0
[PULL 1/8] Move partiter from com32/chain to com32/lib/syslinux
...- iter->type = typedos; - return 0; -bail: - pi_dtor_(iter); - return -1; -} - -/* pi_gpt_ctor() - GPT iterator specific initialization */ -static int pi_gpt_ctor(struct part_iter *iter, - const struct disk_info *di, int flags, - const struct disk_gpt_header *gpth, const struct disk_gpt_part_entry *gptl -) -{ - uint64_t siz; - - if (pi_ctor(iter, di, flags)) - return -1; - - siz = (uint64_t)gpth->part_count * gpth->part_size; - - if (!(iter->data = malloc((size_t)siz))) { - critm(); - goto bail; - } - - memcpy(iter->data, gptl, (size_t)siz); - - iter-&g...
2010 Jul 24
0
[PATCH] chain.c: allocation fixes
...igger an initial EBR load */ @@ -625,9 +639,7 @@ static struct disk_part_iter *next_mbr_part(struct disk_part_iter *part) return part; err_alloc: - - free(part->block); - free(part); + free_iter(part); return NULL; } @@ -870,9 +882,7 @@ static struct disk_part_iter *next_gpt_part(struct disk_part_iter *part) return part; err_last: - free(part->block); - free(part); - + free_iter(part); return NULL; } @@ -889,6 +899,7 @@ static struct disk_part_iter *get_first_partition(struct disk_part_iter *part) error("Count not allocate partition iterat...
2009 Jan 28
2
7.1 new install halts on BTX error
I upgraded my 7.0 system to 7.1-RELEASE with freebsd-update only to find that it no longer boots correctly, instead crashing with a BTX backtrace. If I break to the loader prompt and use 'ls /boot', I also get a backtrace. A new install of 7.1 on this hardware using a separate SCSI card and drive array also leads to a BTX backtrace. I have copied this below as the first (most
2012 Nov 06
50
chain.c32 (and partiter) updates v2
This is a bit updated set of chain.c32 changes that simplifies a few things (and in partiter part), fixes few minor issues and adds a few new features. Details are in the following commits, below is the summary and pull details at the end. Shao - any chance to peek over them ? Most of those are relatively simple changes and well tested, though of course something might have slipped my attention.
2012 Aug 20
13
[PATCH 00/12] Multidisk support
Hello, the following patches should get multidisk access working. The syntax accepted is the following: (hdx,y)/path/to/file where x is the disk number and start at 0 and the y is the partition number starting at 1. So (hd0,1) is the first partition of the first disk. the other accepted syntax is using MBR's 32 bits disk signature so for example: (mbr:0x12345678,2)/foo/bar would address
2010 Jul 26
5
[RFC/PATCH] New chainloading functionality
This patch introduces extra functionality to chain.c, mainly with reference to BPB adjustments, but not only that. It expects 3 small patches I sent earlier (they are included for easy reference, patches 1-3/4). The changes introduced are: 1) file and boot sector use separate options to control load address and jump address (if applicable). Options are as described below: *
2015 Jul 22
13
[PULL 0/8] MultiFS suppport for BIOS and EFI
So last week I was wondering if XFS was still working -- even with its last on-disk structure changes -- and it _suprisingly_ worked as expected. Right, now I can finally get rid of GRUB and use Syslinux to boot my Linux on EFI from a rootfs with xfs. Shit, I have two partitions (the first one being the required ESP) so there is no way to access the other partitions since because Syslinux does not
2013 Sep 06
1
[PATCH 2/2 v2] com32/disk: Improve flow at disk_write_sectors and disk_read_sectors.
...nt8_t); +}; + +enum disk_op_codes { + EBIOS_READ_CODE = 0x42, /* Extended read */ + EBIOS_WRITE_CODE = 0x43, /* Extended write */ + CHS_READ_CODE = 0x02, + CHS_WRITE_CODE = 0x03, +}; + struct disk_ebios_dapa { uint16_t len; uint16_t count; @@ -177,4 +190,9 @@ extern void disk_gpt_part_dump(const struct disk_gpt_part_entry *const gpt_part); extern void disk_gpt_header_dump(const struct disk_gpt_header *const gpt); +static inline void *ebios_disk_op(const struct disk_info *const, + com32sys_t *, uint64_t, uint8_t); +static inline void *chs_disk_op(const struct...
2013 Sep 06
1
[PATCH 2/2] com32/disk: Improve flow at disk_write_sectors and disk_read_sectors.
...uint32_t spt; + struct disk_ops ops; +}; + +enum disk_op_codes { + EBIOS_READ_CODE = 0x42, /* Extended read */ + EBIOS_WRITE_CODE = 0x43, /* Extended write */ + CHS_READ_CODE = 0x02, + CHS_WRITE_CODE = 0x03, }; struct disk_ebios_dapa { @@ -177,4 +193,9 @@ extern void disk_gpt_part_dump(const struct disk_gpt_part_entry *const gpt_part); extern void disk_gpt_header_dump(const struct disk_gpt_header *const gpt); +static void *ebios_disk_op(const struct disk_info *const, + com32sys_t *, uint64_t, uint8_t); +static void *chs_disk_op(const struct disk_info *con...