public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Michael L. Semon" <mlsemon35@gmail.com>
To: Jeff Liu <jeff.liu@oracle.com>
Cc: "xfs@oss.sgi.com" <xfs@oss.sgi.com>
Subject: Re: [PATCH v2 7/8] xfs: Add xfs_log_rlimit.[c|h]
Date: Fri, 17 May 2013 04:36:35 -0400	[thread overview]
Message-ID: <5195EC13.2060502@gmail.com> (raw)
In-Reply-To: <5195C279.3060502@oracle.com>

On 05/17/2013 01:39 AM, Jeff Liu wrote:
> From: Jie Liu <jeff.liu@oracle.com>
>
> Add source files for xfs_log_rlimit.[c|h].
> The new source would be used for the log space validation.

Update:  To build the kernel, I'm getting by on a sysadmin hack that 
looks like this:

--- linux/fs/xfs/xfs_log_rlimit.c.orig	2013-05-17 03:36:28.983493357 -0400
+++ linux/fs/xfs/xfs_log_rlimit.c	2013-05-17 04:21:07.090661828 -0400
@@ -127,8 +127,10 @@
  	 * Also, the log size should be a multiple of the log stripe unit, round
  	 * it up to lsunit boundary if lsunit is specified.
  	 */
-	minlblks = lsunit ? (roundup(BTOBB(maxlres), lsunit) + 2 * lsunit) * 2 :
-			    BTOBB(maxlres) * 2;
+	minlblks = lsunit ?
+		(roundup((const int)(BTOBB(maxlres)), lsunit) +
+		2 * lsunit) * 2 :
+			BTOBB(maxlres) * 2;

  	if (log->l_logBBsize < minlblks) {
  		xfs_crit(mp,

However, that makes no sense.  There is a roundup in <linux/kernel.h> 
that goes like this:

/* The `const' in roundup() prevents gcc-3.3 from calling __divdi3 */
#define roundup(x, y) (                                 \
{                                                       \
         const typeof(y) __y = y;                        \
         (((x) + (__y - 1)) / __y) * __y;                \
}                                                       \
)

Okay, so that gave me the inspiration to cast the type so gcc-4.8.0 
wouldn't call __divdi3.  But why did this make a difference?

Disclaimer:  I'm not a C macro guru, so I don't know which random 
sequence of punctuation keys would make roundup() happy.

Michael

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  parent reply	other threads:[~2013-05-17  8:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-17  5:39 [PATCH v2 7/8] xfs: Add xfs_log_rlimit.[c|h] Jeff Liu
2013-05-17  7:51 ` Michael L. Semon
2013-05-17  8:36 ` Michael L. Semon [this message]
2013-05-17  9:40   ` Jeff Liu
2013-05-17 10:29     ` Dave Chinner
2013-05-17 10:34       ` Jeff Liu
2013-05-17 19:31     ` Michael L. Semon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5195EC13.2060502@gmail.com \
    --to=mlsemon35@gmail.com \
    --cc=jeff.liu@oracle.com \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox