Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package amdgpu_top for openSUSE:Factory 
checked in at 2026-05-21 18:28:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/amdgpu_top (Old)
 and      /work/SRC/openSUSE:Factory/.amdgpu_top.new.2084 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "amdgpu_top"

Thu May 21 18:28:02 2026 rev:12 rq:1354282 version:0.11.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/amdgpu_top/amdgpu_top.changes    2026-05-04 
17:34:24.291253004 +0200
+++ /work/SRC/openSUSE:Factory/.amdgpu_top.new.2084/amdgpu_top.changes  
2026-05-21 18:30:08.349466609 +0200
@@ -1,0 +2,11 @@
+Tue May 19 11:21:27 UTC 2026 - ecsos <[email protected]>
+
+- Update to version 0.11.5:
+  * v0.11.5
+  * lib: fix fd leak
+  * update libdrm_amdgpu_sys
+  * tui: change the background color in dark mode
+  * json: fix average_dram_writes
+  * update metainfo
+
+-------------------------------------------------------------------

Old:
----
  amdgpu_top-0.11.4.obscpio

New:
----
  amdgpu_top-0.11.5.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ amdgpu_top.spec ++++++
--- /var/tmp/diff_new_pack.oc6l7K/_old  2026-05-21 18:30:17.421840078 +0200
+++ /var/tmp/diff_new_pack.oc6l7K/_new  2026-05-21 18:30:17.425840243 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           amdgpu_top
-Version:        0.11.4
+Version:        0.11.5
 Release:        0
 Summary:        Tool that displays AMD GPU utilization
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.oc6l7K/_old  2026-05-21 18:30:17.461841725 +0200
+++ /var/tmp/diff_new_pack.oc6l7K/_new  2026-05-21 18:30:17.465841890 +0200
@@ -6,7 +6,7 @@
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v([\.\d]+)</param>
     <param name="versionrewrite-replacement">\1</param>
-    <param name="revision">v0.11.4</param>
+    <param name="revision">v0.11.5</param>
     <param name="changesgenerate">enable</param>
   </service>
   <service name="tar" mode="buildtime"/>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.oc6l7K/_old  2026-05-21 18:30:17.489842878 +0200
+++ /var/tmp/diff_new_pack.oc6l7K/_new  2026-05-21 18:30:17.493843042 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/Umio-Yasuno/amdgpu_top.git</param>
-              <param 
name="changesrevision">42571ae2a5339d62140668f3fcb84a47715bd02d</param></service></servicedata>
+              <param 
name="changesrevision">2dd52abf79c2bf3e0720b116228deafa94ace8a3</param></service></servicedata>
 (No newline at EOF)
 

++++++ amdgpu_top-0.11.4.obscpio -> amdgpu_top-0.11.5.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/amdgpu_top-0.11.4/Cargo.lock 
new/amdgpu_top-0.11.5/Cargo.lock
--- old/amdgpu_top-0.11.4/Cargo.lock    2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/Cargo.lock    2026-05-18 17:25:15.000000000 +0200
@@ -65,7 +65,7 @@
 
 [[package]]
 name = "amdgpu_top"
-version = "0.11.4"
+version = "0.11.5"
 dependencies = [
  "amdgpu_top_gui",
  "amdgpu_top_json",
@@ -77,7 +77,7 @@
 
 [[package]]
 name = "amdgpu_top_gui"
-version = "0.11.4"
+version = "0.11.5"
 dependencies = [
  "eframe",
  "egui_plot",
@@ -91,7 +91,7 @@
 
 [[package]]
 name = "amdgpu_top_json"
-version = "0.11.4"
+version = "0.11.5"
 dependencies = [
  "libamdgpu_top",
  "serde_json",
@@ -99,7 +99,7 @@
 
 [[package]]
 name = "amdgpu_top_tui"
-version = "0.11.4"
+version = "0.11.5"
 dependencies = [
  "cursive",
  "libamdgpu_top",
@@ -2868,7 +2868,7 @@
 
 [[package]]
 name = "libamdgpu_top"
-version = "0.11.4"
+version = "0.11.5"
 dependencies = [
  "libdrm_amdgpu_sys",
  "nix",
@@ -2883,8 +2883,8 @@
 
 [[package]]
 name = "libdrm_amdgpu_sys"
-version = "0.8.13"
-source = 
"git+https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs?rev=7714cb3f810342d22c56154cf8501d072759709a#7714cb3f810342d22c56154cf8501d072759709a";
+version = "0.8.14"
+source = 
"git+https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs?rev=c87eff736523054247f1192796a5f47560cd35db#c87eff736523054247f1192796a5f47560cd35db";
 dependencies = [
  "libc",
  "libloading",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/amdgpu_top-0.11.4/Cargo.toml 
new/amdgpu_top-0.11.5/Cargo.toml
--- old/amdgpu_top-0.11.4/Cargo.toml    2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/Cargo.toml    2026-05-18 17:25:15.000000000 +0200
@@ -1,6 +1,6 @@
 [package]
 name = "amdgpu_top"
-version = "0.11.4"
+version = "0.11.5"
 edition = "2024"
 license = "MIT"
 repository = "https://github.com/Umio-Yasuno/amdgpu_top";
@@ -42,20 +42,20 @@
 ]
 
 [workspace.package]
-version = "0.11.4"
+version = "0.11.5"
 edition = "2024"
 authors = ["Umio Yasuno <[email protected]>"]
 repository = "https://github.com/Umio-Yasuno/amdgpu_top";
 
 [workspace.dependencies]
-libamdgpu_top = { path = "crates/libamdgpu_top", version = "0.11.4", 
default-features = false }
+libamdgpu_top = { path = "crates/libamdgpu_top", version = "0.11.5", 
default-features = false }
 num_enum = "0.7.5"
 
 [dependencies]
 libamdgpu_top = { workspace = true }
-amdgpu_top_tui = { path = "crates/amdgpu_top_tui/", version = "0.11.4", 
optional = true, default-features = false }
-amdgpu_top_gui = { path = "crates/amdgpu_top_gui/", version = "0.11.4", 
optional = true, default-features = false }
-amdgpu_top_json = { path = "crates/amdgpu_top_json/", version = "0.11.4", 
optional = true, default-features = false }
+amdgpu_top_tui = { path = "crates/amdgpu_top_tui/", version = "0.11.5", 
optional = true, default-features = false }
+amdgpu_top_gui = { path = "crates/amdgpu_top_gui/", version = "0.11.5", 
optional = true, default-features = false }
+amdgpu_top_json = { path = "crates/amdgpu_top_json/", version = "0.11.5", 
optional = true, default-features = false }
 libc = { version = "0.2", optional = true }
 
 [build-dependencies]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/amdgpu_top-0.11.4/assets/io.github.umio_yasuno.amdgpu_top.metainfo.xml 
new/amdgpu_top-0.11.5/assets/io.github.umio_yasuno.amdgpu_top.metainfo.xml
--- old/amdgpu_top-0.11.4/assets/io.github.umio_yasuno.amdgpu_top.metainfo.xml  
2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/assets/io.github.umio_yasuno.amdgpu_top.metainfo.xml  
2026-05-18 17:25:15.000000000 +0200
@@ -29,8 +29,12 @@
       
<image>https://github.com/Umio-Yasuno/amdgpu_top/assets/53935716/66c3fb7e-cb23-4a19-ab10-2bb9919a1a8a</image>
     </screenshot>
     <screenshot type="default">
-      <caption>amdgpu_top TUI mode</caption>
-      
<image>https://github.com/Umio-Yasuno/amdgpu_top/assets/53935716/859010d8-07b3-411c-b079-c4a837855d41</image>
+      <caption>amdgpu_top TUI light mode</caption>
+      
<image>https://github.com/user-attachments/assets/006769be-cfdf-493e-bb0e-5e4389058a0a</image>
+    </screenshot>
+    <screenshot type="default">
+      <caption>amdgpu_top TUI dark mode</caption>
+      
<image>https://github.com/user-attachments/assets/2e9afa33-12cc-48fd-981e-8c3c40af541b</image>
     </screenshot>
     <screenshot type="default">
       <caption>amdgpu_top GUI mode</caption>
@@ -39,6 +43,49 @@
   </screenshots>
 
   <releases>
+    <release version="0.11.5" date="2026-05-19">
+      <description>
+        <p>Changelog</p>
+        <ul>
+          <li>lib: update libdrm_amdgpu_sys</li>
+          <li>lib: fix fd leak #163</li>
+        </ul>
+        <ul>
+          <li>tui: change the background color in dark mode</li>
+        </ul>
+        <ul>
+          <li>json: fix average_dram_writes #161</li>
+        </ul>
+      </description>
+      <url>https://github.com/Umio-Yasuno/amdgpu_top/releases/tag/v0.11.5</url>
+    </release>
+    <release version="0.11.4" date="2026-04-23">
+      <description>
+        <p>Changelog</p>
+        <ul>
+          <li>update screenshots</li>
+          <li>update dependencies</li>
+        </ul>
+        <ul>
+          <li>lib: Fix compared values for fdinfo sorting</li>
+          <li>lib: remove duplicate read for power_cap</li>
+          <li>lib, xdna: rename pid_map to pre_proc_usage_map, rename 
get_all_proc_usage to update_proc_usage</li>
+          <li>lib: improve FdInfoStat::{get_cpu_time,get_proc_usage}</li>
+          <li>lib: do not push to list if ids_count equals 0</li>
+          <li>lib: remove pre proc usage from hashmap when ids_count is 0</li>
+          <li>lib, xdna: remove pre proc usage from the hashmap if the process 
has already exited</li>
+          <li>lib, xdna: fix memory leak of pre_proc_usage_map</li>
+        </ul>
+        <ul>
+          <li>tui: fix the case of selected device is suspended</li>
+          <li>tui: use GTT sort when VRAM sort type is selected on APU</li>
+        </ul>
+        <ul>
+          <li>gui: update plot data in data thread</li>
+        </ul>
+      </description>
+      <url>https://github.com/Umio-Yasuno/amdgpu_top/releases/tag/v0.11.4</url>
+    </release>
     <release version="0.11.3" date="2026-03-30">
       <description>
         <p>Changelog</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/amdgpu_top-0.11.4/crates/amdgpu_top_json/src/output_json.rs 
new/amdgpu_top-0.11.5/crates/amdgpu_top_json/src/output_json.rs
--- old/amdgpu_top-0.11.4/crates/amdgpu_top_json/src/output_json.rs     
2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/amdgpu_top_json/src/output_json.rs     
2026-05-18 17:25:15.000000000 +0200
@@ -364,7 +364,7 @@
             ("average_soc_current", self.get_average_soc_current()),
             ("average_gfx_current", self.get_average_gfx_current()),
             ("average_dram_reads", self.get_average_dram_reads()),
-            ("average_dram_writes", self.get_average_dram_reads()),
+            ("average_dram_writes", self.get_average_dram_writes()),
             ("average_ipu_reads", self.get_average_ipu_reads()),
             ("average_ipu_writes", self.get_average_ipu_reads()),
             ("stapm_power_limit", self.get_stapm_power_limit()),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/amdgpu_top-0.11.4/crates/amdgpu_top_tui/src/lib.rs 
new/amdgpu_top-0.11.5/crates/amdgpu_top_tui/src/lib.rs
--- old/amdgpu_top-0.11.4/crates/amdgpu_top_tui/src/lib.rs      2026-04-23 
08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/amdgpu_top_tui/src/lib.rs      2026-05-18 
17:25:15.000000000 +0200
@@ -339,7 +339,7 @@
                 use cursive::theme::PaletteColor::*;
                 use cursive::style::Color::Rgb;
 
-                palette[Background] = Rgb(0x7F, 0x8C, 0x8C);
+                palette[Background] = Rgb(0x35, 0x36, 0x37);
                 palette[View] = Rgb(0x25, 0x26, 0x27);
                 palette[Primary] = Rgb(0xFD, 0xFD, 0xFD);
                 palette[TitlePrimary] = Rgb(0x15, 0xA0, 0x85);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/amdgpu_top-0.11.4/crates/libamdgpu_top/Cargo.toml 
new/amdgpu_top-0.11.5/crates/libamdgpu_top/Cargo.toml
--- old/amdgpu_top-0.11.4/crates/libamdgpu_top/Cargo.toml       2026-04-23 
08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/libamdgpu_top/Cargo.toml       2026-05-18 
17:25:15.000000000 +0200
@@ -15,6 +15,6 @@
 # See more keys and their definitions at 
https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-libdrm_amdgpu_sys = { version = "0.8.13", git = 
"https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs";, default-features = 
false, rev = "7714cb3f810342d22c56154cf8501d072759709a" }
+libdrm_amdgpu_sys = { version = "0.8.14", git = 
"https://github.com/Umio-Yasuno/libdrm-amdgpu-sys-rs";, default-features = 
false, rev = "c87eff736523054247f1192796a5f47560cd35db" }
 nix = { version = "0", default-features = false, features = [ "ioctl" ] }
 num_enum = { workspace = true }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/device_path.rs 
new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/device_path.rs
--- old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/device_path.rs       
2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/device_path.rs       
2026-05-18 17:25:15.000000000 +0200
@@ -9,10 +9,11 @@
 };
 use crate::stat::ProcInfo;
 use std::path::PathBuf;
-use std::{fs, io};
+use std::fs;
 use std::fmt;
-use std::sync::{Arc, Mutex};
+use std::sync::{Arc, Mutex, OnceLock};
 use std::os::unix::io::RawFd;
+use std::os::fd::OwnedFd;
 
 #[derive(Clone, Copy, Debug, Eq, PartialEq)]
 pub enum DeviceType {
@@ -34,6 +35,7 @@
     pub arc_proc_index: Arc<Mutex<Vec<ProcInfo>>>,
     pub config_pm: bool,
     pub device_type: DeviceType,
+    pub(crate) fd: OnceLock<Arc<OwnedFd>>,
 }
 
 impl DevicePath {
@@ -42,11 +44,7 @@
             let libdrm_amdgpu = self.libdrm_amdgpu
                 .as_ref()
                 .expect("Error loading libdrm.so and libdrm_amdgpu.so");
-            let fd = self.get_fd().unwrap_or_else(|err| {
-                eprintln!("{err:#}");
-                eprintln!("{:#X?}", self);
-                panic!();
-            });
+            let fd = self.get_fd();
 
             libdrm_amdgpu.init_device_handle(fd)?
         };
@@ -54,22 +52,31 @@
         Ok(amdgpu_dev)
     }
 
-    pub fn get_fd(&self) -> io::Result<RawFd> {
-        use std::os::unix::io::IntoRawFd;
+    pub fn get_fd(&self) -> RawFd {
+        use std::os::unix::io::AsRawFd;
 
-        let device = if self.is_amdgpu() {
-            &self.render
-        } else {
-            &self.accel
-        };
+        let owned_fd = self.fd.get_or_init(|| {
+            let device = if self.is_amdgpu() {
+                &self.render
+            } else {
+                &self.accel
+            };
+
+            // need write option for GUI context
+            // https://gitlab.freedesktop.org/mesa/mesa/-/issues/2424
+            fs::OpenOptions::new()
+                .read(true)
+                .write(true)
+                .open(device)
+                .map(|f| Arc::new(OwnedFd::from(f)))
+                .unwrap_or_else(|err| {
+                    eprintln!("{err:#}");
+                    eprintln!("{:#X?}", self);
+                    panic!();
+                })
+        });
 
-        // need write option for GUI context
-        // https://gitlab.freedesktop.org/mesa/mesa/-/issues/2424
-        fs::OpenOptions::new()
-            .read(true)
-            .write(true)
-            .open(device)
-            .map(|f| f.into_raw_fd())
+        owned_fd.as_raw_fd()
     }
 
     pub fn get_device_path_list() -> Vec<Self> {
@@ -187,6 +194,7 @@
             arc_proc_index,
             config_pm,
             device_type: DeviceType::AMDGPU,
+            fd: OnceLock::new(),
         })
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/drm_mode.rs 
new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/drm_mode.rs
--- old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/drm_mode.rs  2026-04-23 
08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/drm_mode.rs  2026-05-18 
17:25:15.000000000 +0200
@@ -58,16 +58,13 @@
 }
 
 pub fn connector_info(device_path: &DevicePath) -> Vec<ConnectorInfo> {
+    use std::os::fd::AsRawFd;
+
     let Some(libdrm) = device_path.libdrm_amdgpu.clone().map(LibDrm::from) 
else {
         return Vec::new();
     };
-    let fd = {
-        use std::os::fd::IntoRawFd;
-
-        let Some(f) = File::open(&device_path.card).ok() else { return 
Vec::new() };
-
-        f.into_raw_fd()
-    };
+    let Some(f) = File::open(&device_path.card).ok() else { return Vec::new() 
};
+    let fd = f.as_raw_fd();
 
     libdrm.set_all_client_caps(fd);
     let Some(drm_mode_res) = libdrm.get_drm_mode_resources(fd) else { return 
Vec::new() };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/xdna/xdna_device_path.rs 
new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/xdna/xdna_device_path.rs
--- old/amdgpu_top-0.11.4/crates/libamdgpu_top/src/xdna/xdna_device_path.rs     
2026-04-23 08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/crates/libamdgpu_top/src/xdna/xdna_device_path.rs     
2026-05-18 17:25:15.000000000 +0200
@@ -2,7 +2,7 @@
 // ref: 
https://github.com/amd/xdna-driver/blob/main/src/driver/amdxdna/amdxdna_pci_drv.c
 
 use std::{fs, io};
-use std::sync::{Arc, Mutex};
+use std::sync::{Arc, Mutex, OnceLock};
 use std::path::PathBuf;
 use crate::{DeviceType, DevicePath, PCI};
 
@@ -34,6 +34,7 @@
         arc_proc_index,
         config_pm,
         device_type: DeviceType::AMDXDNA,
+        fd: OnceLock::new(),
     })
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/amdgpu_top-0.11.4/src/dump_xdna_device.rs 
new/amdgpu_top-0.11.5/src/dump_xdna_device.rs
--- old/amdgpu_top-0.11.4/src/dump_xdna_device.rs       2026-04-23 
08:52:57.000000000 +0200
+++ new/amdgpu_top-0.11.5/src/dump_xdna_device.rs       2026-05-18 
17:25:15.000000000 +0200
@@ -17,7 +17,7 @@
     }
 
     // for fdinfo test
-    let fd = xdna_device.get_fd().unwrap();
+    let fd = xdna_device.get_fd();
     let mut xdna_proc_index = xdna_device.arc_proc_index.lock().unwrap();
 
     stat::update_index_by_all_proc(

++++++ amdgpu_top.obsinfo ++++++
--- /var/tmp/diff_new_pack.oc6l7K/_old  2026-05-21 18:30:17.909860167 +0200
+++ /var/tmp/diff_new_pack.oc6l7K/_new  2026-05-21 18:30:17.917860497 +0200
@@ -1,5 +1,5 @@
 name: amdgpu_top
-version: 0.11.4
-mtime: 1776927177
-commit: 42571ae2a5339d62140668f3fcb84a47715bd02d
+version: 0.11.5
+mtime: 1779117915
+commit: 2dd52abf79c2bf3e0720b116228deafa94ace8a3
 

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/amdgpu_top/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.amdgpu_top.new.2084/vendor.tar.zst differ: char 7, 
line 1

Reply via email to