Displaying 6 results from an estimated 6 matches for "disk_error".
Did you mean:
did_error
2013 Feb 08
6
[PATCH] 4k_sector: Support dynamic sectors in GPT MBR
This patches add support for dynamic sectors to GPT MBR code.
First 3 patches are trick and optimizations to gain some space for the forth
patch.
I have a modified version of SeaBIOS, some code and some script o test it
I'll send on a different mail.
2017 Mar 21
3
"isolinux.bin missing or corrupt" when booting USB flash drive in old PC
...k */
pushw %dx /* -22: High word */
pushw %ax /* -24: Low word */
/*
* Load sectors. We do this one at a time mostly to avoid
* pitfalls and to share code with the stock MBR code.
*/
movw $0x7c00, %bx
movw $4, %cx /* Sector count */
movl (lba_offset), %eax
2:
call read_sector
jc disk_error
incl %eax
addb $(512 >> 8), %bh
loopw 2b
/* Dump out the bytes of the first sector. */
pusha
mov $0x7c00, %di
mov $16, %dx
2:
mov $16, %cx
1:
mov (%di), %al
inc %di
call print_al
loop 1b
call print_string
.ascii "\r\n"
dec %dx
jnz 2b
call print_string
.ascii...
2012 Sep 10
19
Initial support for sector size >512
This set of patches add some support for sector size >512.
Currently it fixes extlinux, MBR for GPT and ext partitions.
Other code is unaffected.
This set of patches has been tested on a read Dell machine running a beta
firmware.
2017 Mar 21
0
Patch: make slightly more verbose versions of isohdp.x.S
...tring
.ascii "isolinux.bin missing or corrupt.\r\n"
+boot_failure:
+ int $0x18 /* Boot failure */
+die:
+ hlt
+ jmp die
+
/*
* read_sector: read a single sector pointed to by %eax to %es:%bx.
* CF is set on error. All registers saved.
@@ -266,15 +306,20 @@ read_common:
ret
disk_error:
- call error
+ call print_string
.ascii "Operating system load error.\r\n"
+ jmp boot_failure
-/*
- * Print error messages. This is invoked with "call", with the
- * error message at the return address.
+/*
+ * Print message. This is invoked with "call", with th...
2012 Aug 10
1
[PATCH 4/4] Support sectors >512
...l -36(%bp) /* secpercyl */
shlb $6, %ah
movb %ah, %cl
movb %al, %ch
xchgw %dx, %ax
- divb -2(%bp) /* sectors */
+ divb -32(%bp) /* sectors */
movb %al, %dh
orb %ah, %cl
incw %cx /* Sectors are 1-based */
@@ -275,7 +291,7 @@ read_common:
leaw 16(%si), %sp /* Drop DAPA */
popal
jc disk_error
- addb $2, %bh /* bx += 512: point to the next buffer */
+ addb -5(%bp), %bh /* bx += sector size: point to the next buffer */
/* fall through and increment sector number */
--
1.7.5.4
2012 Sep 03
1
[GIT-PULL] XFS filesystem driver
...ONE,
EXT2,
BTRFS,
VFAT,
NTFS,
+ XFS,
};
extern int fs_type;
diff --git a/mbr/mbr.S b/mbr/mbr.S
index b71cfb7..270a356 100644
--- a/mbr/mbr.S
+++ b/mbr/mbr.S
@@ -265,6 +265,19 @@ boot:
movl %eax, 8(%si) /* Adjust in-memory partition table entry */
call read_sector
jc disk_error
+
+ /* Check if the read sector is a XFS superblock */
+ cmpl $0x42534658, (bootsec) /* "XFSB" */
+ jne no_xfs
+
+ /* We put the Syslinux boot sector at offset 0x800 (4 sectors), so we
+ * need to adjust %eax (%eax + 4) to read the right sector into 0x7C00.
+ */
+ addl $0x800 >> 0...