diff --git a/arch/arm64/kernel/mpam.c b/arch/arm64/kernel/mpam.c index a9dab7eb7b776ee9414b3ae84cbb0094a6eeefe3..dae2303b2449b3f006c47c553fe4f02797ede993 100644 --- a/arch/arm64/kernel/mpam.c +++ b/arch/arm64/kernel/mpam.c @@ -1013,9 +1013,10 @@ static ssize_t resctrl_group_ctrlmon_write(struct kernfs_open_file *of, rdtgrp->flags &= ~RDT_CTRLMON; resctrl_ctrlmon_disable(rdtgrp->mon.mon_data_kn, rdtgrp); } else if (!(rdtgrp->flags & RDT_CTRLMON) && ctrlmon) { - rdtgrp->flags |= RDT_CTRLMON; - resctrl_ctrlmon_enable(rdtgrp->kn, rdtgrp, - &rdtgrp->mon.mon_data_kn); + ret = resctrl_ctrlmon_enable(rdtgrp->kn, rdtgrp, + &rdtgrp->mon.mon_data_kn); + if (!ret) + rdtgrp->flags |= RDT_CTRLMON; } else { ret = -ENOENT; }