Package: jdupes
Version: 1.21.0-1
Severity: normal

Dear Maintainer,
When running jdupes -rB ./ in a folder on a BTRFS filesystem, I got
errors for every file:
eg,
  [SRC] ./.git/logs/HEAD
  -XX-> ./.git/logs/refs/heads/master
error: Inappropriate ioctl for device (25)

I have been running jdupes -B fairly regularly on various files on my
device; the problems have only
started now, after the most recent update of jdupes.  I'm wondering if
the kernel API for
file deduplication changed, or 

strace says this is the called ioctl:
ioctl(3, _IOC(_IOC_READ|_IOC_WRITE, 0x5e, 0x36, 0x18), 0x55732fa9b4e0)
= -1 ENOTTY (Inappropriate ioctl for device)

The bug is in upstream: in commit 0027bb2c8, the new static header
incorrectly states the
literal: it transforms BTRFS_IOCTL_MAGIC from the hexadecimal 0x94
(decimal 148) to the decimal 94
This is problematic: the patch is fairly trivial (add 0x to line 23 of
linux-dedupe-static.h).

I do wonder why the static header is used, rather than the proper
kernel headers.

I'll also put this bug upstream, filing it here because I started the
report before I
finished poking around it's cause.

Thanks!
Calum McConnell


-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.19.0-1-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages jdupes depends on:
ii  libc6  2.34-7

jdupes recommends no packages.

jdupes suggests no packages.

-- no debconf information

Reply via email to