Hi On Thu, Jun 13, 2019 at 10:26:38AM +0200, Lorenzo Bianconi wrote: > [...] > > > I looked at intel wifi drivers and this is handled by amsdu_size module > > parameter, supported values are 4k, 8k and 12k. RX allocation size and > > proper values in vht_cap & ht_cap are set accordingly. Assuming (some) > > mt76 HW and FW can handle bigger AMSDUs I think we should do similar > > thing. > > > > Otherwise looks for me, we just waste memory and have not needed code > > for no true reason. > > > > > space needed for skb_shared_info is 320B on a x86_64 device > > > > Uhh, I haven't expected that sk_shared_info() is that big, so indeed build_skb > > could not used and 128B copy fallback will be necessary. > > Hi Stanislaw, > > reviewing the original patch I think we can't trigger any IOMMU bug since the > usb buffer length is actually 2048 and not 2048 + skb_shared_info_size: I'm concerned about alignment and crossing pages boundaries. If you allocate via page_frag_alloc() buffers, except first one, will have 'not natural' alignment and every second will be spanned across two pages. Stanislaw