On Tuesday 12 of July 2011 09:36:06 Jean Delvare wrote: > On Mon, 11 Jul 2011 23:50:38 +0200, Pavel Herrmann wrote: > > spi_sync call uses its spi_message parameter to keep completion > > information, using a drvdata structure is not thread-safe, potentially > > causing one thread having pointers to memory on or above other threads > > stack. use mutex to prevent multiple access > > Honestly, I have no idea what "causing one thread having pointers to > memory on or above other threads stack" means (nor why this would be > bad.)
the long-winded story is that thread A writes a pointer onto its stack into the drvdata as part of spi_sync call, then thread B comes in and puts a pointer onto its stack into the drvdata, at the end of spi_sync thread A uses this pointer (assuming it is unchanged), which is pointing either onto valid stack of thread B or somewhere above it (if thread B already returned) > Patch applied nevertheless, as it fixes an actual bug which should be > fixed ASAP. Thanks for your contribution. thanks _______________________________________________ Zaurus-devel mailing list Zaurus-devel@lists.linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/zaurus-devel