From: Larry Bassel <larry.bassel@xxxxxxxxxx> Date: Wed, 21 Dec 2016 10:51:33 -0800 > On 21 Dec 16 13:07, David Miller wrote: >> From: Larry Bassel <larry.bassel@xxxxxxxxxx> >> Date: Wed, 21 Dec 2016 09:12:13 -0800 >> >> > Orabug: 24789774 >> > >> > The command "shutdown -h -H now" should shut down the system to >> > OBP, however the machine was incorrectly being powered off instead >> > (on both LDOM and bare metal). >> > >> > The "exit" command to the OBP must be run and then a hard >> > loop to prevent return to the kernel. >> > >> > Signed-off-by: Larry Bassel <larry.bassel@xxxxxxxxxx> >> >> On LDOM, once you boot past the early stages of the kernel, OBP is >> considered volatile and thus unusable. > > My code does work on an 4.9.0 LDOM (we get to the ok prompt). So you're saying > this was a "lucky accident" and there is no "clean" way of getting back to > the OBP when we are in a LDOM (i.e. all we can do is power off which is > what the current code does)? Yes, for a very long time the firmware/hypervisor engineers told me exactly this. > Unfortunately, the variable "ldom_domaining_enabled" is 1 even when > we are not in an LDOM (I just double checked this by printing > the value out as we shut down) and so the current code will power off in > the bare metal case as well. Is there is a good way of determining that > we are running on bare metal? Even for bare metal the condition holds. As long as we use the interfaces guarded by ldom_domaining_enabled, the OBP is not reliably available after early boot. -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html