Package Details: nbdkit 1.38.1-1

Git Clone URL: https://aur.archlinux.org/nbdkit.git (read-only, click to copy)
Package Base: nbdkit
Description: NBD server toolkit
Upstream URL: https://gitlab.com/nbdkit/nbdkit/
Licenses: custom: BSD
Submitter: t-8ch
Maintainer: t-8ch (rwmjones)
Last Packager: t-8ch
Votes: 5
Popularity: 0.045483
First Submitted: 2019-02-22 14:36 (UTC)
Last Updated: 2024-04-28 15:45 (UTC)

Latest Comments

1 2 3 4 5 6 .. 10 Next › Last »

rwmjones commented on 2024-04-29 08:38 (UTC) (edited on 2024-04-29 08:41 (UTC) by rwmjones)

This is a kernel bug, discussed in: https://lore.kernel.org/lkml/20240417150810.GA7636@redhat.com/

The fix is: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=682886ec69d22363819a83ddddd5d66cb5c791e1

solsticedhiver commented on 2024-04-28 22:26 (UTC)

I am running the linux-lts61 kernel (from AUR) version 6.1.88-1-lts61 and I am seeing the same error and stack trace: https://0x0.st/XHUu.log

t-8ch commented on 2024-04-28 15:56 (UTC) (edited on 2024-04-28 15:56 (UTC) by t-8ch)

@dreieck:

The kernel trace looks like https://lore.kernel.org/lkml/3iccc6vjl5gminut3lvpl4va2lbnsgku5ei2d7ylftoofy3n2v@gcfdvtsq6dx2/

dreieck commented on 2024-04-28 15:09 (UTC) (edited on 2024-04-28 17:45 (UTC) by dreieck)

Ahoj,

a few tests fail for me:

==> Starting check()...
[...]
[...]
[...]
PASS: test-data
FAIL: test-memory
FAIL: test-memory-allocator-malloc
FAIL: test-memory-allocator-zstd
PASS: test-nbd
[...]
============================================================================
Testsuite summary for nbdkit 1.36.4
============================================================================
# TOTAL: 337
# PASS:  315
# SKIP:  19
# XFAIL: 0
# FAIL:  3
# XPASS: 0
# ERROR: 0
============================================================================
See tests/test-suite.log
============================================================================
make[3]: *** [Makefile:4651: test-suite.log] Error 1
make[3]: Leaving directory '/var/cache/makepkg/build/nbdkit/src/nbdkit-1.36.4/tests'
make[2]: *** [Makefile:4759: check-TESTS] Error 2
make[2]: Leaving directory '/var/cache/makepkg/build/nbdkit/src/nbdkit-1.36.4/tests'
make[1]: *** [Makefile:7247: check-am] Error 2
make[1]: Leaving directory '/var/cache/makepkg/build/nbdkit/src/nbdkit-1.36.4/tests'
make: *** [Makefile:738: check-recursive] Error 1
==> ERROR: A failure occurred in check().

tests/test-suite.log is uploaded ↗ here. It shows:

[...]
No filesystem is currently mounted on /sys/fs/cgroup.
Failed to determine unit we run in, ignoring: No data available
nbdkit: memory.11: debug: memory: flush
fsync /dev/sda
[    1.715737][  T158] BUG: kernel NULL pointer dereference, address: 0000000000000600
[    1.716142][  T158] #PF: supervisor read access in kernel mode
[    1.716454][  T158] #PF: error_code(0x0000) - not-present page
[    1.716752][  T158] PGD 0 P4D 0 
[    1.716920][  T158] Oops: 0000 [#1] PREEMPT SMP NOPTI
[    1.717173][  T158] CPU: 0 PID: 158 Comm: guestfsd Tainted: G        W          6.8.8-1-longcmdline-amdignoreminpcap-cpuopt-custom-clang #1 ca677a19be9e161337c1bf80555e14b9fed8186c
[    1.717945][  T158] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS Arch Linux 1.16.3-1-1 04/01/2014
[    1.718432][  T158] RIP: 0010:zswap_shrinker_count+0xde/0x1a0
[    1.718722][  T158] Code: 21 c2 03 c1 e6 06 48 39 f2 7e 1b 48 39 c1 75 0e 48 8b 0d 05 06 eb 01 48 89 0d 6e 73 d3 04 48 8b 38 e8 f6 02 dd ff f3 0f 1e fa <49> 8b 8f 00 06 00 00 48 8b 81 98 01 00 00 4c 8b a9 a0 01 00 00 4d
[    1.719648][  T158] RSP: 0018:ffff9c9e8086f8f8 EFLAGS: 00010246
[    1.719959][  T158] RAX: 00000000fffff33f RBX: ffff895b42bb3800 RCX: 0000000000000002
[    1.720337][  T158] RDX: 0000000000000000 RSI: ffff9c9e8086f9c0 RDI: ffff895b8fa48e80
[    1.720725][  T158] RBP: ffff9c9e8086f9c8 R08: 0000000000000000 R09: 0000000000000000
[    1.721102][  T158] R10: 0000000000000000 R11: ffffffff8f758c30 R12: ffff895b8ffdbd88
[    1.721482][  T158] R13: 0000000000000000 R14: ffff9c9e8086f9c0 R15: 0000000000000000
[    1.721866][  T158] FS:  00007fbd69ed71c0(0000) GS:ffff895b89e00000(0000) knlGS:0000000000000000
[    1.722291][  T158] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    1.722605][  T158] CR2: 0000000000000600 CR3: 0000000001fc4000 CR4: 0000000000750ef0
[    1.722985][  T158] PKRU: 55555554
[    1.723168][  T158] Call Trace:
[    1.723332][  T158]  <TASK>
[    1.723476][  T158]  ? __die_body+0x7a/0x110
[    1.723690][  T158]  ? page_fault_oops+0x46e/0x580
[    1.723929][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.724200][  T158]  ? kmem_cache_free_bulk+0x3c1/0x490
[    1.724461][  T158]  ? do_user_addr_fault+0x5d4/0x7b0
[    1.724711][  T158]  ? exc_page_fault+0x61/0x150
[    1.724941][  T158]  ? asm_exc_page_fault+0x26/0x30
[    1.725183][  T158]  ? __cfi_zswap_shrinker_count+0x10/0x10
[    1.725471][  T158]  ? zswap_shrinker_count+0xde/0x1a0
[    1.725726][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.725995][  T158]  do_shrink_slab+0x47/0x380
[    1.726220][  T158]  shrink_slab+0x128/0x680
[    1.726448][  T158]  ? super_lock+0x18c/0x240
[    1.726723][  T158]  drop_slab+0xb1/0x140
[    1.726938][  T158]  ? __cfi_drop_pagecache_sb+0x10/0x10
[    1.727204][  T158]  drop_caches_sysctl_handler+0x94/0x120
[    1.727475][  T158]  proc_sys_call_handler+0x249/0x3e0
[    1.727731][  T158]  vfs_write+0x379/0x400
[    1.727945][  T158]  ksys_write+0x72/0x100
[    1.728152][  T158]  do_syscall_64+0x8e/0x150
[    1.728373][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.728644][  T158]  ? do_syscall_64+0x9a/0x150
[    1.728869][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.729164][  T158]  ? do_syscall_64+0x9a/0x150
[    1.729395][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.729677][  T158]  ? do_wp_page+0xa02/0x1610
[    1.729908][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.730181][  T158]  ? __rseq_handle_notify_resume+0x30b/0x600
[    1.730474][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.730744][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.731012][  T158]  ? handle_mm_fault+0xc51/0x1630
[    1.731255][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.731525][  T158]  ? do_user_addr_fault+0x481/0x7b0
[    1.731779][  T158]  ? srso_alias_return_thunk+0x5/0xfbef5
[    1.732054][  T158]  ? exc_page_fault+0x61/0x150
[    1.732287][  T158]  entry_SYSCALL_64_after_hwframe+0x55/0x5d
[    1.732572][  T158] RIP: 0033:0x7fbd6a5491a4
[    1.732785][  T158] Code: c7 00 16 00 00 00 b8 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 80 3d a5 3e 0e 00 00 74 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 c3 0f 1f 00 48 83 ec 28 48 89 54 24 18 48
[    1.733714][  T158] RSP: 002b:00007ffcb2667548 EFLAGS: 00000202 ORIG_RAX: 0000000000000001
[    1.734120][  T158] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007fbd6a5491a4
[    1.734500][  T158] RDX: 0000000000000001 RSI: 00005648cb532c30 RDI: 0000000000000004
[    1.734880][  T158] RBP: 00005648cb532c30 R08: 0000000000000000 R09: 0000000000000000
[    1.735260][  T158] R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000001
[    1.735642][  T158] R13: 00005648cb4ac750 R14: 00007fbd6a623f00 R15: 00005648cb4ac430
[    1.736021][  T158]  </TASK>
[    1.736167][  T158] Modules linked in: virtio_snd snd_pcm snd_timer snd soundcore crc8 crc7 crc4 crc32test crc_itu_t virtiofs fuse ext4 mbcache jbd2 virtio_vdpa vdpa virtio_mmio virtio_mem virtio_input virtio_dma_buf virtio_balloon virtio_vfio_pci virtio_pci virtio_pci_modern_dev virtio_pci_legacy_dev vfio_pci_core irqbypass vfio virtio_scsi sd_mod virtio_rpmsg_bus rpmsg_ns rpmsg_core virtio_pmem nd_virtio virtio_net net_failover failover virtio_iommu virtio_crypto crypto_engine virtio_console virtio_rng virtio_bt bluetooth rfkill crc16 virtio_blk ata_piix libata scsi_mod scsi_common
[    1.738729][  T158] CR2: 0000000000000600
[    1.738932][  T158] ---[ end trace 0000000000000000 ]---
[    1.739199][  T158] RIP: 0010:zswap_shrinker_count+0xde/0x1a0
[    1.739493][  T158] Code: 21 c2 03 c1 e6 06 48 39 f2 7e 1b 48 39 c1 75 0e 48 8b 0d 05 06 eb 01 48 89 0d 6e 73 d3 04 48 8b 38 e8 f6 02 dd ff f3 0f 1e fa <49> 8b 8f 00 06 00 00 48 8b 81 98 01 00 00 4c 8b a9 a0 01 00 00 4d
[    1.740442][  T158] RSP: 0018:ffff9c9e8086f8f8 EFLAGS: 00010246
[    1.740745][  T158] RAX: 00000000fffff33f RBX: ffff895b42bb3800 RCX: 0000000000000002
[    1.741127][  T158] RDX: 0000000000000000 RSI: ffff9c9e8086f9c0 RDI: ffff895b8fa48e80
[    1.741510][  T158] RBP: ffff9c9e8086f9c8 R08: 0000000000000000 R09: 0000000000000000
[    1.741904][  T158] R10: 0000000000000000 R11: ffffffff8f758c30 R12: ffff895b8ffdbd88
[    1.742286][  T158] R13: 0000000000000000 R14: ffff9c9e8086f9c0 R15: 0000000000000000
[    1.742669][  T158] FS:  00007fbd69ed71c0(0000) GS:ffff895b89e00000(0000) knlGS:0000000000000000
[    1.743114][  T158] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    1.743426][  T158] CR2: 0000000000000600 CR3: 0000000001fc4000 CR4: 0000000000750ef0
[    1.743805][  T158] PKRU: 55555554
[    1.743975][  T158] note: guestfsd[158] exited with irqs disabled
/init: line 265:   158 Killed                  $cmd
+ sync
nbdkit: memory.2: debug: memory: flush
+ test '' = 1
+ reboot -f
/init: line 272: reboot: command not found
[    1.748221][    T1] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00
[    1.748727][    T1] Kernel Offset: 0xe200000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
[    1.749299][    T1] Rebooting in 1 seconds..
nbdkit: memory.2: debug: memory: flush
nbdkit: memory.13: debug: memory: flush
nbdkit: memory.13: debug: client sent NBD_CMD_DISC, closing connection
nbdkit: memory.13: debug: exiting worker thread memory.13
nbdkit: memory.6: debug: exiting worker thread memory.6
nbdkit: memory.10: debug: exiting worker thread memory.10
nbdkit: memory.15: debug: exiting worker thread memory.15
nbdkit: memory.12: debug: exiting worker thread memory.12
nbdkit: memory.14: debug: exiting worker thread memory.14
nbdkit: memory.9: debug: exiting worker thread memory.9
nbdkit: memory.0: debug: exiting worker thread memory.0
nbdkit: memory.5: debug: exiting worker thread memory.5
nbdkit: memory.3: debug: exiting worker thread memory.3
nbdkit: memory.1: debug: exiting worker thread memory.1
nbdkit: memory.8: debug: exiting worker thread memory.8
nbdkit: memory.11: debug: exiting worker thread memory.11
nbdkit: memory.4: debug: exiting worker thread memory.4
nbdkit: memory.2: debug: exiting worker thread memory.2
nbdkit: memory.7: debug: exiting worker thread memory.7
nbdkit: memory[1]: debug: memory: finalize
nbdkit: memory[1]: debug: memory: close
libguestfs: error: appliance closed the connection unexpectedly, see earlier error messages
[...]

Regards!

dreieck commented on 2023-12-08 12:54 (UTC)

Thanks, great!, that solves package manager hickups.
I think you should add something like "(needs to be installed at build time)" to the comment to the optional dependency.

Regards!

t-8ch commented on 2023-12-07 19:05 (UTC)

I went with your second option. It imposes the least overhead on users not affected by this problem.

dreieck commented on 2023-12-07 14:30 (UTC) (edited on 2023-12-08 12:50 (UTC) by dreieck)

If boost is needed as a build dependency for rb_torrent, and it is optional after build, you should either

  • have boost as make dependency and as optional dependency (or boost-libs as optional dependency if boost is not needed to run rb_torrent), or
  • have boost as optinal dependency with a descriptive text that it must be present at compile time to include the feature, and have a check in build() that when it is not installed --disable-torrent is passed so that no build error occurs.

The current solution that breaks build when boost is not installed but not pull in boost as a build dependency is not OK.

t-8ch commented on 2023-12-05 21:46 (UTC)

boost ist only a build-dependency for libtorrent-rasterbar. Which is why the binary package does not pull it in as a dependency. Unfortunately there is proper way to express an optional builddependency with the Arch packaging tools.

We can either make it an optdepends or a makedepends. I'll add a reason for both optdepends so it's clear that they are both needed.

boost-lib is not even sufficient as we need the headers, not the libraries.

rwmjones commented on 2023-12-05 20:22 (UTC) (edited on 2023-12-05 20:25 (UTC) by rwmjones)

So ... boost isn't (or shouldn't be) a direct dependency. I think it should only come indirectly via the optional rb_torrent dependency. At least in theory rb_torrent ought to itself pull in anything it needs like boost.

However if an extra dependency for nbdkit fixes the problem then let's do that.

Edit: To give a concrete example, I know that Fedora doesn't work like Arch, but in Fedora we only depend on rb_libtorrent-devel:

https://src.fedoraproject.org/rpms/nbdkit/blob/rawhide/f/nbdkit.spec#_123

and it's that other package which depends on boost-devel:

https://src.fedoraproject.org/rpms/rb_libtorrent/blob/rawhide/f/rb_libtorrent.spec#_37

kescherAUR commented on 2023-12-05 20:19 (UTC)

Should have boost-libs as a dependency (either that, or --disable-torrent, but I'd prefer keeping support for that) and boost as a make dependency.