>> > > > From: Johannes Berg <johannes.berg@xxxxxxxxx> >> > > > >> > > > The ICT code erroneously uses PAGE_SIZE. The bug >> > > > is that PAGE_SIZE isn't necessarily 4096, so on >> > > > such platforms this code will not work correctly >> > > > as we'll try to attempt to read an index in the >> > > > table that the device never wrote, it always has >> > > > 4096-byte pages. >> > > > >> > > > Additionally, the manual alignment code here is >> > > > unnecessary -- Documentation/DMA-API-HOWTO.txt >> > > > states: >> > > > The cpu return address and the DMA bus master address are both >> > > > guaranteed to be aligned to the smallest PAGE_SIZE order which >> > > > is greater than or equal to the requested size. This invariant >> > > > exists (for example) to guarantee that if you allocate a chunk >> > > > which is smaller than or equal to 64 kilobytes, the extent of the >> > > > buffer you receive will not cross a 64K boundary. >> > > > >> > > > Just use appropriate new constants and get rid of >> > > > the alignment code. >> > > > >> > > > Cc: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx> >> > > > Cc: stable@xxxxxxxxxxxxxxx >> > > > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> >> > > > Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@xxxxxxxxx> >> > > >> > > This seems like a big patch. It is a bit late in the release cycle >> > > to rewrite all the DMA allocation code. :-) >> > > >> > > What platforms does this affect? Are there actual users involved? >> > >> > I understand the patch is bigger than the regular patch should be >> > generated for stable kernel. Johannes can explain better, but he is on >> > vacation. as what I understood, he work with community user who >> > encounter issue and root cause it is PAGE SIZE cause the problem. >> > >> > Thanks >> > Wey >> >> Unless someone screams, I'd be a lot more comfortable saving this >> for 3.3. > unless Johannes has objection, I am ok for 3.3, it is not something > people will encounter everyday on common platform.. > Please note that this patch has two parts: one does the real stuff (very small), and the other removes unneeded DAM alignment code (big part). I guess it can wait to 3.3 and the small part will then be posted to stable. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html