Activity log for bug #1703663

Date Who What changed Old value New value Message
2017-07-11 18:49:18 bugproxy bug added bug
2017-07-11 18:49:20 bugproxy tags architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041
2017-07-11 18:49:21 bugproxy ubuntu: assignee Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage)
2017-07-11 18:49:26 bugproxy affects ubuntu linux (Ubuntu)
2017-07-11 19:07:54 Frank Heimes bug task added ubuntu-power-systems
2017-07-11 19:08:13 Frank Heimes ubuntu-power-systems: assignee Canonical Kernel Team (canonical-kernel-team)
2017-07-12 09:01:27 Stefan Bader nominated for series Ubuntu Xenial
2017-07-12 09:01:27 Stefan Bader bug task added linux (Ubuntu Xenial)
2017-07-12 09:09:18 Stefan Bader description We have an issue with the i40e driver, present in kernels pre-4.8, like Xenial v4.4 (from Ubuntu 16.04.1). i40e driver has an issue in interrupt vector assignment in case of sparse CPU masks, like when some CPUs are disabled. The driver does a linear mapping not taking gaps on cpumask into account. This is a problem in systems with multiple logical CPUs per core (like in SMT scenarios). If we disable some logical CPUs, by turning SMT off for example, we will end up with a sparse cpu_online_mask, i.e., only the first CPU in a core is online, and the incremental/linear filling in the interrupt cpumask might lead to multiple offline CPUs being assigned to the struct q_vector in the driver, leading to issues when interrupts are requested, like the following message in PowerPC systems: [141.97] ics_opal_set_affinity: No online cpus in the mask 00200000,00000000,00000000,00000000 for irq 302 This message is output of interrupt controller in Power systems, a complain that the cpumask does not make sense to that particular system. SRU Justification: Impact: We have an issue with the i40e driver, present in kernels pre-4.8, like Xenial v4.4 (from Ubuntu 16.04.1). i40e driver has an issue in interrupt vector assignment in case of sparse CPU masks, like when some CPUs are disabled. The driver does a linear mapping not taking gaps on cpumask into account. This is a problem in systems with multiple logical CPUs per core (like in SMT scenarios). If we disable some logical CPUs, by turning SMT off for example, we will end up with a sparse cpu_online_mask, i.e., only the first CPU in a core is online, and the incremental/linear filling in the interrupt cpumask might lead to multiple offline CPUs being assigned to the struct q_vector in the driver, leading to issues when interrupts are requested, like the following message in PowerPC systems: [141.97] ics_opal_set_affinity: No online cpus in the mask 00200000,00000000,00000000,00000000 for irq 302 This message is output of interrupt controller in Power systems, a complain that the cpumask does not make sense to that particular system. Fix: Cherry-picking 7f6c553902bfa1c4e3f6cfa955c5ea036c7fe8e4 i40e: use valid online CPU on q_vector initialization into Xenial. Change limited to specific driver. Regression potential should be low and results testable.
2017-07-12 12:25:40 Thadeu Lima de Souza Cascardo linux (Ubuntu Xenial): status New Fix Committed
2017-07-13 06:05:00 Frank Heimes ubuntu-power-systems: status New In Progress
2017-07-17 19:07:13 Joseph Salisbury linux (Ubuntu): status New Fix Committed
2017-07-17 19:07:15 Joseph Salisbury linux (Ubuntu): importance Undecided Medium
2017-07-17 19:07:18 Joseph Salisbury linux (Ubuntu Xenial): importance Undecided Medium
2017-07-17 19:07:38 Joseph Salisbury linux (Ubuntu Xenial): assignee Canonical Kernel Team (canonical-kernel-team)
2017-07-17 19:08:19 Joseph Salisbury ubuntu-power-systems: status In Progress Fix Committed
2017-07-19 16:51:27 Manoj Iyer ubuntu-power-systems: importance Undecided Medium
2017-07-24 14:00:37 Andrew Cloke tags architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 triage-g
2017-07-25 15:43:43 Kleber Sacilotto de Souza tags architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 triage-g architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 triage-g verification-needed-xenial
2017-07-25 16:19:26 bugproxy tags architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 triage-g verification-needed-xenial architecture-ppc64le bugnameltc-145954 severity-high targetmilestone-inin16041 triage-g verification-done-xenial
2017-08-03 16:32:17 Launchpad Janitor linux (Ubuntu Xenial): status Fix Committed Fix Released
2017-08-03 16:32:17 Launchpad Janitor cve linked 2017-10810
2017-08-03 16:32:17 Launchpad Janitor cve linked 2017-7533
2017-08-03 17:07:03 Frank Heimes linux (Ubuntu): status Fix Committed Fix Released
2017-08-03 17:07:06 Frank Heimes ubuntu-power-systems: status Fix Committed Fix Released