Public bug reported:

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.

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage)
         Status: New


** Tags: architecture-ppc64le bugnameltc-145954 severity-high 
targetmilestone-inin16041

** Tags added: architecture-ppc64le bugnameltc-145954 severity-high
targetmilestone-inin16041

** Changed in: ubuntu
     Assignee: (unassigned) => Ubuntu on IBM Power Systems Bug Triage 
(ubuntu-power-triage)

** Package changed: ubuntu => linux (Ubuntu)

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1703663

Title:
  ISST-LTE: Briggs:Stratton:UbuntuKVM:  ics_opal_set_affinity on host
  kernel log using Intel X710 (i40e driver)

Status in linux package in Ubuntu:
  New

Bug 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.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1703663/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to