Message ID | 20160716181007.GA14215@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sat, 2016-07-16 at 14:10 -0400, Mike Snitzer wrote: > On Fri, Jul 15 2016 at 9:08pm -0400, > Christoph Hellwig <hch@lst.de> wrote: > > > On Fri, Jul 15, 2016 at 03:03:54PM -0400, Martin K. Petersen wrote: > > > > > > > > "Christoph" == Christoph Hellwig <hch@lst.de> writes: > > > > > > Christoph> I was a bit overeager to thing ALL_TG_PT would solve > > > all our > > > Christoph> multipathing woes in respect to persistent > > > reservation. > > > Christoph> Turns out that there are lots of possible setups where > > > it > > > Christoph> doesn't work, and we'll have to ask device mapper to > > > register > > > Christoph> all underlying devices instead. > > > > > > Should I queue the sd patch or let Mike take both through the DM > > > tree? > > > > I think having both in the same tree would be very useful. I don't > > care which one that is. > > I've picked both of them up. Staged for 4.8 merge and in linux-next > via linux-dm.git's 'for-next'. > > (I added Martin's Acked-by to the sd patch header, Martin: if not OK, > or if you'd prefer Reviewed-by just let me know) You are actually missing the reviewed by tags from Mike Christie on this, which should be added. James -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Jul 16 2016 at 2:14pm -0400, James Bottomley <James.Bottomley@HansenPartnership.com> wrote: > On Sat, 2016-07-16 at 14:10 -0400, Mike Snitzer wrote: > > On Fri, Jul 15 2016 at 9:08pm -0400, > > Christoph Hellwig <hch@lst.de> wrote: > > > > > On Fri, Jul 15, 2016 at 03:03:54PM -0400, Martin K. Petersen wrote: > > > > > > > > > "Christoph" == Christoph Hellwig <hch@lst.de> writes: > > > > > > > > Christoph> I was a bit overeager to thing ALL_TG_PT would solve > > > > all our > > > > Christoph> multipathing woes in respect to persistent > > > > reservation. > > > > Christoph> Turns out that there are lots of possible setups where > > > > it > > > > Christoph> doesn't work, and we'll have to ask device mapper to > > > > register > > > > Christoph> all underlying devices instead. > > > > > > > > Should I queue the sd patch or let Mike take both through the DM > > > > tree? > > > > > > I think having both in the same tree would be very useful. I don't > > > care which one that is. > > > > I've picked both of them up. Staged for 4.8 merge and in linux-next > > via linux-dm.git's 'for-next'. > > > > (I added Martin's Acked-by to the sd patch header, Martin: if not OK, > > or if you'd prefer Reviewed-by just let me know) > > You are actually missing the reviewed by tags from Mike Christie on > this, which should be added. Added, thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, Jul 16, 2016 at 02:10:07PM -0400, Mike Snitzer wrote: > Christoph, I had to fix this: > > drivers/md/dm.c:2564:12: warning: context imbalance in 'dm_call_pr' - different lock contexts for basic block That's coming from sparse? Guess I need to update my sparse version.. > here is the incremental I folded in to the dm patch: Looks fine, Reviewed-by: Christoph Hellwig <hch@lst.de> -- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 214fa03..4dca5a7 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2567,14 +2567,13 @@ static int dm_call_pr(struct block_device *bdev, iterate_devices_callout_fn fn, struct mapped_device *md = bdev->bd_disk->private_data; struct dm_table *table; struct dm_target *ti; - int ret = 0, srcu_idx; + int ret = -ENOTTY, srcu_idx; table = dm_get_live_table(md, &srcu_idx); if (!table || !dm_table_get_size(table)) - return -ENOTTY; + goto out; /* We only support devices that have a single target */ - ret = -ENOTTY; if (dm_table_get_num_targets(table) != 1) goto out; ti = dm_table_get_target(table, 0); @@ -2584,10 +2583,6 @@ static int dm_call_pr(struct block_device *bdev, iterate_devices_callout_fn fn, goto out; ret = ti->type->iterate_devices(ti, fn, data); - if (ret) - goto out; - - ret = 0; out: dm_put_live_table(md, srcu_idx); return ret;