[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v5 3/4] xen/ppc: Implement early serial printk on pseries
On 7/26/23 10:32 AM, Jan Beulich wrote: > On 24.07.2023 17:06, Shawn Anastasio wrote: >> On 7/24/23 7:40 AM, Jan Beulich wrote: >>> On 21.07.2023 19:02, Shawn Anastasio wrote: >>>> On typical Power VMs (e.g. QEMU's -M pseries), a variety of services >>>> including an early serial console are provided by Open Firmware. >>>> Implement the required interfaces to call into Open Firmware and write >>>> to the serial console. >>>> >>>> Since Open Firmware runs in 32-bit Big Endian mode and Xen runs in >>>> 64-bit Little Endian mode, a thunk is required to save/restore >>>> any potentially-clobbered registers as well as to perform the >>>> required endianness switch. Thankfully, linux already has such >>>> a routine, which was imported into ppc64/of-call.S. >>>> >>>> Support for bare metal (PowerNV) will be implemented in a future >>>> patch. >>>> >>>> Signed-off-by: Shawn Anastasio <sanastasio@xxxxxxxxxxxxxxxxxxxxx> >>> >>> While I've committed the earlier two patches, I had to back out this >>> one. In my environment (gcc13) the build fails due an unresolved >>> reference to memset() out of boot-of.c (supposedly from of_call()). >> >> Does removing the `{ 0 }` initializer to `struct of_service s` on line >> 43 resolve this? > > Yes, that's what's causing the call (and removing, whether or not correct, > helps). Thanks for confirming. Removing it should be fine since the code manually initializes all of the other fields of the struct. The only behavioral difference is that the members of `ofs_args` at indices >= nargs would be left uninitialized. This shouldn't be an issue though since we're guarding reads of the array on `nargs` and `nrets` and thus only read explicitly initialized values (and of course, firmware would do the same). Naturally we can't avoid memset calls forever. I have lib/ building locally, but if we could get this series in without having to make those changes here that'd be great. > Jan Thanks, Shawn
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |