From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753576AbbC3UxR (ORCPT ); Mon, 30 Mar 2015 16:53:17 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:25221 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753077AbbC3UxP (ORCPT ); Mon, 30 Mar 2015 16:53:15 -0400 To: Mike Snitzer Cc: Jens Axboe , Andrew Morton , dm-devel@redhat.com, linux-kernel@vger.kernel.org, "Martin K. Petersen" , Rasmus Villemoes Subject: Re: [PATCH] block: fix blk_stack_limits() regression due to lcm() change From: "Martin K. Petersen" Organization: Oracle Corporation References: <1418158984-25546-1-git-send-email-linux@rasmusvillemoes.dk> <1418158984-25546-2-git-send-email-linux@rasmusvillemoes.dk> <20150330173909.GA4836@redhat.com> Date: Mon, 30 Mar 2015 16:53:06 -0400 In-Reply-To: <20150330173909.GA4836@redhat.com> (Mike Snitzer's message of "Mon, 30 Mar 2015 13:39:09 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Source-IP: aserv0021.oracle.com [141.146.126.233] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org >>>>> "Mike" == Mike Snitzer writes: Mike> Linux 3.19 commit 69c953c ("lib/lcm.c: lcm(n,0)=lcm(0,n) is 0, not Mike> n") caused blk_stack_limits() to not properly stack queue_limits Mike> for stacked devices (e.g. DM). Mike> Fix this regression by establishing lcm_not_zero() and switching Mike> blk_stack_limits() over to using it. I'm OK with that approach. The original lcm() behavior made sense when we were the only user. +unsigned long lcm_not_zero(unsigned long a, unsigned long b) +{ + unsigned long l = lcm(a, b); + + if (l) + return l; + + return (b ? : a); +} I always blink when I read b ?: a instead of b ? b : a. But no biggie. That's just my personal preference. Acked-by: Martin K. Petersen -- Martin K. Petersen Oracle Linux Engineering