Adding Steve D directly to see if he can pick up the original fix. Steve, what happened to https://lore.kernel.org/linux-nfs/77a09978-a5aa-ea7f-04b8-a8d398ee325f@xxxxxxxxxx/ ? Ben On 20 Oct 2022, at 10:33, Andreas Hasenack wrote: > Hi, > > this was brought up before in > https://www.spinics.net/lists/linux-nfs/msg87598.html > > We recently got bug reports about the same issue, and it was only > yesterday that I finally managed to reproduce it in a VM. > > My reproduction steps are: > - add a scsi device to a vm (not virtio). Maybe works with sata too, > but scsi reproduced it > - add it to an LVM VG, and create an LV > - run blkmapd -f: > # blkmapd -f > blkmapd: open pipe file /run/rpc_pipefs/nfs/blocklayout failed: No > such file or directory > double free or corruption (out) > Aborted (core dumped) > > The "No such file or directory" has nothing to do with it. You can > "modprobe blocklayoutdriver" to get rid of it, but the invalid free() > still happens. > > in 2.6.1, gdb shows: > #9 0x00005555555571e5 in bl_add_disk (filepath=0x7fffffffd480 > "/dev/dm-2") at device-discovery.c:232 > 232 free(serial->data); > (gdb) l > 227 disk->dev = dev; > 228 disk->size = size; > 229 disk->valid_path = path; > 230 } > 231 if (serial) { > 232 free(serial->data); > 233 free(serial); > 234 } > 235 } > 236 return; > > As lixiaokeng said in that first post, this should be just > free(serial). Or use bl_free_scsi_string(), like his suggested patch > does.