13330 SMB read hangs on Mac Big Sur

Review Request #2579 — Created Nov. 24, 2020 and updated

gwr
illumos-gate
13330
general

13330 SMB read hangs on Mac Big Sur
(See the bug.)

Andy Fiddaman verified that this fixed the problem he saw.

  • 0
  • 0
  • 0
  • 1
  • 1
Description From Last Updated
rm
  1. Thanks for putting this together!

  2. 
      
pmooney
  1. 
      
  2. Will this check actually trigger under the described conditions, considering the clamp of MinCount above at lines 99-100?

    1. The clamp only makes it so that the client doesn't receive EOF if it requests a MinimumCount greater than the Length it requested to read (which would always return EOF without the clamp). The spec is silent on whether that's allowable, but I'm not sure it makes much sense to send a request with MinimumCount > Length. In the problematic case identified, MinimumCount < Length. This check will still return EOF if the underlying FS returns fewer than "Length" bytes, and the number returned is less than MinimumCount - which appears to be the primary use.

    2. In short, yes, the check does trigger.

  3. 
      
pwinder
  1. Ship It!
  2. 
      
citrus
  1. Ship It!
  2. 
      
mbarden
  1. Ship It!
  2. 
      
citrus
  1. 
      
  2. I've also now tested this fix on a server that acts as a timemachine backup target

       sudo tmutil setdestination smb://<user>:<password>@server/share
       tmutil startbackup
    

    and it was successful whereas before it entered the looping behaviour.

  3. 
      
Loading...