aboutsummaryrefslogtreecommitdiffstats
path: root/include/xen
diff options
context:
space:
mode:
authorJia-Ju Bai <baijiaju1990@gmail.com>2018-04-09 23:04:25 +0800
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>2018-04-16 10:20:31 -0400
commit230d211472d2779253e5a8383353fc44783dd038 (patch)
tree5467b3e6ad5f152dd6b21de9dba2bd6d3edd2d2f /include/xen
parentxen: xen-pciback: Replace GFP_ATOMIC with GFP_KERNEL in pcistub_device_alloc (diff)
downloadlinux-dev-230d211472d2779253e5a8383353fc44783dd038.tar.xz
linux-dev-230d211472d2779253e5a8383353fc44783dd038.zip
xen: xen-pciback: Replace GFP_ATOMIC with GFP_KERNEL in xen_pcibk_config_quirks_init
xen_pcibk_config_quirks_init() is never called in atomic context. The call chains ending up at xen_pcibk_config_quirks_init() are: [1] xen_pcibk_config_quirks_init() <- xen_pcibk_config_init_dev() <- pcistub_init_device() <- pcistub_seize() <- pcistub_probe() [2] xen_pcibk_config_quirks_init() <- xen_pcibk_config_init_dev() <- pcistub_init_device() <- pcistub_init_devices_late() <- xen_pcibk_init() pcistub_probe() is only set as ".probe" in struct pci_driver. xen_pcibk_init() is is only set as a parameter of module_init(). These functions are not called in atomic context. Despite never getting called from atomic context, xen_pcibk_config_quirks_init() calls kzalloc() with GFP_ATOMIC, which does not sleep for allocation. GFP_ATOMIC is not necessary and can be replaced with GFP_KERNEL, which can sleep and improve the possibility of sucessful allocation. Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Diffstat (limited to 'include/xen')
0 files changed, 0 insertions, 0 deletions