mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-03-16 12:14:06 +00:00
arm64 fix for -rc6
- Fix event counting regression in Arm CMN PMU driver due to broken optimisation -----BEGIN PGP SIGNATURE----- iQFEBAABCgAuFiEEPxTL6PPUbjXGY88ct6xw3ITBYzQFAmPUBmoQHHdpbGxAa2Vy bmVsLm9yZwAKCRC3rHDchMFjND5ICACD5MypW0I+BtQiRRG2/yq+hAYgJN2TVnJC +o//Atj7aiwI5EIv+SxFhhwlRNsWG8DnwotetdO7YTqQWskDBNSSX6LO9bxjt7N8 eGERr97IK2hOYlLgA5gStKSp4FJL6WLysNXwoyy+Ff6pBtLTFOZHdgUEsEV55XIL yCK8DdUU+J4CbcQX1EKwdj4yyJ2Hu2ThMvNnIpC6OrNg4eHIIP4fZbE+EKGNdcA6 Xh+2tSfqUeClqOqbXKnshH9DLgywBgIwW6JUnKHJynNNUrJni6oKqoeBAEJUJkol prmvEr1if/++0QufOHRHZIx1VyeCFN/vwXrY6nZ8AhMRmjwrTVia =Dfxt -----END PGP SIGNATURE----- Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Pull arm64 fix from Will Deacon: - Fix event counting regression in Arm CMN PMU driver due to broken optimisation * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: Partially revert "perf/arm-cmn: Optimise DTC counter accesses"
This commit is contained in:
commit
0d1e013fd9
1 changed files with 6 additions and 1 deletions
|
@ -1576,7 +1576,6 @@ static int arm_cmn_event_init(struct perf_event *event)
|
|||
hw->dn++;
|
||||
continue;
|
||||
}
|
||||
hw->dtcs_used |= arm_cmn_node_to_xp(cmn, dn)->dtc;
|
||||
hw->num_dns++;
|
||||
if (bynodeid)
|
||||
break;
|
||||
|
@ -1589,6 +1588,12 @@ static int arm_cmn_event_init(struct perf_event *event)
|
|||
nodeid, nid.x, nid.y, nid.port, nid.dev, type);
|
||||
return -EINVAL;
|
||||
}
|
||||
/*
|
||||
* Keep assuming non-cycles events count in all DTC domains; turns out
|
||||
* it's hard to make a worthwhile optimisation around this, short of
|
||||
* going all-in with domain-local counter allocation as well.
|
||||
*/
|
||||
hw->dtcs_used = (1U << cmn->num_dtcs) - 1;
|
||||
|
||||
return arm_cmn_validate_group(cmn, event);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue