Bug#769191: Bug#769072: , #769191, #770588: nvidia-opencl-icd breaking non-nvidia systems
- To: "Rebecca N. Palmer" <rebecca_palmer@zoho.com>, 769072@bugs.debian.org, 770588@bugs.debian.org, smcv@debian.org, 769191@bugs.debian.org, jcristau@debian.org, mgilbert@debian.org, pkg-opencl-devel@lists.alioth.debian.org
- Subject: Bug#769191: Bug#769072: , #769191, #770588: nvidia-opencl-icd breaking non-nvidia systems
- From: Andreas Beckmann <anbe@debian.org>
- Date: Tue, 25 Nov 2014 13:14:56 +0100
- Message-id: <[🔎] 547472C0.3030501@debian.org>
- Reply-to: Andreas Beckmann <anbe@debian.org>, 769191@bugs.debian.org
- In-reply-to: <[🔎] 5473A788.5070905@zoho.com>
- References: <[🔎] 54711CB1.1070904@zoho.com> <[🔎] 547141D9.9050409@debian.org> <[🔎] 5471B873.1040604@zoho.com> <[🔎] 547240C3.7090200@zoho.com> <[🔎] 5473A788.5070905@zoho.com>
On 2014-11-24 22:47, Rebecca N. Palmer wrote:
First of all, many thanks for analyzing the problem and keeping track of
the many duplicates!
> (Should we merge these bugs? Also, #767803 looks like another instance
> of this, though it doesn't have the apt log to confirm it yet)
and perhaps move the discussion to one of these bugs and trim the Cc
list a bit ...
If you merge them, please reassign them to src:nvidia-driver and add
Affects for the packages where they have been reported.
>> * nvidia-kernel-dkms: Switch to Recommends: nvidia-driver | libcuda1
>> to break the chain libcuda1 -> nvidia-kernel-dkms -> nvidia-driver.
> ...or drop this Recommends: entirely
That Recommends has been there since nvidia-kernel-dkms was added in
2010. I thinks its main purpose is for people that try to install the
wrong package (i.e. nvidia-kernel-dkms instead of nvidia-driver (or
nvidia-glx back then)) to get a working NVIDIA driver installation
(well, still needs some manual configuration, but debconf will tell you
that). I don't want to touch (as in remove) that right now.
> (IIRC circular Depends/Recommends
> are discouraged because they confuse apt's autoremover, though I can't
> find where I saw that).
I don't want to workaround bugs in unrelated packages
> Cutting the chain here (tested with "apt-get install nvidia-libopencl1
> nvidia-driver-", the - after a package means "remove/don't install")
> does still allow much of nvidia-* (including nvidia-kernel-dkms and
> glx-alternative-nvidia) to be installed, but that appears to be harmless
and you get the full set of lib*GL* diversions, too ... this and some
more are needed to allow switching between nvidia-opencl-icd and
nvidia$LEGACY-opencl-icd which will become available once I fork off
(and backport) nvidia-graphics-drivers-legacy-340xx after the jessie
release.
> without libgl1-nvidia-glx (at least on my Intel IvyBridge M GT2, both
> graphics and OpenCL continue to work after rebooting).
That would be a bug otherwise :-)
> Given that the error on loading nvidia-opencl-icd in a non-Nvidia system is
>
> modprobe: ERROR: could not insert 'nvidia_current': No such device
>
> it is plausible that nvidia-opencl-icd uses the nvidia kernel module
> (i.e. nvidia-kernel-dkms | nvidia-kernel-<version>) and as such _should_
> pull it in (whether or not it also needs libcuda1),
In wheezy all this OpenCL stuff was rather new and only proprietary
implementations were available ... as a result installing
nvidia-opencl-icd was harmless (due to lack of dependencies) but also
useless (due to lack of dependencies) unless you had nvidia-driver
installed, too. This I wanted to fix in jessie :-)
> while #768185
> suggests that nvidia-opencl-icd works without the graphics side (can
> someone check that?),
I'm pretty sure NVIDIA CUDA and OpenCL work in headless setups, i.e.
without X server running. They just need the kernel module to be loaded
(and the corresponding device to be created). (Contrary to AMD which
needs X to communicate with the GPU for doing OpenCL)
> making this the more correct place to cut the chain.
Andreas
Reply to: