On Thu, Jul 16, 2009 at 11:05:40PM +0800, Shane Wang wrote: > > The following VMAC(AES) patch, ported from http://fastcrypto.org/vmac, > is used to support S3 memory integrity verification for Intel(R) Trusted > Execution Technology (for more about Intel(R) TXT patches, see > http://lkml.org/lkml/2009/6/22/578), since the VMAC algorithm is very > fast to MAC the memory during S3 sleep, compared with other MAC > algorithms. > > We request your feedback and suggestions. Thanks for your patch. Could you please follow the instructions in Documentation/SubmitChecklist and update the patch? As it is it's a bit of a pain to review. > +/* > + * Enable code tuned for 64-bit registers; otherwise tuned for 32-bit > + */ > +#ifndef VMAC_ARCH_64 > +#define VMAC_ARCH_64 (__x86_64__ || __ppc64__ || _M_X64) > +#endif If you really must have this then please use CONFIG_64BIT instead. > +/* > + * Native word reads. Update (or define via compiler) if incorrect > + */ > +#ifndef VMAC_ARCH_BIG_ENDIAN /* Assume big-endian unless on the list */ > +#define VMAC_ARCH_BIG_ENDIAN \ > + (!(__x86_64__ || __i386__ || _M_IX86 || \ > + _M_X64 || __ARMEL__ || __MIPSEL__)) > +#endif This is unnecessary. Please use the standard kernel helpers from asm/byteorder.h (which you get by including linux/kernel.h). > +#define UINT64_C(x) x##ULL > +const uint64_t p64 = UINT64_C(0xfffffffffffffeff); /* 2^64 - 257 > prime */ Please use u64 instead of uint64_t to be consistent with the current convention in crypto/. > +static struct crypto_instance *vmac_alloc(struct rtattr **tb) > +{ > + struct crypto_instance *inst; > + struct crypto_alg *alg; > + int err; > + > + err = crypto_check_attr_type(tb, CRYPTO_ALG_TYPE_HASH); > + if (err) > + return ERR_PTR(err); Please reimplement this as an SHASH algorithm. You can refer to the new hmac implementation in the current cryptodev tree as an example. Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html