• Bjørn Mork's avatar
    net: cdc_mbim: send ZLP only for the specific buggy device · 844e88f0
    Bjørn Mork authored
    Reverting 328d7b8a and instead adding an exception for the
    Sierra Wireless MC7710.
    
    commit 328d7b8a (net: cdc_mbim: send ZLP after max sized NTBs)
    added a workaround for an issue observed on one specific device.
    Concerns were raised that this workaround adds a performance
    penalty to all devices based on questionable, if not buggy,
    behaviour of a single device:
    
     "If you add ZLP for NTBs of dwNtbOutMaxSize, you are heavily affecting CPU
      load, increasing interrupt load by factor of 2 in high load traffic
      scenario and possibly decreasing throughput for all other devices
      which behaves correctly."
    
     "The idea of NCM was to avoid extra ZLPs. If your transfer is exactly
      dwNtbOutMaxSize, it's known, you can submit such request on the receiver
      side and you do not need any EOT indicatation, so the frametime can be
      used for useful data."
    
    Adding a device specific exception to prevent the workaround from
    affecting well behaved devices.
    
    The assumption here is that needing a ZLP is truly an *exception*.
    We do not yet have enough data to verify this.  The generic
    workaround in commit 328d7b8a should be considered acceptable despite
    the performance penalty if the exception list becomes a maintainance
    hassle.
    
    Cc: Alexey ORISHKO <alexey.orishko@stericsson.com>
    Cc: Yauheni Kaliuta <y.kaliuta@gmail.com>
    Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    844e88f0
cdc_mbim.c 11 KB