On Tue, Apr 22, 2025 at 03:41:43PM -0500, Eric Blake via Libguestfs wrote: > On Tue, Apr 22, 2025 at 10:08:01PM +0300, Nikolay Ivanets wrote: > > nbdkit crashes when the client is trying to get extents with len=2^32-1. > > Here is client code (nbdsh): > > > > h.add_meta_context("base:allocation") > > h.connect_uri("nbd://localhost:10809/disk0-flat.vmdk") > > Can you post the disk0-flag.vmdk image (or better, instructions for > how to create it?) > > > > > def f(metacontext, offset, e, status): > > print(e) > > > > h.block_status(2**32-2, 0, f) > > [4294967295, 0] <--- OK
At any rate, it looks like you have an export that is all data up to this length... > > Server prints: > > > > nbdkit: file.8: debug: file: extents count=4294967295 offset=0 req_one=0 ...and that you were using the file plugin to read it. So let's see what happens if I create a file larger than 4G to try and reproduce: $ dd if=/dev/urandom of=myfile bs=1G count=5 5+0 records in 5+0 records out 5368709120 bytes (5.4 GB, 5.0 GiB) copied, 15.5435 s, 345 MB/s $ ./nbdkit -fv file myfile & $ nbdsh --base-allocation --uri nbd://localhost <nbd> def f(m, o, e, s): ... print(e) ... <nbd> h.block_status(2**32-2, 0, f) [4294967295, 0] <nbd> h.block_status(2**32-1, 0, f) server crashed Okay, I can reproduce it with the file plugin, but not with the memory plugin. Now working on root cause. -- Eric Blake, Principal Software Engineer Red Hat, Inc. Virtualization: qemu.org | libguestfs.org _______________________________________________ Libguestfs mailing list -- guestfs@lists.libguestfs.org To unsubscribe send an email to guestfs-le...@lists.libguestfs.org