[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1005237: marked as done (bullseye-pu: package nvidia-persistenced/470.103.01-1~deb11u1)



Your message dated Sat, 09 Jul 2022 11:47:43 +0100
with message-id <2280fe8c78e64b02a6c1d04c6dde5a32e342ba81.camel@adam-barratt.org.uk>
and subject line Closing requests for updates included in 11.4
has caused the Debian Bug report #1005237,
regarding bullseye-pu: package nvidia-persistenced/470.103.01-1~deb11u1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1005237: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1005237
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian.org@packages.debian.org
Usertags: pu
Control: block -1 with 1005129

Hi,

in order to avoid confusion I'd like to keep the major version in sync
and therefore update nvidia-persistenced to a new upstream release from the
470 series along the update of src:nvidia-graphics-drivers (#1005129).

This is a no-change rebuild of the package in sid.


Andreas
diff --git a/Makefile b/Makefile
index 313ec63..182163b 100644
--- a/Makefile
+++ b/Makefile
@@ -58,6 +58,7 @@ OPTIONS_1_INC    = $(OUTPUTDIR)/options.1.inc
 RPC_DIR ?= .
 NVIDIA_CFG_DIR ?= .
 NVIDIA_NUMA_DIR ?= .
+NV_IOCTL_INC_DIR ?= .
 
 ##############################################################################
 # The common-utils directory may be in one of two places: either elsewhere in
@@ -84,6 +85,7 @@ OBJS = $(call BUILD_OBJECT_LIST,$(SRC))
 common_cflags += -I $(COMMON_UTILS_DIR)
 common_cflags += -I $(NVIDIA_CFG_DIR)
 common_cflags += -I $(NVIDIA_NUMA_DIR)
+common_cflags += -I $(NV_IOCTL_INC_DIR)
 common_cflags += -I $(RPC_DIR)
 common_cflags += -I $(OUTPUTDIR)
 common_cflags += -I .
diff --git a/common-utils/gen-manpage-opts-helper.c b/common-utils/gen-manpage-opts-helper.c
index b41e2aa..56ba7b3 100644
--- a/common-utils/gen-manpage-opts-helper.c
+++ b/common-utils/gen-manpage-opts-helper.c
@@ -31,7 +31,8 @@
 
 static void print_option(const NVGetoptOption *o)
 {
-    char scratch[64], *s;
+    char scratch[64];
+    const char *s;
     int j, len;
 
     int italics, bold, omitWhiteSpace, firstchar;
diff --git a/common-utils/nvgetopt.h b/common-utils/nvgetopt.h
index 0262aac..37da80e 100644
--- a/common-utils/nvgetopt.h
+++ b/common-utils/nvgetopt.h
@@ -117,8 +117,8 @@ typedef struct {
     const char *name;
     int val;
     unsigned int flags;
-    char *arg_name;     /* not used by nvgetopt() */
-    char *description;  /* not used by nvgetopt() */
+    const char *arg_name;     /* not used by nvgetopt() */
+    const char *description;  /* not used by nvgetopt() */
 } NVGetoptOption;
 
 
diff --git a/debian/changelog b/debian/changelog
index a4de794..0093d24 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,29 @@
+nvidia-persistenced (470.103.01-1~deb11u1) bullseye; urgency=medium
+
+  * Rebuild for bullseye.
+
+ -- Andreas Beckmann <anbe@debian.org>  Wed, 09 Feb 2022 17:26:04 +0100
+
+nvidia-persistenced (470.103.01-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Andreas Beckmann <anbe@debian.org>  Tue, 08 Feb 2022 12:25:41 +0100
+
+nvidia-persistenced (470.82.00-1) unstable; urgency=medium
+
+  * New upstream release.
+  * Bump Standards-Version to 4.6.0. No changes needed.
+
+ -- Andreas Beckmann <anbe@debian.org>  Mon, 08 Nov 2021 11:27:53 +0100
+
+nvidia-persistenced (470.57.02-1) unstable; urgency=medium
+
+  * New upstream release.
+  * Add libnvidia-tesla-{470,460}-cfg1 as alternative dependencies.
+
+ -- Andreas Beckmann <anbe@debian.org>  Mon, 02 Aug 2021 13:06:55 +0200
+
 nvidia-persistenced (460.32.03-1) unstable; urgency=medium
 
   * New upstream release.
diff --git a/debian/control b/debian/control
index 058bfe0..234659a 100644
--- a/debian/control
+++ b/debian/control
@@ -10,7 +10,7 @@ Build-Depends:
  libtirpc-dev,
  m4,
 Rules-Requires-Root: no
-Standards-Version: 4.5.1
+Standards-Version: 4.6.0
 Homepage: https://github.com/NVIDIA/nvidia-persistenced
 Vcs-Browser: https://salsa.debian.org/nvidia-team/nvidia-persistenced
 Vcs-Git: https://salsa.debian.org/nvidia-team/nvidia-persistenced.git
@@ -22,8 +22,9 @@ Pre-Depends:
  ${misc:Pre-Depends}
 Depends:
  libnvidia-cfg1 [!i386 !armhf !ppc64el]
+ | libnvidia-tesla-470-cfg1 [amd64 arm64 ppc64el]
+ | libnvidia-tesla-460-cfg1 [amd64 arm64 ppc64el]
  | libnvidia-tesla-450-cfg1 [amd64 arm64 ppc64el]
- | libnvidia-tesla-440-cfg1 [amd64 ppc64el]
  | libnvidia-tesla-418-cfg1 [amd64 ppc64el]
  | libnvidia-legacy-390xx-cfg1 [amd64 i386 armhf]
  | libnvidia-legacy-340xx-cfg1 [amd64 i386 armhf]
diff --git a/debian/copyright b/debian/copyright
index 76b71be..bdd4fbd 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -9,11 +9,11 @@ Disclaimer:
  NVIDIA drivers in non-free.
 
 Files: *
-Copyright: Copyright (C) 2004-2018 NVIDIA Corporation
+Copyright: Copyright (C) 2004-2020 NVIDIA Corporation
 License: Expat
 
 Files: debian/*
-Copyright: © 2014-2021 Andreas Beckmann <anbe@debian.org>
+Copyright: © 2014-2022 Andreas Beckmann <anbe@debian.org>
 License: Expat
 
 License: Expat
diff --git a/nv-ioctl-numa.h b/nv-ioctl-numa.h
new file mode 100644
index 0000000..b051586
--- /dev/null
+++ b/nv-ioctl-numa.h
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+
+#ifndef NV_IOCTL_NUMA_H
+#define NV_IOCTL_NUMA_H
+
+#if defined(NV_LINUX)
+
+#include <nv-ioctl-numbers.h>
+
+#if defined(NV_KERNEL_INTERFACE_LAYER)
+
+#include <linux/types.h>
+
+#else
+
+#include <stdint.h>
+
+#if !defined(__aligned)
+#define __aligned(n) __attribute__((aligned(n)))
+#endif
+
+#endif
+
+#define NV_ESC_NUMA_INFO         (NV_IOCTL_BASE + 15)
+#define NV_ESC_SET_NUMA_STATUS   (NV_IOCTL_BASE + 16)
+
+#define NV_IOCTL_NUMA_INFO_MAX_OFFLINE_ADDRESSES 64
+typedef struct offline_addresses
+{
+    uint64_t addresses[NV_IOCTL_NUMA_INFO_MAX_OFFLINE_ADDRESSES] __aligned(8);
+    uint32_t numEntries;
+} nv_offline_addresses_t;
+
+
+/* per-device NUMA memory info as assigned by the system */
+typedef struct nv_ioctl_numa_info
+{
+    int32_t  nid;
+    int32_t  status;
+    uint64_t memblock_size __aligned(8);
+    uint64_t numa_mem_addr __aligned(8);
+    uint64_t numa_mem_size __aligned(8);
+    nv_offline_addresses_t offline_addresses __aligned(8);
+} nv_ioctl_numa_info_t;
+
+/* set the status of the device NUMA memory */
+typedef struct nv_ioctl_set_numa_status
+{
+    int32_t status;
+} nv_ioctl_set_numa_status_t;
+
+#define NV_IOCTL_NUMA_STATUS_DISABLED               0
+#define NV_IOCTL_NUMA_STATUS_OFFLINE                1
+#define NV_IOCTL_NUMA_STATUS_ONLINE_IN_PROGRESS     2
+#define NV_IOCTL_NUMA_STATUS_ONLINE                 3
+#define NV_IOCTL_NUMA_STATUS_ONLINE_FAILED          4
+#define NV_IOCTL_NUMA_STATUS_OFFLINE_IN_PROGRESS    5
+#define NV_IOCTL_NUMA_STATUS_OFFLINE_FAILED         6
+
+#endif
+
+#endif
diff --git a/nv-ioctl-numbers.h b/nv-ioctl-numbers.h
new file mode 100644
index 0000000..14821b8
--- /dev/null
+++ b/nv-ioctl-numbers.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+
+#ifndef NV_IOCTL_NUMBERS_H
+#define NV_IOCTL_NUMBERS_H
+
+/* NOTE: using an ioctl() number > 55 will overflow! */
+#define NV_IOCTL_MAGIC      'F'
+#define NV_IOCTL_BASE       200
+#define NV_ESC_CARD_INFO         (NV_IOCTL_BASE + 0)
+#define NV_ESC_REGISTER_FD       (NV_IOCTL_BASE + 1)
+#define NV_ESC_ALLOC_OS_EVENT    (NV_IOCTL_BASE + 6)
+#define NV_ESC_FREE_OS_EVENT     (NV_IOCTL_BASE + 7)
+#define NV_ESC_STATUS_CODE       (NV_IOCTL_BASE + 9)
+#define NV_ESC_CHECK_VERSION_STR (NV_IOCTL_BASE + 10)
+#define NV_ESC_IOCTL_XFER_CMD    (NV_IOCTL_BASE + 11)
+#define NV_ESC_ATTACH_GPUS_TO_FD (NV_IOCTL_BASE + 12)
+#define NV_ESC_QUERY_DEVICE_INTR (NV_IOCTL_BASE + 13)
+#define NV_ESC_SYS_PARAMS        (NV_IOCTL_BASE + 14)
+
+#endif
diff --git a/nvidia-numa.c b/nvidia-numa.c
index c4098d0..0703806 100644
--- a/nvidia-numa.c
+++ b/nvidia-numa.c
@@ -38,6 +38,7 @@
 #include <errno.h>
 
 #include "common-utils.h"
+#include "nv-ioctl-numa.h"
 #include "nvidia-numa.h"
 
 #define NV_DEVICE_INFO_PATH_FMT \
@@ -57,15 +58,12 @@
 #define STATE_ONLINE                 "online"
 #define VALID_MOVABLE_STATE          "Movable"
 
-#define NV_IOCTL_MAGIC               'F'
-#define NV_IOCTL_BASE                200
-#define NV_ESC_NUMA_INFO             (NV_IOCTL_BASE + 15)
-#define NV_ESC_SET_NUMA_STATUS       (NV_IOCTL_BASE + 16)
-
 #ifndef NV_IS_ALIGNED
 #define NV_IS_ALIGNED(v, gran)       (0 == ((v) & ((gran) - 1)))
 #endif
 
+typedef int mem_state_t;
+
 static inline char* mem_state_to_string(mem_state_t state)
 {
     switch (state)
@@ -488,7 +486,7 @@ int change_numa_node_state(uint32_t node_id, uint64_t region_gpu_size,
 }
 
 static
-int offline_blacklisted_pages(nv_blacklist_addresses_t *blacklist_addresses)
+int offline_blacklisted_pages(nv_offline_addresses_t *blacklist_addresses)
 {
     int index;
     int status = 0;
@@ -886,7 +884,7 @@ NvPdStatus nvNumaOnlineMemory(NvNumaDevice *numa_info)
     }
 
 set_driver_status:
-    status = offline_blacklisted_pages(&numa_info_params.blacklist_addresses);
+    status = offline_blacklisted_pages(&numa_info_params.offline_addresses);
     if (status < 0) {
         syslog_device(device_pci_info,
                       LOG_ERR,
diff --git a/nvidia-numa.h b/nvidia-numa.h
index 7d30fc1..b9e9a32 100644
--- a/nvidia-numa.h
+++ b/nvidia-numa.h
@@ -26,49 +26,6 @@
 #include "nvpd_rpc.h"
 #include "nvidia-syslog-utils.h"
 
-#define NV_IOCTL_NUMA_INFO_MAX_BLACKLIST_ADDRESSES 64
-
-typedef enum
-{
-    NV_IOCTL_NUMA_STATUS_DISABLED             = 0,
-    NV_IOCTL_NUMA_STATUS_OFFLINE              = 1,
-    NV_IOCTL_NUMA_STATUS_ONLINE_IN_PROGRESS   = 2,
-    NV_IOCTL_NUMA_STATUS_ONLINE               = 3,
-    NV_IOCTL_NUMA_STATUS_ONLINE_FAILED        = 4,
-    NV_IOCTL_NUMA_STATUS_OFFLINE_IN_PROGRESS  = 5,
-    NV_IOCTL_NUMA_STATUS_OFFLINE_FAILED       = 6
-} mem_state_t;
-
-/* system parameters that the kernel driver may use for configuration */
-typedef struct nv_ioctl_sys_params
-{
-    uint64_t memblock_size;
-} nv_ioctl_sys_params_t;
-
-/* list of device blacklisted addresses */
-typedef struct blacklist_addresses
-{
-    uint64_t  addresses[NV_IOCTL_NUMA_INFO_MAX_BLACKLIST_ADDRESSES];
-    uint32_t  numEntries;
-} nv_blacklist_addresses_t;
-
-/* per-device NUMA memory info as assigned by the system */
-typedef struct nv_ioctl_numa_info
-{
-    int nid;
-    int status;
-    uint64_t memblock_size;
-    uint64_t numa_mem_addr;
-    uint64_t numa_mem_size;
-    nv_blacklist_addresses_t blacklist_addresses;
-} nv_ioctl_numa_info_t;
-
-/* set the status of the device NUMA memory */
-typedef struct nv_ioctl_set_numa_status
-{
-    int status;
-} nv_ioctl_set_numa_status_t;
-
 /* per-device NUMA context */
 typedef struct
 {
diff --git a/utils.mk b/utils.mk
index af0e3d7..e5ac3a2 100644
--- a/utils.mk
+++ b/utils.mk
@@ -33,10 +33,11 @@
 ##############################################################################
 
 CC                    ?= gcc
+CXX                   ?= g++
 LD                    ?= ld
 AR                    ?= ar
-# only set these warnings and optimizations if CFLAGS is unset
-CFLAGS                ?= -Wall -O2
+# only set these warnings if CFLAGS is unset
+CFLAGS                ?= -Wall
 # always set these -f CFLAGS
 CFLAGS                += -fno-strict-aliasing -fno-omit-frame-pointer -Wformat=2
 CC_ONLY_CFLAGS        ?=
@@ -58,16 +59,27 @@ CFLAGS                += -Wno-unused-parameter
 HOST_CC_ONLY_CFLAGS   += -Wno-format-zero-length
 HOST_CFLAGS           += -Wno-unused-parameter
 
+DEBUG                 ?=
+DEVELOP               ?=
+
 ifeq ($(DEBUG),1)
   STRIP_CMD           ?= true
   DO_STRIP            ?=
   CFLAGS              += -O0 -g
   CFLAGS              += -DDEBUG=1
 else
-  STRIP_CMD           ?= strip
-  DO_STRIP            ?= 1
+  CFLAGS              += -O2
 endif
 
+ifeq ($(DEVELOP),1)
+  STRIP_CMD           ?= true
+  DO_STRIP            ?=
+  CFLAGS              += -DDEVELOP=1
+endif
+
+STRIP_CMD             ?= strip
+DO_STRIP              ?= 1
+
 INSTALL               ?= install
 INSTALL_BIN_ARGS      ?= -m 755
 INSTALL_LIB_ARGS      ?= -m 644
@@ -185,6 +197,21 @@ ifneq ($(_eval_available),T)
 endif
 
 
+##############################################################################
+# Test passing $(1) to $(CC).  If $(CC) succeeds, then echo $(1).
+#
+# Because this uses $(shell), it is best to use this to assign simply expanded
+# variables (e.g., ":=").
+#
+# Example usage:
+#  CONDITIONAL_CFLAGS := $(call TEST_CC_ARG, -ffoo)
+##############################################################################
+
+TEST_CC_ARG = \
+ $(shell $(CC) -c -x c /dev/null $(1) -o /dev/null > /dev/null 2>&1 && \
+   $(ECHO) $(1))
+
+
 ##############################################################################
 # define variables used when installing the open source utilities from
 # the source tarball
@@ -276,7 +303,7 @@ host_target = $(patsubst HOST,HOST_,$(patsubst TARGET,,$(1)))
 
 ifeq ($(NV_AUTO_DEPEND),1)
   AUTO_DEP_SUFFIX = -MMD -MF $$(@:.o=.d.to_be_processed) -MP -MT $$@ && \
-    $$(SED) -e "1,3s@ $$< @ @" < $$(@:.o=.d.to_be_processed) > $$(@:.o=.d)
+    $$(SED) -e "1,3s| $$< | |" < $$(@:.o=.d.to_be_processed) > $$(@:.o=.d)
 else
   AUTO_DEP_SUFFIX =
 endif
@@ -486,8 +513,9 @@ endif
 define GENERATE_NVIDSTRING
   # g_nvid_string.c depends on all objects except g_nvid_string.o, and version.mk
   $(NVIDSTRING): $$(filter-out $$(call BUILD_OBJECT_LIST,$$(NVIDSTRING)), $(3)) $$(VERSION_MK)
-	@$$(ECHO) "const char $(1)[] = \"nvidia id: NVIDIA $$(strip $(2)) for $$(TARGET_ARCH)  $$(NVIDIA_VERSION)  $$(NVIDSTRING_BUILD_TYPE_STRING)  (`$$(WHOAMI)`@`$$(HOSTNAME)`)  `$$(DATE)`\";" > $$@
-	@$$(ECHO) "const char *const p$$(strip $(1)) = $(1) + 11;" >> $$@;
+	$(at_if_quiet)$$(MKDIR) $$(dir $$@)
+	$(at_if_quiet)$$(ECHO) "const char $(1)[] = \"nvidia id: NVIDIA $$(strip $(2)) for $$(TARGET_ARCH)  $$(NVIDIA_VERSION)  $$(NVIDSTRING_BUILD_TYPE_STRING)  (`$$(WHOAMI)`@`$$(HOSTNAME)`)  `$$(DATE)`\";" > $$@
+	$(at_if_quiet)$$(ECHO) "const char *const p$$(strip $(1)) = $(1) + 11;" >> $$@;
 endef
 
 
@@ -510,6 +538,7 @@ endef
 
 define READ_ONLY_OBJECT_FROM_FILE_RULE
   $$(OUTPUTDIR)/$$(notdir $(1)).o: $(1)
+	$(at_if_quiet)$$(MKDIR) $$(OUTPUTDIR)
 	$(at_if_quiet)cd $$(dir $(1)); \
 	$$(call quiet_cmd_no_at,LD) -r -z noexecstack --format=binary \
 	    $$(notdir $(1)) -o $$(OUTPUTDIR_ABSOLUTE)/$$(notdir $$@)
diff --git a/version.mk b/version.mk
index b3f509d..061d452 100644
--- a/version.mk
+++ b/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 460.32.03
+NVIDIA_VERSION = 470.103.01
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))

--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 11.4

(re-sending with fixed bug numbers)

Hi,

The updates discussed in these bugs were included in today's bullseye
point release.

Regards,

Adam

--- End Message ---

Reply to: