All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Norris <briannorris@chromium.org>
To: Nicolas Boichat <drinkcat@chromium.org>
Cc: Pi-Hsun Shih <pihsun@chromium.org>,
	open list <linux-kernel@vger.kernel.org>,
	linux-wireless@vger.kernel.org
Subject: Re: [PATCH] wireless: Use offsetof instead of custom macro.
Date: Wed, 27 Nov 2019 15:39:58 -0800	[thread overview]
Message-ID: <20191127233957.GA217817@google.com> (raw)
In-Reply-To: <CANMq1KCwcVawg6L1hTKXBgBi66EKdHQrvxr_chR9Kv1ifFREnA@mail.gmail.com>

+ linux-wireless

[Top-posting because the important stuff is up here, and the rest is
missing from linux-wireless]

Hey Pi-Hsun, Nicolas: you failed to copy linux-wireless, so no one's
going to pick this patch up. Please re-send if you care.

Regards,
Brian

On Thu, May 02, 2019 at 03:56:33PM +0800, Nicolas Boichat wrote:
> On Thu, Apr 18, 2019 at 3:50 PM Pi-Hsun Shih <pihsun@chromium.org> wrote:
> >
> > Use offsetof to calculate offset of a field to take advantage of
> > compiler built-in version when possible, and avoid UBSAN warning when
> > compiling with Clang:
> >
> > ==================================================================
> > UBSAN: Undefined behaviour in net/wireless/wext-core.c:525:14
> > member access within null pointer of type 'struct iw_point'
> > CPU: 3 PID: 165 Comm: kworker/u16:3 Tainted: G S      W         4.19.23 #43
> > Workqueue: cfg80211 __cfg80211_scan_done [cfg80211]
> > Call trace:
> >  dump_backtrace+0x0/0x194
> >  show_stack+0x20/0x2c
> >  __dump_stack+0x20/0x28
> >  dump_stack+0x70/0x94
> >  ubsan_epilogue+0x14/0x44
> >  ubsan_type_mismatch_common+0xf4/0xfc
> >  __ubsan_handle_type_mismatch_v1+0x34/0x54
> >  wireless_send_event+0x3cc/0x470
> >  ___cfg80211_scan_done+0x13c/0x220 [cfg80211]
> >  __cfg80211_scan_done+0x28/0x34 [cfg80211]
> >  process_one_work+0x170/0x35c
> >  worker_thread+0x254/0x380
> >  kthread+0x13c/0x158
> >  ret_from_fork+0x10/0x18
> > ===================================================================
> >
> > Signed-off-by: Pi-Hsun Shih <pihsun@chromium.org>
> 
> The warning from clang is spurious, but in another case, we felt that
> the cleanup was worth it, nevertheless
> (https://lore.kernel.org/patchwork/patch/1050040/).
> 
> Reviewed-By: Nicolas Boichat <drinkcat@chromium.org>
> 
> > ---
> >  include/uapi/linux/wireless.h | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/include/uapi/linux/wireless.h b/include/uapi/linux/wireless.h
> > index 86eca3208b6b..f259cca5cc2b 100644
> > --- a/include/uapi/linux/wireless.h
> > +++ b/include/uapi/linux/wireless.h
> > @@ -1090,8 +1090,7 @@ struct iw_event {
> >  /* iw_point events are special. First, the payload (extra data) come at
> >   * the end of the event, so they are bigger than IW_EV_POINT_LEN. Second,
> >   * we omit the pointer, so start at an offset. */
> > -#define IW_EV_POINT_OFF (((char *) &(((struct iw_point *) NULL)->length)) - \
> > -                         (char *) NULL)
> > +#define IW_EV_POINT_OFF offsetof(struct iw_point, length)
> >  #define IW_EV_POINT_LEN        (IW_EV_LCP_LEN + sizeof(struct iw_point) - \
> >                          IW_EV_POINT_OFF)
> >
> > --
> > 2.21.0.392.gf8f6787159e-goog
> >

      reply	other threads:[~2019-11-27 23:40 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-18  7:50 [PATCH] wireless: Use offsetof instead of custom macro Pi-Hsun Shih
2019-05-02  7:56 ` Nicolas Boichat
2019-11-27 23:39   ` Brian Norris [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=20191127233957.GA217817@google.com \
    --to=briannorris@chromium.org \
    --cc=drinkcat@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=pihsun@chromium.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.