Mailinglist Archive: opensuse-factory (914 mails)

< Previous Next >
Re: [opensuse-kernel] Compiling KMP that depends on another KMP (was: Re: [opensuse-factory] [Resolved] Leap 42.3 kernel 4.4.71x and problem installing the Nvidia driver)
On Mon, 19 Jun 2017 05:20:06 +0200,
Andrei Borzenkov wrote:

Of course, nothing is "resolved" by removing package that is part of
distribution. It just helps to diagnose it.

19.06.2017 02:32, Roman Bysh пишет:
Hi everybody,

If you have a problem in Leap 42.3 installing your Nvidia driver you
must remove
the "drm-knp-default" package.


Oh! So, how does one compile KMP that depends on another KMP, which
itself overrides in-tree kernel driver?

Depends, and it's note quite easy.

We somehow need to pickup
correct symbol versions, otherwise we get

[ 202.462673] nvidia_drm: disagrees about version of symbol
drm_atomic_get_connector_state
[ 202.462674] nvidia_drm: Unknown symbol drm_atomic_get_connector_state
(err -22)
[ 202.462679] nvidia_drm: disagrees about version of symbol
drm_gem_prime_export
[ 202.462680] nvidia_drm: Unknown symbol drm_gem_prime_export (err -22)

This case is unfortunately very hard to resolve. The changes in the
drm are so large, thus we can't keep symbols to be compatible.
(It's possible to hack so that symbols appear same, but it doesn't
help unless the call functionality is aligned as well -- i.e. you may
change the struct fields identical with two kernel versions, but if
the usage of the struct is different, it shall crash.)

It'd be possible to export include/drm/*.h and include/uapi/drm/*.h as
another *-devel package, but then still you'd need to hack nvidia
build system to refer to these include files as well. So it can't
work as is, either.

The simplest and probably best option is to uninstall the DRM stack
update if you're using Nvidia driver, after all...


Takashi
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups