From: Russell King <rmk@arm.linux.org.uk>
To: netdev@oss.sgi.com
Subject: [PATCH] Prevent "eth0: driver changed get_stats after register" lying
Date: Sat, 18 Oct 2003 21:46:22 +0100 [thread overview]
Message-ID: <20031018214622.B25375@flint.arm.linux.org.uk> (raw)
Hi,
There appears to be a race condition between netdev_register_sysfs
and hotplug. I'm seeing the message in the subject upon initialisation
of pcnet_cs.
We set "dev->last_stats" after we have registered the class device.
During class device registration, we trigger the hotplug scripts,
which can in turn bring up the interface. This in turn checks to
see if "dev->last_stats == dev->get_stats", and, since we haven't
set dev->last_stats yet, we complain.
Here is a patch against 2.6.0-test8 which moves the initialisation
of last_stats such that we avoid the race.
--- orig/net/core/net-sysfs.c Sat Oct 18 00:00:38 2003
+++ linux/net/core/net-sysfs.c Sat Oct 18 21:23:15 2003
@@ -408,6 +408,7 @@
class_dev->class = &net_class;
class_dev->class_data = net;
+ net->last_stats = net->get_stats;
strlcpy(class_dev->class_id, net->name, BUS_ID_SIZE);
if ((ret = class_device_register(class_dev)))
@@ -419,7 +420,6 @@
}
- net->last_stats = net->get_stats;
if (net->get_stats &&
(ret = sysfs_create_group(&class_dev->kobj, &netstat_group)))
goto out_unreg;
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
next reply other threads:[~2003-10-18 20:46 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-18 20:46 Russell King [this message]
2003-10-18 20:47 ` [PATCH] Prevent "eth0: driver changed get_stats after register" lying Russell King
2003-10-19 7:06 ` David S. Miller
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=20031018214622.B25375@flint.arm.linux.org.uk \
--to=rmk@arm.linux.org.uk \
--cc=netdev@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;
as well as URLs for NNTP newsgroup(s).