Re: [v3.7 Regression] [SCSI] sd: Implement support for WRITE SAME

From: Joseph Salisbury
Date: Fri Dec 14 2012 - 21:38:49 EST


On 12/14/2012 04:11 PM, Mike Snitzer wrote:
On Fri, Dec 14 2012 at 3:30pm -0500,
Joseph Salisbury <joseph.salisbury@xxxxxxxxxxxxx> wrote:

Hi Martin,

A bug was opened against the Ubuntu kernel[0]. After a kernel
bisect, it was found that reverting the following commit resolved
this bug:

commit 5db44863b6ebbb400c5e61d56ebe8f21ef48b1bd
Author: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
Date: Tue Sep 18 12:19:32 2012 -0400
[SCSI] sd: Implement support for WRITE SAME

The regression was introduced as of v3.7-rc7.

The bug can be reproduced with the following commands, which will
operate on a virtual scsi_debug device, so they won't change any
data on the test system. However, this will completely crash the
system:

sudo modprobe scsi_debug
sudo luksformat -t ext4 /dev/sdb <- Or whatever device gets assigned
after inserting scsi_debug.
sudo cryptsetup luksOpen /dev/sdb treasure

Everything works fine up to here, but the following will cause the crash:

sudo mount /dev/mapper/treasure /mnt

The bug can be reproduced on bare metal, in a VM and on i386 or amd64.

I see that you are the author of this patch, so I wanted to run this
by you. I was thinking of requesting a revert for v3.7, but I
wanted to get your feedback first.


Thanks,

Joe


[0] https://bugs.launchpad.net/bugs/1089818
The WRITE SAME change was introduced long before v3.7-rc7. I think your
bisect is somehow wrong.
From Linus' tree:
git describe --contains 5db4486
v3.7-rc7~19^2

Reverting commit 5db4486 solves the bug previously mentioned.


Milan Broz recently pointed out issues he found with luks when using a
late 3.7-rc (rc7 afaik). Linus fixed that issue with this commit (which
landed in the final v3.7):
http://git.kernel.org/linus/684c9aaebbb0ea3a9954

That may not be _the_ problem though. But have you tried the final
v3.7?

Yes, v3.7 without reverting 5db4486 exhibits the bug.


Mike
I'll research further and provide additional data.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/