|
From: | Jared Rossi |
Subject: | Re: [PATCH 16/18] s390x: Rebuild IPLB for SCSI device directly from DIAG308 |
Date: | Mon, 30 Sep 2024 09:46:06 -0400 |
User-agent: | Mozilla Thunderbird |
On 9/30/24 8:15 AM, Thomas Huth wrote:
On 27/09/2024 02.51, jrossi@linux.ibm.com wrote:From: Jared Rossi <jrossi@linux.ibm.com> ... @@ -661,35 +629,33 @@ IplParameterBlock *s390_ipl_get_iplb(void)return &ipl->iplb; } -void s390_ipl_reset_request(CPUState *cs, enum s390_reset reset_type) +static void s390_ipl_prepare_qipl(S390CPU *cpu) { S390IPLState *ipl = get_ipl_device(); + uint8_t *addr; + uint64_t len = 4096; + + addr = cpu_physical_memory_map(cpu->env.psa, &len, true); + if (!addr || len < QIPL_ADDRESS + sizeof(QemuIplParameters)) { + error_report("Cannot set QEMU IPL parameters"); + return; + } + + memcpy(addr + QIPL_ADDRESS, &ipl->qipl, sizeof(QemuIplParameters)); + cpu_physical_memory_unmap(addr, len, 1, len); +}Why did you move the s390_ipl_prepare_qipl() function around? It does not seem to get moved in the new code below, so the movement does not seem to be required?Thomas
You are correct, it is not necessary to move it. I moved it in preparation for a change I ultimately ended up reverting, but I forgot to revert moving the function itself. I’ll fix it. Jared Rossi
[Prev in Thread] | Current Thread | [Next in Thread] |