There is a race from when a device is created with device_create() and then the drvdata is set with a call to dev_set_drvdata() in which a sysfs file could be open, yet the drvdata will be NULL, causing all sorts of bad things to happen. This patch fixes the problem by using the new function, device_create_drvdata(). Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/usb/core/hcd.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c index bf10e9c..09a53e7 100644 --- a/drivers/usb/core/hcd.c +++ b/drivers/usb/core/hcd.c @@ -818,12 +818,12 @@ static int usb_register_bus(struct usb_bus *bus) set_bit (busnum, busmap.busmap); bus->busnum = busnum; - bus->dev = device_create(usb_host_class, bus->controller, MKDEV(0, 0), - "usb_host%d", busnum); + bus->dev = device_create_drvdata(usb_host_class, bus->controller, + MKDEV(0, 0), bus, + "usb_host%d", busnum); result = PTR_ERR(bus->dev); if (IS_ERR(bus->dev)) goto error_create_class_dev; - dev_set_drvdata(bus->dev, bus); /* Add it to the local list of buses */ list_add (&bus->bus_list, &usb_bus_list); -- 1.5.5.1 --
| Dmitry Torokhov | 2.6.27-rc8+ - first impressions |
| Linus Torvalds | Linux 2.6.27-rc8 |
| Nick Piggin | [patch 3/6] mm: fix fault vs invalidate race for linear mappings |
| Alan Cox | [PATCH 00/76] Queued TTY Patches |
git: | |
| Petr Baudis | [FYI][PATCH] Customizing the WinGit installer |
| Pierre Habouzit | Re: git push (mis ?)behavior |
| Mark Levedahl | Allowing override of the default "origin" nickname |
| Junio C Hamano | [PATCH] Detached HEAD (experimental) |
| Richard Stallman | Real men don't attack straw men |
| Luca Dell'Oca | Authenticate squid in Active Directory |
| Leon Dippenaar | New tcp stack attack |
| Nuno Magalhães | Can't scp, ssh is slow to authenticate. |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| KOSAKI Motohiro | [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| Andi Kleen | Re: [PATCH] Disable TSO for non standard qdiscs |
| Alexey Dobriyan | [PATCH 01/33] nf_conntrack_sip: de-static helper pointers |
