On Thu, Apr 13, 2017 at 10:45:10PM +0800, Ming Lei wrote: > On Thu, Apr 13, 2017 at 01:53:28PM +0200, Johannes Thumshirn wrote: > > On Thu, Apr 13, 2017 at 06:02:21PM +0800, Ming Lei wrote: > > > On Thu, Apr 13, 2017 at 10:06:29AM +0200, Johannes Thumshirn wrote: > > > > Doing a mkfs.btrfs on a (qemu emulated) PCIe NVMe causes a kernel panic > > > > in nvme_setup_prps() because the dma_len will drop below zero but the > > > > length not. > > > > > > Looks I can't reproduce the issue in QEMU(32G nvme, either partitioned > > > or not, just use 'mkfs.btrfs /dev/nvme0n1p1'), could you share the exact > > > mkfs command line and size of your emulated NVMe? > > > > the exact cmdline is mkfs.btrfs -f /dev/nvme0n1p1 (-f because there was a > > existing btrfs on the image). The image is 17179869184 (a.k.a 16G) bytes. > > > > [...] > > > > > Could you try the following patch to see if it fixes your issue? > > > > It's back to the old, erratic behaviour, see log below. > > Johannes, could you test the following patch? > > Thanks > Ming Works, awesome thanks! Tested-by: Johannes Thumshirn <jthumshirn@xxxxxxx> Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx> -- Johannes Thumshirn Storage jthumshirn@xxxxxxx +49 911 74053 689 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850