Re: Bug: swap discard issue with zram caused by "block: don't deal with discard limit in blkdev_issue_discard()"

From: Ming Lei
Date: Fri Oct 26 2018 - 02:28:03 EST


On Thu, Oct 25, 2018 at 05:09:32PM +0100, Rui Salvaterra wrote:
> Hi,
>
> After commit 744889b7cbb56a64f957e65ade7cb65fe3f35714, I started
> getting this (-EIO, it seems) on my dmesg:
>
> swapon: discard_swap(00000000c275f02d): -5
>
> This is an 8 GB zram swap device. It's configured like this:
>
> modprobe zram
> echo zstd > /sys/block/zram0/comp_algorithm
> echo 8297508864 > /sys/block/zram0/disksize
> mkswap /dev/zram0
> swapon -d -p 100 /dev/zram0
>
> I should note that if I use --discard=pages instead of -d (both
> policies) at swapon, I don't get this error.
> Reverting the commit from v4.19 final fixes the error for me, but
> surely breaks something else. :)
> Let me know if you need any additional information.

The patch titled with 'block: make sure discard bio is aligned with logical block size'
in the list may fix this issue, please test and see if it works.

Thanks,
Ming