public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
From: sebastien dugue <sebastien.dugue-6ktuUTfB/bM@public.gmane.org>
To: Bart Van Assche <bvanassche-HInyCGIudOg@public.gmane.org>
Cc: linux-rdma <linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Alex Netes <alexne-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
	Vincent <jean-vincent.ficet-6ktuUTfB/bM@public.gmane.org>,
	hal-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org
Subject: Re: [PATCH] umad.c: memset() ib_user_mad_reg_req structure to 0before invoking ioctl()
Date: Wed, 6 Jul 2011 09:08:37 +0200	[thread overview]
Message-ID: <20110706090837.617de660@b012350-ux> (raw)
In-Reply-To: <CAO+b5-pKPdJC20s7dL18b97fd778GoT4TJ_J13NwbkEFz6bz4w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On Tue, 5 Jul 2011 20:17:18 +0200
Bart Van Assche <bvanassche-HInyCGIudOg@public.gmane.org> wrote:

> On Mon, Jul 4, 2011 at 11:53 AM, sebastien dugue
> <sebastien.dugue-6ktuUTfB/bM@public.gmane.org> wrote:
> >
> > This fixes the following warning issued by valgrind:
> >
> > ==5287== Syscall param ioctl(generic) points to uninitialised byte(s)
> > ==5287==    at 0x3C466D95D7: ioctl (in /lib64/libc-2.12.so)
> > ==5287==    by 0x526C292: umad_register (umad.c:947)
> > ==5287==    by 0x568D206: smp_engine_init (query_smp.c:228)
> > ==5287==    by 0x5689F8F: ibnd_discover_fabric (ibnetdisc.c:537)
> > ==5287==    by 0x411700: devmgr_discover_fabric (devmgr_discover.c:66)
> >
> > Signed-off-by: Jean-Vincent Ficet <jean-vincent.ficet-6ktuUTfB/bM@public.gmane.org>
> >
> > ---
> >
> > diff --git a/src/umad.c b/src/umad.c
> > index 45a9423..cac46a4 100644
> > --- a/src/umad.c
> > +++ b/src/umad.c
> > @@ -892,6 +892,7 @@ int umad_register_oui(int fd, int mgmt_class, uint8_t rmpp_version,
> >                return -EINVAL;
> >        }
> >
> > +       memset(&req, 0, sizeof(req));
> >        req.qpn = 1;
> >        req.mgmt_class = mgmt_class;
> >        req.mgmt_class_version = 1;
> > @@ -928,6 +929,7 @@ int umad_register(int fd, int mgmt_class, int mgmt_version,
> >            ("fd %d mgmt_class %u mgmt_version %u rmpp_version %d method_mask %p",
> >             fd, mgmt_class, mgmt_version, rmpp_version, method_mask);
> >
> > +       memset(&req, 0, sizeof(req));
> >        req.qpn = qp = (mgmt_class == 0x1 || mgmt_class == 0x81) ? 0 : 1;
> >        req.mgmt_class = mgmt_class;
> >        req.mgmt_class_version = mgmt_version;
> 
> A possible alternative approach is to develop a patch for Valgrind
> that makes Valgrind ignore padding fields and/or output fields in the
> pre-ioctl check. See also PRE(sys_ioctl) in source file
> coregrind/m_syswrap/syswrap-linux.c or the documentation file
> README_MISSING_SYSCALL_OR_IOCTL.

  Could be, but this is largely out of scope for me and I can live
with the warning knowing it's a false positive.

  Thanks,

  Sébastien.

> 
> Bart.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

      parent reply	other threads:[~2011-07-06  7:08 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-04  9:53 [PATCH] umad.c: memset() ib_user_mad_reg_req structure to 0 before invoking ioctl() sebastien dugue
2011-07-05 11:41 ` Hal Rosenstock
     [not found]   ` <4E12F85D.4010801-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2011-07-05 15:11     ` [PATCH] umad.c: memset() ib_user_mad_reg_req structure to 0 beforeinvoking ioctl() sebastien dugue
2011-07-05 18:17 ` [PATCH] umad.c: memset() ib_user_mad_reg_req structure to 0 before invoking ioctl() Bart Van Assche
     [not found]   ` <CAO+b5-pKPdJC20s7dL18b97fd778GoT4TJ_J13NwbkEFz6bz4w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-07-06  7:08     ` sebastien dugue [this message]

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=20110706090837.617de660@b012350-ux \
    --to=sebastien.dugue-6ktuutfb/bm@public.gmane.org \
    --cc=alexne-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
    --cc=bvanassche-HInyCGIudOg@public.gmane.org \
    --cc=hal-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org \
    --cc=jean-vincent.ficet-6ktuUTfB/bM@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /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