zipl: add common ipl data

Each ipl type takes at least a kernel image, parameter line and initrd
parameter. This is duplicated all over the place in the current
implementation. To simplify this, add struct job_common_ipl_data which
will hold this data.

Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Reviewed-by: Stefan Haberland <sth@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
Sven Schnelle
2021-11-08 08:42:24 +01:00
committed by Jan Höppner
parent 1627c6a39f
commit e384f06014
4 changed files with 139 additions and 148 deletions
+7 -13
View File
@@ -39,13 +39,17 @@ struct job_target_data {
blocknum_t targetoffset;
};
struct job_ipl_data {
struct job_common_ipl_data {
char* image;
char* parmline;
char* ramdisk;
address_t image_addr;
address_t parm_addr;
address_t ramdisk_addr;
};
struct job_ipl_data {
struct job_common_ipl_data common;
address_t envblk_addr;
int is_kdump;
};
@@ -61,13 +65,8 @@ struct job_segment_data {
};
struct job_dump_data {
struct job_common_ipl_data common;
char* device;
char* image;
char* parmline;
char* ramdisk;
address_t image_addr;
address_t parm_addr;
address_t ramdisk_addr;
uint64_t mem;
};
@@ -80,13 +79,8 @@ struct job_mvdump_data {
};
struct job_ipl_tape_data {
struct job_common_ipl_data common;
char* device;
char* image;
char* parmline;
char* ramdisk;
address_t image_addr;
address_t parm_addr;
address_t ramdisk_addr;
};