From: Ben Hutchings <bhutchings@solarflare.com>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: <linville@tuxdriver.com>, <linux-wireless@vger.kernel.org>,
<netdev@vger.kernel.org>, Stable <stable@vger.kernel.org>
Subject: Re: [PATCH] rtlwifi: rtl8192cu: Fix NULL dereference BUG when using new_id
Date: Wed, 6 Feb 2013 01:16:22 +0000 [thread overview]
Message-ID: <1360113382.2857.48.camel@bwh-desktop.uk.solarflarecom.com> (raw)
In-Reply-To: <5111A766.70006@lwfinger.net>
On Tue, 2013-02-05 at 18:44 -0600, Larry Finger wrote:
> On 02/05/2013 06:18 PM, Ben Hutchings wrote:
> > On Tue, 2013-02-05 at 18:00 -0600, Larry Finger wrote:
> >> When the new_id entry is used for a foreign USB device, rtlwifi BUGS with
> >> a NULL pointer dereference.
> > [...]
> >
> > So set no_dynamic_id in the usb_driver structures.
> >
> > (But I wonder why USB behaves differently from PCI, which requires that
> > the dynamic ID's driver_data value (defaulting to 0) matches a value
> > used in a static ID entry.)
>
> I don't know why USB differs from PCI, but we do need the dynamic ID here as
> there are always new IDs being issued. One of the criteria for adding the ID to
> the table is that it works OK with dynamic addition. These devices are
> frequently reported by users that do not have the skills to build their own kernel.
But since there is no way to set the driver_info for a new USB ID
(again, unlike PCI), your change will reject all dynamic IDs. (And in
any case, if the USB core were changed to allow setting driver_info,
userland would have difficulty providing a valid pointer!)
It looks like the driver_info is really driver-specific data used to
share a probe function between multiple drivers. But you could add
per-driver probe functions that pass the correct rtl_hal_cfg as an extra
argument to rtl_usb_probe(), and then dynamic IDs should work.
Ben.
--
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
next prev parent reply other threads:[~2013-02-06 1:16 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-06 0:00 [PATCH] rtlwifi: rtl8192cu: Fix NULL dereference BUG when using new_id Larry Finger
2013-02-06 0:18 ` Ben Hutchings
2013-02-06 0:44 ` Larry Finger
2013-02-06 1:16 ` Ben Hutchings [this message]
[not found] ` <1360113382.2857.48.camel-/LGg1Z1CJKReKY3V0RtoKmatzQS1i7+A3tAM5lWOD0I@public.gmane.org>
2013-02-06 9:01 ` Johannes Berg
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=1360113382.2857.48.camel@bwh-desktop.uk.solarflarecom.com \
--to=bhutchings@solarflare.com \
--cc=Larry.Finger@lwfinger.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=netdev@vger.kernel.org \
--cc=stable@vger.kernel.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