Re: linux-next: build failure after merge of the drm-misc tree

From: Daniel Vetter
Date: Fri Jul 21 2017 - 03:24:56 EST


Hi Greg&Hans,

How are we going to handle this now? The refactor is deeply burried in
drm-misc, I guess you could cherry-pick the relevant patches over. But
that'll probably lead to more conflicts because git will get confused.

Or you could just delete the set_busid hook in -staging, which renders
the driver unbisectable since it'll only work when merged together
with the drm trees.

This is pretty much why I don't like -staging, it makes cross
subsystem refactorings (which is already hard, getting 20+ driver
folks to agree on stuff sometimes) unecessarily harder.

Cheers, Daniel

On Fri, Jul 21, 2017 at 2:08 AM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
> Hi Dave,
>
> The following is now applicable to the drm and staging.current trees ...
>
> On Wed, 19 Jul 2017 11:46:57 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>>
>> After merging the drm-misc tree, today's linux-next build (x86_64
>> allmodconfig) failed like this:
>>
>> drivers/staging/vboxvideo/vbox_drv.c:235:2: error: unknown field 'set_busid' specified in initializer
>> .set_busid = drm_pci_set_busid,
>> ^
>> drivers/staging/vboxvideo/vbox_drv.c:235:15: error: 'drm_pci_set_busid' undeclared here (not in a function)
>> .set_busid = drm_pci_set_busid,
>> ^
>> drivers/staging/vboxvideo/vbox_drv.c: In function 'vbox_init':
>> drivers/staging/vboxvideo/vbox_drv.c:273:9: error: implicit declaration of function 'drm_pci_init' [-Werror=implicit-function-declaration]
>> return drm_pci_init(&driver, &vbox_pci_driver);
>> ^
>> drivers/staging/vboxvideo/vbox_drv.c: In function 'vbox_exit':
>> drivers/staging/vboxvideo/vbox_drv.c:278:2: error: implicit declaration of function 'drm_pci_exit' [-Werror=implicit-function-declaration]
>> drm_pci_exit(&driver, &vbox_pci_driver);
>> ^
>>
>> Caused by commits
>>
>> 5c484cee7ef9 ("drm: Remove drm_driver->set_busid hook")
>> 10631d724def ("drm/pci: Deprecate drm_pci_init/exit completely")
>>
>> interacting with commit
>>
>> dd55d44f4084 ("staging: vboxvideo: Add vboxvideo to drivers/staging")
>>
>> from the staging.current tree.
>>
>> I have applied the following merge fix patch - please check that it
>> is correct.
>>
>> From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
>> Date: Wed, 19 Jul 2017 11:41:01 +1000
>> Subject: [PATCH] drm: fixes for staging due to API changes in the drm core
>>
>> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
>> ---
>> drivers/staging/vboxvideo/vbox_drv.c | 5 ++---
>> 1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/staging/vboxvideo/vbox_drv.c b/drivers/staging/vboxvideo/vbox_drv.c
>> index 92ae1560a16d..6d0600c37c0c 100644
>> --- a/drivers/staging/vboxvideo/vbox_drv.c
>> +++ b/drivers/staging/vboxvideo/vbox_drv.c
>> @@ -232,7 +232,6 @@ static struct drm_driver driver = {
>> .lastclose = vbox_driver_lastclose,
>> .master_set = vbox_master_set,
>> .master_drop = vbox_master_drop,
>> - .set_busid = drm_pci_set_busid,
>>
>> .fops = &vbox_fops,
>> .irq_handler = vbox_irq_handler,
>> @@ -270,12 +269,12 @@ static int __init vbox_init(void)
>> if (vbox_modeset == 0)
>> return -EINVAL;
>>
>> - return drm_pci_init(&driver, &vbox_pci_driver);
>> + return pci_register_driver(&vbox_pci_driver);
>> }
>>
>> static void __exit vbox_exit(void)
>> {
>> - drm_pci_exit(&driver, &vbox_pci_driver);
>> + pci_unregister_driver(&vbox_pci_driver);
>> }
>>
>> module_init(vbox_init);
>> --
>> 2.13.2
>
> --
> Cheers,
> Stephen Rothwell



--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch