linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: mwilck@arcor.de
Cc: linux-raid@vger.kernel.org
Subject: Re: [PATCH 5/6] in_initrd: fix gcc compiler error
Date: Wed, 28 Aug 2013 15:08:22 +1000	[thread overview]
Message-ID: <20130828150822.1f8580bf@notabene.brown> (raw)
In-Reply-To: <1376677320-12816-6-git-send-email-mwilck@arcor.de>

[-- Attachment #1: Type: text/plain, Size: 1059 bytes --]

On Fri, 16 Aug 2013 20:21:59 +0200 mwilck@arcor.de wrote:

> On some systems, this code caused a "comparison between signed
> and unsigned" error.
> 
> Signed-off-by: Martin Wilck <mwilck@arcor.de>
> ---
>  util.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/util.c b/util.c
> index 8096e29..491a107 100644
> --- a/util.c
> +++ b/util.c
> @@ -1949,6 +1949,6 @@ int in_initrd(void)
>  	/* This is based on similar function in systemd. */
>  	struct statfs s;
>  	return  statfs("/", &s) >= 0 &&
> -		(s.f_type == TMPFS_MAGIC ||
> -		 s.f_type == RAMFS_MAGIC);
> +		((unsigned long)s.f_type == TMPFS_MAGIC ||
> +		 (unsigned long)s.f_type == RAMFS_MAGIC);
>  }

That is rather horrible.  It seems that some architectures like this field to
be signed and other unsigned.
But aren't TMPFS_MAGIC and  RAMFS_MAGIC simple constants and so signed by
default?
What are that defined to on the system that produces the error?

Maybe we need to cast both LHS and RHS to "unsigned long"....

NeilBrown

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

  reply	other threads:[~2013-08-28  5:08 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-16 18:21 [PATCH 0/6] Fixes for installation of CentOS 6 on DDF BIOS RAID mwilck
2013-08-16 18:21 ` [PATCH 1/6] DDF: ddf_activate_spare: fix gcc -O2 uninitialized warning mwilck
2013-08-28  4:57   ` NeilBrown
2013-08-16 18:21 ` [PATCH 2/6] DDF: export_examine_super_ddf: print MD_DEVICES mwilck
2013-08-16 18:21 ` [PATCH 3/6] DDF: container_content_ddf: set safe_mode_delay > 0 mwilck
2013-08-16 18:21 ` [PATCH 4/6] DDF: increase default value for safe_mode_delay to 4000ms mwilck
2013-08-16 18:21 ` [PATCH 5/6] in_initrd: fix gcc compiler error mwilck
2013-08-28  5:08   ` NeilBrown [this message]
2013-08-16 18:22 ` [PATCH 6/6] mdmon: allow disabling "@dmon" command name at compile time mwilck
2013-08-28  5:15   ` NeilBrown
2013-09-01 17:20     ` Martin Wilck
2013-09-02  1:07       ` NeilBrown
2013-09-02 18:47         ` Martin Wilck
2013-09-02 22:40           ` NeilBrown

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=20130828150822.1f8580bf@notabene.brown \
    --to=neilb@suse.de \
    --cc=linux-raid@vger.kernel.org \
    --cc=mwilck@arcor.de \
    /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;
as well as URLs for NNTP newsgroup(s).