Hi Steve, On Sun, Jun 09, 2019 at 05:03:25PM -0500, Steve French wrote: > Probably harmless to change this code path (build_ntlmssp_auth_blob is > called at session negotiation time so shouldn't have much of a > performance impact). > > On the other hand if we can find optimizations in the encryption and > signing paths, that would be really helpful. There was a lot of > focus on encryption performance at SambaXP last week. > > Andreas from Redhat gave a talk on the improvements in Samba with TLS > implementation of AES-GCM. I added the cifs client implementation of > AES-GCM and notice it is now faster to encrypt packets than sign them > (performance is about 2 to 3 times faster now with GCM). > > On Sun, Jun 9, 2019 at 6:57 AM Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> wrote: > > > > The CIFS code uses the sync skcipher API to invoke the ecb(arc4) skcipher, > > of which only a single generic C code implementation exists. This means > > that going through all the trouble of using scatterlists etc buys us > > very little, and we're better off just invoking the arc4 library directly. This patch only changes RC4 encryption, and to be clear it actually *improves* the performance of the RC4 encryption, since it removes unnecessary abstractions. I'd really hope that people wouldn't care either way, though, since RC4 is insecure and should not be used. Also it seems that fs/cifs/ supports AES-CCM but not AES-GCM? /* pneg_ctxt->Ciphers[0] = SMB2_ENCRYPTION_AES128_GCM;*/ /* not supported yet */ pneg_ctxt->Ciphers[0] = SMB2_ENCRYPTION_AES128_CCM; AES-GCM is usually faster than AES-CCM, so if you want to improve performance, switching from CCM to GCM would do that. - Eric