mirror of
https://github.com/xcat2/xcat-dep.git
synced 2024-12-03 18:14:35 +00:00
-Rebase to gpxe 1.0.0
-Restore iSCSI that was accidentally disabled -Workaround boot sequence limitations in RHEL5.4 kvm by changing exit to int13, vm.bootorder should be 'net' Former-commit-id: 2ff604a64abcc839c350f19523dabd0f33b78eb5
This commit is contained in:
parent
8ea6c33b5c
commit
45d3d80e10
91
gpxe/gpxe-1.0.0-config.patch
Normal file
91
gpxe/gpxe-1.0.0-config.patch
Normal file
@ -0,0 +1,91 @@
|
||||
diff -urN gpxe-1.0.0/src/config/general.h gpxe-1.0.0-xnbaconfig/src/config/general.h
|
||||
--- gpxe-1.0.0/src/config/general.h 2010-02-02 11:12:44.000000000 -0500
|
||||
+++ gpxe-1.0.0-xnbaconfig/src/config/general.h 2010-02-06 11:54:02.000000000 -0500
|
||||
@@ -56,7 +56,7 @@
|
||||
#define DOWNLOAD_PROTO_TFTP /* Trivial File Transfer Protocol */
|
||||
#define DOWNLOAD_PROTO_HTTP /* Hypertext Transfer Protocol */
|
||||
#undef DOWNLOAD_PROTO_HTTPS /* Secure Hypertext Transfer Protocol */
|
||||
-#undef DOWNLOAD_PROTO_FTP /* File Transfer Protocol */
|
||||
+#define DOWNLOAD_PROTO_FTP /* File Transfer Protocol */
|
||||
#undef DOWNLOAD_PROTO_TFTM /* Multicast Trivial File Transfer Protocol */
|
||||
#undef DOWNLOAD_PROTO_SLAM /* Scalable Local Area Multicast */
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-//#undef SANBOOT_PROTO_ISCSI /* iSCSI protocol */
|
||||
+#define SANBOOT_PROTO_ISCSI /* iSCSI protocol */
|
||||
-//#undef SANBOOT_PROTO_AOE /* AoE protocol */
|
||||
+#undef SANBOOT_PROTO_AOE /* AoE protocol */
|
||||
//#undef SANBOOT_PROTO_IB_SRP /* Infiniband SCSI RDMA protocol */
|
||||
|
||||
@@ -73,9 +73,9 @@
|
||||
* 802.11 cryptosystems and handshaking protocols
|
||||
*
|
||||
*/
|
||||
-#define CRYPTO_80211_WEP /* WEP encryption (deprecated and insecure!) */
|
||||
-#define CRYPTO_80211_WPA /* WPA Personal, authenticating with passphrase */
|
||||
-#define CRYPTO_80211_WPA2 /* Add support for stronger WPA cryptography */
|
||||
+#undef CRYPTO_80211_WEP /* WEP encryption (deprecated and insecure!) */
|
||||
+#undef CRYPTO_80211_WPA /* WPA Personal, authenticating with passphrase */
|
||||
+#undef CRYPTO_80211_WPA2 /* Add support for stronger WPA cryptography */
|
||||
|
||||
/*
|
||||
* Name resolution modules
|
||||
@@ -91,35 +91,35 @@
|
||||
* you want to use.
|
||||
*
|
||||
*/
|
||||
-//#define IMAGE_NBI /* NBI image support */
|
||||
-//#define IMAGE_ELF /* ELF image support */
|
||||
-//#define IMAGE_FREEBSD /* FreeBSD kernel image support */
|
||||
-//#define IMAGE_MULTIBOOT /* MultiBoot image support */
|
||||
-//#define IMAGE_AOUT /* a.out image support */
|
||||
-//#define IMAGE_WINCE /* WinCE image support */
|
||||
-//#define IMAGE_PXE /* PXE image support */
|
||||
-//#define IMAGE_SCRIPT /* gPXE script image support */
|
||||
-//#define IMAGE_BZIMAGE /* Linux bzImage image support */
|
||||
-//#define IMAGE_COMBOOT /* SYSLINUX COMBOOT image support */
|
||||
-//#define IMAGE_EFI /* EFI image support */
|
||||
+#undef IMAGE_NBI /* NBI image support */
|
||||
+#undef IMAGE_ELF /* ELF image support */
|
||||
+#undef IMAGE_FREEBSD /* FreeBSD kernel image support */
|
||||
+#undef IMAGE_MULTIBOOT /* MultiBoot image support */
|
||||
+#undef IMAGE_AOUT /* a.out image support */
|
||||
+#undef IMAGE_WINCE /* WinCE image support */
|
||||
+#define IMAGE_PXE /* PXE image support */
|
||||
+#define IMAGE_SCRIPT /* gPXE script image support */
|
||||
+#define IMAGE_BZIMAGE /* Linux bzImage image support */
|
||||
+#undef IMAGE_COMBOOT /* SYSLINUX COMBOOT image support */
|
||||
+#undef IMAGE_EFI /* EFI image support */
|
||||
|
||||
/*
|
||||
* Command-line commands to include
|
||||
*
|
||||
*/
|
||||
-#define AUTOBOOT_CMD /* Automatic booting */
|
||||
+#undef AUTOBOOT_CMD /* Automatic booting */
|
||||
#define NVO_CMD /* Non-volatile option storage commands */
|
||||
-#define CONFIG_CMD /* Option configuration console */
|
||||
-#define IFMGMT_CMD /* Interface management commands */
|
||||
-#define IWMGMT_CMD /* Wireless interface management commands */
|
||||
-#define ROUTE_CMD /* Routing table management commands */
|
||||
+#undef CONFIG_CMD /* Option configuration console */
|
||||
+#undef IFMGMT_CMD /* Interface management commands */
|
||||
+#undef IWMGMT_CMD /* Wireless interface management commands */
|
||||
+#undef ROUTE_CMD /* Routing table management commands */
|
||||
#define IMAGE_CMD /* Image management commands */
|
||||
-#define DHCP_CMD /* DHCP management commands */
|
||||
-#define SANBOOT_CMD /* SAN boot commands */
|
||||
-#define LOGIN_CMD /* Login command */
|
||||
+#undef DHCP_CMD /* DHCP management commands */
|
||||
+#undef SANBOOT_CMD /* SAN boot commands */
|
||||
+#undef LOGIN_CMD /* Login command */
|
||||
#undef TIME_CMD /* Time commands */
|
||||
#undef DIGEST_CMD /* Image crypto digest commands */
|
||||
-//#undef PXE_CMD /* PXE commands */
|
||||
+#undef PXE_CMD /* PXE commands */
|
||||
|
||||
/*
|
||||
* Error message tables to include
|
26
gpxe/gpxe-1.0.0-exittohd.patch
Normal file
26
gpxe/gpxe-1.0.0-exittohd.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff -urN gpxe-1.0.0/src/hci/commands/hdboot_cmd.c gpxe-1.0.0-exittohd/src/hci/commands/hdboot_cmd.c
|
||||
--- gpxe-1.0.0/src/hci/commands/hdboot_cmd.c 2010-02-06 14:29:55.000000000 -0500
|
||||
+++ gpxe-1.0.0-exittohd/src/hci/commands/hdboot_cmd.c 2010-02-06 14:32:07.000000000 -0500
|
||||
@@ -30,3 +30,7 @@
|
||||
.name = "hdboot",
|
||||
.exec = hdboot_exec,
|
||||
};
|
||||
+struct command exit_command __command = {
|
||||
+ .name = "exit",
|
||||
+ .exec = hdboot_exec,
|
||||
+};
|
||||
diff -urN gpxe-1.0.0/src/hci/shell.c gpxe-1.0.0-exittohd/src/hci/shell.c
|
||||
--- gpxe-1.0.0/src/hci/shell.c 2010-02-02 11:12:44.000000000 -0500
|
||||
+++ gpxe-1.0.0-exittohd/src/hci/shell.c 2010-02-06 14:31:41.000000000 -0500
|
||||
@@ -51,8 +51,8 @@
|
||||
}
|
||||
|
||||
/** "exit" command definition */
|
||||
-struct command exit_command __command = {
|
||||
- .name = "exit",
|
||||
+struct command xit_command __command = {
|
||||
+ .name = "xit",
|
||||
.exec = exit_exec,
|
||||
};
|
||||
|
||||
Binary files gpxe-1.0.0/src/hci/.shell.c.swp and gpxe-1.0.0-exittohd/src/hci/.shell.c.swp differ
|
124
gpxe/gpxe-1.0.0-int18boot.patch
Normal file
124
gpxe/gpxe-1.0.0-int18boot.patch
Normal file
@ -0,0 +1,124 @@
|
||||
diff -urN gpxe-1.0.0/src/arch/i386/prefix/romprefix.S gpxe-1.0.0-int18boot/src/arch/i386/prefix/romprefix.S
|
||||
--- gpxe-1.0.0/src/arch/i386/prefix/romprefix.S 2010-02-06 14:20:06.000000000 -0500
|
||||
+++ gpxe-1.0.0-int18boot/src/arch/i386/prefix/romprefix.S 2010-02-06 14:19:39.000000000 -0500
|
||||
@@ -169,7 +169,7 @@
|
||||
* Determine whether or not this is a PnP system via a signature
|
||||
* check. If it is PnP, return to the PnP BIOS indicating that we are
|
||||
* a boot-capable device; the BIOS will call our boot execution vector
|
||||
- * if it wants to boot us. If it is not PnP, hook INT 19.
|
||||
+ * if it wants to boot us. If it is not PnP, hook INT 18.
|
||||
*/
|
||||
init:
|
||||
/* Preserve registers, clear direction flag, set %ds=%cs */
|
||||
@@ -301,17 +301,15 @@
|
||||
testw %ax, %ax
|
||||
je got_bbs
|
||||
no_pnp: /* Not PnP-compliant - therefore cannot be BBS-compliant */
|
||||
-no_bbs: /* Not BBS-compliant - must hook INT 19 */
|
||||
- movw $init_message_int19, %si
|
||||
+no_bbs: /* Not BBS-compliant - must hook INT 18 */
|
||||
+ movw $init_message_int18, %si
|
||||
xorw %di, %di
|
||||
call print_message
|
||||
xorw %ax, %ax
|
||||
movw %ax, %es
|
||||
- pushl %es:( 0x19 * 4 )
|
||||
- popl orig_int19
|
||||
pushw %gs /* %gs contains runtime %cs */
|
||||
- pushw $int19_entry
|
||||
- popl %es:( 0x19 * 4 )
|
||||
+ pushw $int18_entry
|
||||
+ popl %es:( 0x18 * 4 )
|
||||
jmp bbs_done
|
||||
got_bbs: /* BBS compliant - no need to hook INT 19 */
|
||||
movw $init_message_bbs, %si
|
||||
@@ -535,9 +533,9 @@
|
||||
.asciz "\nPMM required but not present!\n"
|
||||
.size init_message_no_pmm, . - init_message_no_pmm
|
||||
#endif
|
||||
-init_message_int19:
|
||||
- .asciz " INT19"
|
||||
- .size init_message_int19, . - init_message_int19
|
||||
+init_message_int18:
|
||||
+ .asciz " INT18"
|
||||
+ .size init_message_int18, . - init_message_int18
|
||||
init_message_prompt:
|
||||
.asciz "\nPress Ctrl-B to configure "
|
||||
.size init_message_prompt, . - init_message_prompt
|
||||
@@ -887,58 +885,29 @@
|
||||
#endif /* LOAD_ROM_FROM_PCI */
|
||||
|
||||
|
||||
-/* INT19 entry point
|
||||
+/* INT18 entry point
|
||||
*
|
||||
- * Called via the hooked INT 19 if we detected a non-PnP BIOS. We
|
||||
- * attempt to return via the original INT 19 vector (if we were able
|
||||
- * to store it).
|
||||
+ * Called via the hooked INT 18 if we detected a non-PnP BIOS. We
|
||||
+ * use iret to return.
|
||||
*/
|
||||
-int19_entry:
|
||||
- pushw %cs
|
||||
- popw %ds
|
||||
- /* Prompt user to press B to boot */
|
||||
- movw $int19_message_prompt, %si
|
||||
- xorw %di, %di
|
||||
- call print_message
|
||||
- movw $prodstr, %si
|
||||
- call print_message
|
||||
- movw $int19_message_dots, %si
|
||||
- call print_message
|
||||
- movw $0xdf4e, %bx
|
||||
- call wait_for_key
|
||||
- pushf
|
||||
- xorw %di, %di
|
||||
- call print_kill_line
|
||||
- movw $int19_message_done, %si
|
||||
- call print_message
|
||||
- popf
|
||||
- jz 1f
|
||||
- /* Leave keypress in buffer and start gPXE. The keypress will
|
||||
- * cause the usual initial Ctrl-B prompt to be skipped.
|
||||
- */
|
||||
+int18_entry:
|
||||
+ pushfl
|
||||
+ pushal
|
||||
+ pushw %gs
|
||||
+ pushw %fs
|
||||
+ pushw %es
|
||||
+ pushw %ds
|
||||
pushw %cs
|
||||
call exec
|
||||
-1: /* Try to call original INT 19 vector */
|
||||
- movl %cs:orig_int19, %eax
|
||||
- testl %eax, %eax
|
||||
- je 2f
|
||||
- ljmp *%cs:orig_int19
|
||||
-2: /* No chained vector: issue INT 18 as a last resort */
|
||||
- int $0x18
|
||||
- .size int19_entry, . - int19_entry
|
||||
-orig_int19:
|
||||
- .long 0
|
||||
- .size orig_int19, . - orig_int19
|
||||
+ popw %ds
|
||||
+ popw %es
|
||||
+ popw %fs
|
||||
+ popw %gs
|
||||
+ popal
|
||||
+ popfl
|
||||
+ iret
|
||||
+
|
||||
|
||||
-int19_message_prompt:
|
||||
- .asciz "Press N to skip booting from "
|
||||
- .size int19_message_prompt, . - int19_message_prompt
|
||||
-int19_message_dots:
|
||||
- .asciz "..."
|
||||
- .size int19_message_dots, . - int19_message_dots
|
||||
-int19_message_done:
|
||||
- .asciz "\n\n"
|
||||
- .size int19_message_done, . - int19_message_done
|
||||
|
||||
/* Execute as a boot device
|
||||
*
|
BIN
gpxe/gpxe-1.0.0.tar.bz2
Normal file
BIN
gpxe/gpxe-1.0.0.tar.bz2
Normal file
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
Name: xnba-kvm
|
||||
Version: 0.9.9
|
||||
Version: 1.0.0
|
||||
Release: 1
|
||||
Summary: xNBA loader for virtual guests
|
||||
Obsoletes: etherboot-zroms-kvm
|
||||
@ -22,18 +22,14 @@ ExclusiveArch: i386 x86_64
|
||||
Source0: gpxe-%{version}.tar.bz2
|
||||
Patch0: gpxe-0.9.7-branding.patch
|
||||
Patch1: gpxe-0.9.9-registeriscsionpxe.patch
|
||||
Patch2: gpxe-0.9.9-config.patch
|
||||
Patch2: gpxe-1.0.0-config.patch
|
||||
Patch3: gpxe-0.9.7-ignorepackets.patch
|
||||
Patch4: gpxe-0.9.7-kvmworkaround.patch
|
||||
Patch5: gpxe-0.9.7-hdboot.patch
|
||||
Patch5: gpxe-1.0.0-hdboot.patch
|
||||
Patch6: gpxe-0.9.7-xnbauserclass.patch
|
||||
Patch7: gpxe-0.9.7-undinet.patch
|
||||
Patch8: gpxe-0.9.9-acceptproxyoffer.patch
|
||||
Patch9: gpxe-0.9.9-ignorecloseddevs.patch
|
||||
Patch10: gpxe-0.9.9-ignorenonpxepxe.patch
|
||||
Patch11: gpxe-0.9.9-saverestorepciregister.patch
|
||||
Patch12: gpxe-0.9.9-tftpblockwrap.patch
|
||||
Patch13: gpxe-0.9.9-int18boot.patch
|
||||
Patch8: gpxe-1.0.0-int18boot.patch
|
||||
Patch9: gpxe-1.0.0-exittohd.patch
|
||||
|
||||
%description
|
||||
The xNBA network bootloader provides network boot capability for virtual machines with e1000 and virtio network devices. This includes iSCSI and PXE with tftp or ftp image download capability. It is a modified variant of gPXE
|
||||
@ -51,11 +47,6 @@ The xNBA network bootloader provides network boot capability for virtual machine
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
|
||||
|
||||
%build
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
Name: xnba-undi
|
||||
Version: 0.9.9
|
||||
Version: 1.0.0
|
||||
Release: 1
|
||||
Summary: xCAT Network Boot Agent for x86 PXE hosts
|
||||
Obsoletes: gpxe-undi
|
||||
@ -18,17 +18,12 @@ BuildArch: noarch
|
||||
Source0: gpxe-%{version}.tar.bz2
|
||||
Patch0: gpxe-0.9.7-branding.patch
|
||||
Patch1: gpxe-0.9.9-registeriscsionpxe.patch
|
||||
Patch2: gpxe-0.9.9-config.patch
|
||||
Patch2: gpxe-1.0.0-config.patch
|
||||
Patch3: gpxe-0.9.7-ignorepackets.patch
|
||||
Patch4: gpxe-0.9.7-kvmworkaround.patch
|
||||
Patch5: gpxe-0.9.7-hdboot.patch
|
||||
Patch5: gpxe-1.0.0-hdboot.patch
|
||||
Patch6: gpxe-0.9.7-xnbauserclass.patch
|
||||
Patch7: gpxe-0.9.7-undinet.patch
|
||||
Patch8: gpxe-0.9.9-acceptproxyoffer.patch
|
||||
Patch9: gpxe-0.9.9-ignorecloseddevs.patch
|
||||
Patch10: gpxe-0.9.9-ignorenonpxepxe.patch
|
||||
Patch11: gpxe-0.9.9-saverestorepciregister.patch
|
||||
Patch12: gpxe-0.9.9-tftpblockwrap.patch
|
||||
|
||||
%description
|
||||
The xCAT Network Boot Agent is a slightly modified version of gPXE. It provides enhanced boot features for any UNDI compliant x86 host. This includes iSCSI, http/ftp downloads, and gPXE script based booting.
|
||||
@ -44,11 +39,6 @@ The xCAT Network Boot Agent is a slightly modified version of gPXE. It provides
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
|
||||
%build
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user