From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org, Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: lkp@intel.com, kbuild-all@lists.01.org,
linux-kernel@vger.kernel.org, Hans de Goede <hdegoede@redhat.com>
Subject: drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
Date: Tue, 6 Oct 2020 15:51:11 +0300 [thread overview]
Message-ID: <20201006125111.GF4282@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 7927 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 472e5b056f000a778abb41f1e443de58eb259783
commit: 8558de401b5fbbfb1df96d6986bba3c79cd47401 drm/vboxvideo: use managed pci functions
config: i386-randconfig-m021-20201002 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
vim +146 drivers/gpu/drm/vboxvideo/vbox_main.c
d46709094deb69 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 107 int vbox_hw_init(struct vbox_private *vbox)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 108 {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 109 int ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 110
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 111 vbox->full_vram_size = inl(VBE_DISPI_IOPORT_DATA);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 112 vbox->any_pitch = vbox_check_supported(VBE_DISPI_ID_ANYX);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 113
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 114 DRM_INFO("VRAM %08x\n", vbox->full_vram_size);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 115
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 116 /* Map guest-heap at end of vram */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 117 vbox->guest_heap =
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 118 pci_iomap_range(vbox->ddev.pdev, 0, GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 119 GUEST_HEAP_SIZE);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 120 if (!vbox->guest_heap)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 121 return -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 122
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 123 /* Create guest-heap mem-pool use 2^4 = 16 byte chunks */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 124 vbox->guest_pool = gen_pool_create(4, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 125 if (!vbox->guest_pool)
8558de401b5fbb drivers/gpu/drm/vboxvideo/vbox_main.c Daniel Vetter 2020-04-15 126 return -ENOMEM;
Need to unmap vbox->guest_heap on error. Probably all error paths?
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 127
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 128 ret = gen_pool_add_virt(vbox->guest_pool,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 129 (unsigned long)vbox->guest_heap,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 130 GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 131 GUEST_HEAP_USABLE_SIZE, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 132 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 133 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 134
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 135 ret = hgsmi_test_query_conf(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 136 if (ret) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 137 DRM_ERROR("vboxvideo: hgsmi_test_query_conf failed\n");
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 138 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 139 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 140
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 141 /* Reduce available VRAM size to reflect the guest heap. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 142 vbox->available_vram_size = GUEST_HEAP_OFFSET(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 143 /* Linux drm represents monitors as a 32-bit array. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 144 hgsmi_query_conf(vbox->guest_pool, VBOX_VBVA_CONF32_MONITOR_COUNT,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 145 &vbox->num_crtcs);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 @146 vbox->num_crtcs = clamp_t(u32, vbox->num_crtcs, 1, VBOX_MAX_SCREENS);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 147
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 148 if (!have_hgsmi_mode_hints(vbox)) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 149 ret = -ENOTSUPP;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 150 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 151 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 152
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 153 vbox->last_mode_hints = devm_kcalloc(vbox->ddev.dev, vbox->num_crtcs,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 154 sizeof(struct vbva_modehint),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 155 GFP_KERNEL);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 156 if (!vbox->last_mode_hints) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 157 ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 158 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 159 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 160
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 161 ret = vbox_accel_init(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 162 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 163 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 164
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 165 return 0;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 166
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 167 err_destroy_guest_pool:
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 168 gen_pool_destroy(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 169 return ret;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 170 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 32255 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild@lists.01.org
Subject: drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
Date: Tue, 06 Oct 2020 15:51:11 +0300 [thread overview]
Message-ID: <20201006125111.GF4282@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 8015 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 472e5b056f000a778abb41f1e443de58eb259783
commit: 8558de401b5fbbfb1df96d6986bba3c79cd47401 drm/vboxvideo: use managed pci functions
config: i386-randconfig-m021-20201002 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
vim +146 drivers/gpu/drm/vboxvideo/vbox_main.c
d46709094deb69 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 107 int vbox_hw_init(struct vbox_private *vbox)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 108 {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 109 int ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 110
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 111 vbox->full_vram_size = inl(VBE_DISPI_IOPORT_DATA);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 112 vbox->any_pitch = vbox_check_supported(VBE_DISPI_ID_ANYX);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 113
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 114 DRM_INFO("VRAM %08x\n", vbox->full_vram_size);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 115
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 116 /* Map guest-heap at end of vram */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 117 vbox->guest_heap =
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 118 pci_iomap_range(vbox->ddev.pdev, 0, GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 119 GUEST_HEAP_SIZE);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 120 if (!vbox->guest_heap)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 121 return -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 122
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 123 /* Create guest-heap mem-pool use 2^4 = 16 byte chunks */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 124 vbox->guest_pool = gen_pool_create(4, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 125 if (!vbox->guest_pool)
8558de401b5fbb drivers/gpu/drm/vboxvideo/vbox_main.c Daniel Vetter 2020-04-15 126 return -ENOMEM;
Need to unmap vbox->guest_heap on error. Probably all error paths?
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 127
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 128 ret = gen_pool_add_virt(vbox->guest_pool,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 129 (unsigned long)vbox->guest_heap,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 130 GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 131 GUEST_HEAP_USABLE_SIZE, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 132 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 133 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 134
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 135 ret = hgsmi_test_query_conf(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 136 if (ret) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 137 DRM_ERROR("vboxvideo: hgsmi_test_query_conf failed\n");
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 138 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 139 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 140
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 141 /* Reduce available VRAM size to reflect the guest heap. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 142 vbox->available_vram_size = GUEST_HEAP_OFFSET(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 143 /* Linux drm represents monitors as a 32-bit array. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 144 hgsmi_query_conf(vbox->guest_pool, VBOX_VBVA_CONF32_MONITOR_COUNT,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 145 &vbox->num_crtcs);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 @146 vbox->num_crtcs = clamp_t(u32, vbox->num_crtcs, 1, VBOX_MAX_SCREENS);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 147
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 148 if (!have_hgsmi_mode_hints(vbox)) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 149 ret = -ENOTSUPP;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 150 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 151 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 152
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 153 vbox->last_mode_hints = devm_kcalloc(vbox->ddev.dev, vbox->num_crtcs,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 154 sizeof(struct vbva_modehint),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 155 GFP_KERNEL);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 156 if (!vbox->last_mode_hints) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 157 ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 158 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 159 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 160
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 161 ret = vbox_accel_init(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 162 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 163 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 164
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 165 return 0;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 166
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 167 err_destroy_guest_pool:
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 168 gen_pool_destroy(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 169 return ret;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 170 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 32255 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
Date: Tue, 06 Oct 2020 15:51:11 +0300 [thread overview]
Message-ID: <20201006125111.GF4282@kadam> (raw)
[-- Attachment #1: Type: text/plain, Size: 8015 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 472e5b056f000a778abb41f1e443de58eb259783
commit: 8558de401b5fbbfb1df96d6986bba3c79cd47401 drm/vboxvideo: use managed pci functions
config: i386-randconfig-m021-20201002 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126.
vim +146 drivers/gpu/drm/vboxvideo/vbox_main.c
d46709094deb69 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 107 int vbox_hw_init(struct vbox_private *vbox)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 108 {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 109 int ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 110
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 111 vbox->full_vram_size = inl(VBE_DISPI_IOPORT_DATA);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 112 vbox->any_pitch = vbox_check_supported(VBE_DISPI_ID_ANYX);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 113
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 114 DRM_INFO("VRAM %08x\n", vbox->full_vram_size);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 115
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 116 /* Map guest-heap at end of vram */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 117 vbox->guest_heap =
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 118 pci_iomap_range(vbox->ddev.pdev, 0, GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 119 GUEST_HEAP_SIZE);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 120 if (!vbox->guest_heap)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 121 return -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 122
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 123 /* Create guest-heap mem-pool use 2^4 = 16 byte chunks */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 124 vbox->guest_pool = gen_pool_create(4, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 125 if (!vbox->guest_pool)
8558de401b5fbb drivers/gpu/drm/vboxvideo/vbox_main.c Daniel Vetter 2020-04-15 126 return -ENOMEM;
Need to unmap vbox->guest_heap on error. Probably all error paths?
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 127
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 128 ret = gen_pool_add_virt(vbox->guest_pool,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 129 (unsigned long)vbox->guest_heap,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 130 GUEST_HEAP_OFFSET(vbox),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 131 GUEST_HEAP_USABLE_SIZE, -1);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 132 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 133 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 134
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 135 ret = hgsmi_test_query_conf(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 136 if (ret) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 137 DRM_ERROR("vboxvideo: hgsmi_test_query_conf failed\n");
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 138 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 139 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 140
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 141 /* Reduce available VRAM size to reflect the guest heap. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 142 vbox->available_vram_size = GUEST_HEAP_OFFSET(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 143 /* Linux drm represents monitors as a 32-bit array. */
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 144 hgsmi_query_conf(vbox->guest_pool, VBOX_VBVA_CONF32_MONITOR_COUNT,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 145 &vbox->num_crtcs);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 @146 vbox->num_crtcs = clamp_t(u32, vbox->num_crtcs, 1, VBOX_MAX_SCREENS);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 147
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 148 if (!have_hgsmi_mode_hints(vbox)) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 149 ret = -ENOTSUPP;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 150 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 151 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 152
01648890f336a3 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2018-09-18 153 vbox->last_mode_hints = devm_kcalloc(vbox->ddev.dev, vbox->num_crtcs,
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 154 sizeof(struct vbva_modehint),
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 155 GFP_KERNEL);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 156 if (!vbox->last_mode_hints) {
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 157 ret = -ENOMEM;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 158 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 159 }
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 160
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 161 ret = vbox_accel_init(vbox);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 162 if (ret)
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 163 goto err_destroy_guest_pool;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 164
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 165 return 0;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 166
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 167 err_destroy_guest_pool:
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 168 gen_pool_destroy(vbox->guest_pool);
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 169 return ret;
dd55d44f408419 drivers/staging/vboxvideo/vbox_main.c Hans de Goede 2017-07-06 170 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 32255 bytes --]
next reply other threads:[~2020-10-06 17:17 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-06 12:51 Dan Carpenter [this message]
2020-10-06 12:51 ` drivers/gpu/drm/vboxvideo/vbox_main.c:146 vbox_hw_init() warn: 'vbox->guest_heap' not released on lines: 126 Dan Carpenter
2020-10-06 12:51 ` Dan Carpenter
-- strict thread matches above, loose matches on Subject: below --
2020-10-02 10:31 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201006125111.GF4282@kadam \
--to=dan.carpenter@oracle.com \
--cc=daniel.vetter@ffwll.ch \
--cc=hdegoede@redhat.com \
--cc=kbuild-all@lists.01.org \
--cc=kbuild@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.