Skip to content

Commit

Permalink
css: fix actl handling for unit exceptions
Browse files Browse the repository at this point in the history
When a subchannel becomes pending with unit exception, start
pending (and for that matter, halt or clear pending) are not
removed in the actl. Device active and subchannel active,
however, are (due to the subchannel becoming status pending
with primary respectively secondary status).

The other conditions in the actl are only cleared when the
guest executes tsch on the subchannel.

Signed-off-by: Cornelia Huck <[email protected]>
Reviewed-by: Matthew Rosato <[email protected]>
Tested-by: Jared Rossi <[email protected]>
Message-Id: <[email protected]>
Signed-off-by: Thomas Huth <[email protected]>
  • Loading branch information
cohuck authored and huth committed Sep 6, 2021
1 parent 759a5d3 commit 89c6722
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion include/hw/s390x/css.h
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,8 @@ struct SubchDev {

static inline void sch_gen_unit_exception(SubchDev *sch)
{
sch->curr_status.scsw.ctrl &= ~SCSW_ACTL_START_PEND;
sch->curr_status.scsw.ctrl &= ~(SCSW_ACTL_DEVICE_ACTIVE |
SCSW_ACTL_SUBCH_ACTIVE);
sch->curr_status.scsw.ctrl |= SCSW_STCTL_PRIMARY |
SCSW_STCTL_SECONDARY |
SCSW_STCTL_ALERT |
Expand Down

0 comments on commit 89c6722

Please sign in to comment.