Fix builds with Rust 1.73+ caused by ambiguous <number>::div_ceil calls

epel9 imports/e9/rust-rd-hashd-2.1.2-10.el9
Fabio Valentini 1 year ago
parent 9fb33d997f
commit 6ed5dc85bb
No known key found for this signature in database
GPG Key ID: 5AC5F572E5D410AF

@ -0,0 +1,56 @@
From d7ea03257825c173fcd4b8eed26fb177f638bfb3 Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe@gmail.com>
Date: Mon, 9 Oct 2023 01:33:38 +0200
Subject: [PATCH] Disambiguate num::Integer::div_ceil from <number>::div_ceil
---
src/bench.rs | 2 +-
src/hasher.rs | 4 ++--
src/testfiles.rs | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/bench.rs b/src/bench.rs
index 85603a8..5092a41 100644
--- a/src/bench.rs
+++ b/src/bench.rs
@@ -649,7 +649,7 @@ impl Bench {
fn time_hash(size: usize, params: &Params, tf: &TestFiles) -> f64 {
let mut hasher = hasher::Hasher::new(1.0, 0.0);
let chunk_size = params.chunk_pages * *PAGE_SIZE;
- let chunks_per_unit = (tf.unit_size as usize).div_ceil(&chunk_size);
+ let chunks_per_unit = Integer::div_ceil(&(tf.unit_size as usize), &chunk_size);
let started_at = Instant::now();
diff --git a/src/hasher.rs b/src/hasher.rs
index 6ee2084..7e5d3e5 100644
--- a/src/hasher.rs
+++ b/src/hasher.rs
@@ -580,9 +580,9 @@ impl DispatchThread {
// determined by each hash worker to avoid overloading the
// dispatch thread.
let file_size = self.file_size_normal.sample(&mut rng).round() as usize;
- let file_nr_chunks = file_size.div_ceil(&chunk_size).max(1);
+ let file_nr_chunks = Integer::div_ceil(&file_size, &chunk_size).max(1);
let anon_size = self.anon_size_normal.sample(&mut rng).round() as usize;
- let anon_nr_chunks = anon_size.div_ceil(&chunk_size);
+ let anon_nr_chunks = Integer::div_ceil(&anon_size, &chunk_size);
let hasher_thread = HasherThread {
tf: self.tf.clone(),
diff --git a/src/testfiles.rs b/src/testfiles.rs
index 28e046a..b7dc555 100644
--- a/src/testfiles.rs
+++ b/src/testfiles.rs
@@ -34,7 +34,7 @@ impl TestFiles {
base_path: PathBuf::from(base_path.as_ref()),
unit_size,
size,
- nr_files: size.div_ceil(&unit_size),
+ nr_files: Integer::div_ceil(&size, &unit_size),
comp,
prefix: String::from(DFL_PREFIX),
}
--
2.41.0

@ -13,6 +13,8 @@ URL: https://crates.io/crates/rd-hashd
Source: %{crates_source} Source: %{crates_source}
# hashd: build fix for 32bit archs # hashd: build fix for 32bit archs
Patch0: https://github.com/facebookexperimental/resctl-demo/commit/dbe5735bdf005a24e54dd19559016a59f6f43536.patch Patch0: https://github.com/facebookexperimental/resctl-demo/commit/dbe5735bdf005a24e54dd19559016a59f6f43536.patch
# * fix builds with Rust 1.73+ caused by ambiguous <number>::div_ceil calls
Patch1: 0001-Disambiguate-num-Integer-div_ceil-from-number-div_ce.patch
BuildRequires: rust-packaging >= 23 BuildRequires: rust-packaging >= 23
@ -42,7 +44,9 @@ License: Apache-2.0 AND BSD-3-Clause AND MIT AND Unicode-DFS-2016 AND (Ap
%{_bindir}/rd-hashd %{_bindir}/rd-hashd
%prep %prep
%autosetup -n %{crate}-%{version_no_tilde} -p2 %autosetup -n %{crate}-%{version_no_tilde} -N
%patch -P0 -p2
%patch -P1 -p1
%cargo_prep %cargo_prep
%generate_buildrequires %generate_buildrequires

Loading…
Cancel
Save