mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
idpf: change the method for mailbox workqueue allocation
Since workqueues are created per CPU, the works scheduled to this workqueues are run on the CPU they were assigned. It may result in overloaded CPU that is not able to handle virtchnl messages in relatively short time. Allocating workqueue with WQ_UNBOUND and WQ_HIGHPRI flags allows scheduler to queue virtchl messages on less loaded CPUs, what eliminates delays. Reviewed-by: Alexander Lobakin <aleksander.lobakin@intel.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Signed-off-by: Milena Olech <milena.olech@intel.com> Tested-by: Samuel Salin <Samuel.salin@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
This commit is contained in:
parent
894fbb55e6
commit
9525a12d6b
|
|
@ -199,9 +199,8 @@ static int idpf_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||
goto err_serv_wq_alloc;
|
||||
}
|
||||
|
||||
adapter->mbx_wq = alloc_workqueue("%s-%s-mbx",
|
||||
WQ_UNBOUND | WQ_MEM_RECLAIM, 0,
|
||||
dev_driver_string(dev),
|
||||
adapter->mbx_wq = alloc_workqueue("%s-%s-mbx", WQ_UNBOUND | WQ_HIGHPRI,
|
||||
0, dev_driver_string(dev),
|
||||
dev_name(dev));
|
||||
if (!adapter->mbx_wq) {
|
||||
dev_err(dev, "Failed to allocate mailbox workqueue\n");
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user