-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
there's an SMP memory ordering issue with usb_get/set_intfdata.
If a CPU reorders writes, another CPU may use usb_get_intfdata
to get a pointer which is uninitialised because the initialising CPU
has not yet written the data.
This problem is not confined to USB, so I tackled it at the root.
Comments?
Regards
Oliver
Signed-off-By: Oliver Neukum <[EMAIL PROTECTED]>
You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.
===================================================================
[EMAIL PROTECTED], 2004-06-19 22:16:04+02:00, [EMAIL PROTECTED]
- make sure data structures pointed to are ready
device.h | 2 ++
1 files changed, 2 insertions(+)
diff -Nru a/include/linux/device.h b/include/linux/device.h
- --- a/include/linux/device.h Sat Jun 19 22:38:51 2004
+++ b/include/linux/device.h Sat Jun 19 22:38:51 2004
@@ -202,6 +202,7 @@
static inline void
class_set_devdata (struct class_device *dev, void *data)
{
+ smp_wmb();
dev->class_data = data;
}
@@ -310,6 +311,7 @@
static inline void
dev_set_drvdata (struct device *dev, void *data)
{
+ smp_wmb();
dev->driver_data = data;
}
===================================================================
This BitKeeper patch contains the following changesets:
1.1758
## Wrapped with gzip_uu ##
begin 664 bkpatch26572
M'XL(`%NDU$```\V4;VO;,!#&7T>?XJ!O-DKLDVS)?T9&MFZL98.%;'TUQE`L
MM3&U+6/):0O^\),3FM*1A6UL,[EMAIL PROTECTED]'<[EMAIL PROTECTED],"YL<X?
M=6,:':Q-K:NRZ>\"TUW[Y-(8GPS'<&BJJF3AYTYK&[EMAIL PROTECTED];2%6OP6C:?
MT"#:1]Q]J_/)\NV[RP^OEH3,9G"VELVU_J0=S&;$F6XC*V7GTJTKTP2NDXVM
MM9-!8>IA7SHP1.9O3I,([EMAIL PROTECTED]"JHHE3'5"EF<BIAT2O5-)=NYL:H:>__R
MH/_UJ5:,@F9([EMAIL PROTECTED],@;H`%->`H8ARA"[EMAIL PROTECTED](<D38.34_Y!"<
[EMAIL PROTECTED]>0U_=YHS4L`4:GFCP?:=!B6=!.NZOG#^:*$U9>.T\E\%Z=.=ENJ>O(<(
M8QZ1Q://9/J;%R$HD;[EMAIL PROTECTED];<$W(5*;\K"F[(?C$4\I7ZP)$O9
MX)U>I5)JK5;\2G)YS,HCPMN=^;=`],*<9EN:#M>/:/VC[A^1;=LB2S!X8.UH
MZYQRWSAEOG4NTF2'&\,GM*&G#7^%-O8?T;;;Q$>8=K?;Q].S^,E2_H##"X8Q
K4#*Q=?OMMEX]>_Z"7$24_1#:_VR*M2YN;%_/LJLHXP4B^0[*]B%#Z`0`````
`
end
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFA1KaJbuJ1a+1Sn8oRAgc6AKDFo5sq5BSbiJ+O3I3zfLoAeQKpQwCg5ISr
wNsVyp6K8bBPq1NBtj+fUvg=
=HyNA
-----END PGP SIGNATURE-----
-------------------------------------------------------
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel