Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> writes: > Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> writes: >> Neil Brown <neilb@xxxxxxx> writes: >>> Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> writes: >>> >>>> Hi Neil, >>>> >>>> I think we have some bad side effects with this patch: >>>> >>>> commit 199dc6ed5179251fa6158a461499c24bdd99c836 >>>> Author: NeilBrown <neilb@xxxxxxxx> >>>> Date: Mon Aug 3 13:11:47 2015 +1000 >>>> >>>> md/raid0: update queue parameter in a safer location. >>>> >>>> When a (e.g.) RAID5 array is reshaped to RAID0, the updating >>>> of queue parameters (e.g. max number of sectors per bio) is >>>> done in the wrong place. >>>> It should be part of ->run, but it is actually part of ->takeover. >>>> This means it happens before level_store() calls: >>>> >>>> blk_set_stacking_limits(&mddev->queue->limits); >>>> >>>> Running the '03r0assem' test suite fills my kernel log with output like >>>> below. Yi Zhang also had issues where writes failed too. >>>> >>>> robably something we need to resolve for 4.2-final or revert the >>>> offending patch. >>>> >>>> Cheers, >>>> Jes >>>> >>>> md: bind<loop0> >>>> md: bind<loop1> >>>> md: bind<loop2> >>>> md/raid0:md2: md_size is 116736 sectors. >>>> md: RAID0 configuration for md2 - 1 zone >>>> md: zone0=[loop0/loop1/loop2] >>>> zone-offset= 0KB, device-offset= 0KB, size= 58368KB >>>> >>>> md2: detected capacity change from 0 to 59768832 >>>> bio too big device loop0 (296 > 255) >>>> bio too big device loop0 (272 > 255) >>> >>> 1/ Why do you blame that particular patch? >>> >>> 2/ Where is that error message coming from? I cannot find "bio too big" >>> in the kernel (except in a comment). >>> Commit: 54efd50bfd87 ("block: make generic_make_request handle >>> arbitrarily sized bios") >>> removed the only instance of the error message that I know of. >>> >>> Which kernel exactly are you testing? >> >> I blame it because of bisect - I revert that patch and the issue goes >> away. >> >> I checked out 199dc6ed5179251fa6158a461499c24bdd99c836 in Linus' tree, >> see the bio too large. I revert it and it goes away. > > Hmmm Xiao tells me that the warning message is not in upstream, but I > was sure I reproduced it in the upstream kernel as well. If I screwed > up, my apologies, I am going back to my cave and will investigate > further. Digging a bit further, I was testing on a 4.2.0-rc5+ where I saw the issue. That does raise the question of what this patch does to older kernels, since it was submitted it for 2.6.35+. "bio too big" message went away with this commit: commit 54efd50bfd873e2dbf784e0b21a8027ba4299a3e Author: Kent Overstreet <kent.overstreet@xxxxxxxxx> Date: Thu Apr 23 22:37:18 2015 -0700 block: make generic_make_request handle arbitrarily sized bios Cheers, Jes -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html