<div dir="auto">nit: stop is a verb. Stopped is a state.</div><div class="gmail_extra"><br><div class="gmail_quote">On Feb 24, 2017 5:59 AM, "Brad Bishop" <<a href="mailto:bradleyb@fuzziesquirrel.com">bradleyb@fuzziesquirrel.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> On Feb 21, 2017, at 10:00 PM, Joel Stanley <<a href="mailto:joel@jms.id.au">joel@jms.id.au</a>> wrote:<br>
><br>
> On Tue, Feb 21, 2017 at 8:50 AM, Andrew Geissler <<a href="mailto:geissonator@gmail.com">geissonator@gmail.com</a>> wrote:<br>
>> Some design decisions came out of my last set of changes in the<br>
>> OpenBMC state area. There was a proposal to rename our targets<br>
>> responsible for booting and powering on/off the system.<br>
>><br>
>> Currently we have this:<br>
>> - PowerOn: obmc-power-chassis-on.target obmc-chassis-start.target<br>
>> - PowerOff: obmc-power-chassis-off.target obmc-chassis-stop.target<br>
>> obmc-stop-host.target<br>
>><br>
>> The obmc-power-chassis-*.targets are responsible for doing whatever is<br>
>> required to apply pgood to the chassis.<br>
>> The obmc-chassis-*.targets are responsible for starting and stopping<br>
>> all host related services<br>
>> The obmc-stop-host.target is where we have the soft power off service<br>
>> (notify host of shutdown, wait for host to shutdown gracefully)<br>
>><br>
>> Refactoring Proposal:<br>
>> - First the chassis-start and chassis-stop target names don’t make<br>
>> sense anymore with the new bmc, chassis, and host state break down’s<br>
>> so:<br>
>> - Rename obmc-chassis-start.target to obmc-start-host.target<br>
>> - Rename obmc-chassis-stop.target to obmc-stop-host.target<br>
>> - Rename the current obmc-stop-host.target to obmc-shutdown-host.target<br>
><br>
> Can I suggest putting the host before the action?<br>
><br>
> obmc-host-stop<br>
> obmc-host-start<br>
> obmc-host-shutdown<br>
<br>
We have two types of targets, synchronization targets (for example network-pre.target),<br>
and action targets(for example multi-user.target). Sync targets are not directly<br>
start/stoppable - they have to be started implicitly by systemd. I would like a way<br>
to be able to tell which one I am looking at from the name. For example:<br>
<br>
obmc-stop-host # Action - stop the host.<br>
obmc-host-stop # Sync - the host has been stopped.<br>
<br>
I had proposed this obmc-[verb]-[what] for actions and obmc-[what]-[state] to Andrew<br>
privately..I’m fine with something else, again, as long as it is consistent.<br>
<br>
I can think of two conventions:<br>
<br>
obmc-[verb]-[what] for actions<br>
obmc-[what]-[state] for sync points<br>
<br>
or<br>
<br>
obmc-[what]-[verb] for actions<br>
obmc-[what]-[state] for sync points<br>
<br>
Either one is fine with me. The former seems slightly easier to distinguish between<br>
the two.<br>
<br>
><br>
>><br>
>> The target relationships are then the following:<br>
>><br>
>> obmc-host-start.target requires obmc-power-chassis-on.target<br>
>> obmc-shutdown-host.target requires obmc-stop-host.target requires<br>
>> obmc-power-chassis-off.target<br>
><br>
> obmc-host-start requires obmc-chassis-poweron<br>
><br>
> obmc-host-shutdown requires obmc-host-stop requires obmc-chassis-poweroff<br>
><br>
> I think the rest of your proposal sounds good, from what I understand.<br>
><br>
> Cheers,<br>
><br>
> Joel<br>
><br>
>><br>
>> When a system goes to the quiesce target, the host state manager will<br>
>> call the obmc-stop-host.target. Otherwise, the host state service<br>
>> will call the obmc-shutdown-host.target when power off is requested.<br>
>><br>
>> Thoughts/Comments?<br>
>> Andrew<br>
</blockquote></div></div>