On Wed, Apr 24 2013, James Bottomley wrote: > On Wed, 2013-04-24 at 22:55 +0900, Namjae Jeon wrote: > > From: James Bottomley <JBottomley@xxxxxxxxxxxxx> > > > > linux-v3.8-rc1 and later support for plug for blkdev_issue_discard with > > commit 0cfbcafcae8b7364b5fa96c2b26ccde7a3a296a9 > > (block: add plug for blkdev_issue_discard ) > > > > For example, > > 1) DISCARD rq-1 with size size 4GB > > 2) DISCARD rq-2 with size size 1GB > > > > If these 2 discard requests get merged, final request size will be 5GB. > > > > In this case, request's __data_len field may overflow as it can store > > max 4GB(unsigned int). > > > > This issue was observed while doing mkfs.f2fs on 5GB SD card: > > https://lkml.org/lkml/2013/4/1/292 > > > > Info: sector size = 512 > > Info: total sectors = 11370496 (in 512bytes) > > Info: zone aligned segment0 blkaddr: 512 > > [ 257.789764] blk_update_request: bio idx 0 >= vcnt 0 > > > > mkfs process gets stuck in D state and I see the following in the dmesg: > > > > [ 257.789733] __end_that: dev mmcblk0: type=1, flags=122c8081 > > [ 257.789764] sector 4194304, nr/cnr 2981888/4294959104 > > [ 257.789764] bio df3840c0, biotail df3848c0, buffer (null), len > > 1526726656 > > [ 257.789764] blk_update_request: bio idx 0 >= vcnt 0 > > [ 257.794921] request botched: dev mmcblk0: type=1, flags=122c8081 > > [ 257.794921] sector 4194304, nr/cnr 2981888/4294959104 > > [ 257.794921] bio df3840c0, biotail df3848c0, buffer (null), len > > 1526726656 > > > > This patch fixes this issue. > > > > Reported-by: Max Filippov <jcmvbkbc@xxxxxxxxx> > > Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> > > Signed-off-by: James Bottomley <JBottomley@xxxxxxxxxxxxx> > > Tested-by: Max Filippov <jcmvbkbc@xxxxxxxxx> > > Cc: <stable@xxxxxxxxxxxxxxx> > > The two signoffs need to be reversed (they follow the chain of > transmission from the author into the kernel), but other than that, this > looks great. I assume Jens can just hand edit this one issue. Yeah, I'll just hand edit thank. Thanks all. -- Jens Axboe -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html