On 25/03/2025 09:22, Herbert Xu wrote: > On Mon, Mar 24, 2025 at 11:04:56AM +0100, Harald Freudenberger wrote: >> >> that is the ikp bit in the s390_kmac_gr0 struct: > > Thank you Harald! > >> union s390_kmac_gr0 { >> unsigned long reg; >> struct { >> unsigned long : 48; >> unsigned long ikp : 1; >> unsigned long iimp : 1; >> unsigned long ccup : 1; > > I hope I don't have to worry about ccup and can just leave it > as zero during import, right? I've to do some further test to be 100% sure. This bit is an indicator, if the instruction has updated the hardware crypto counter for hmac or not. Normally, it should be initialized with 0 before the first instruction call and after the instruction call the flag indicates, if the counter has been updated or not. If the flag is 1, it should be 1 for the following calls, otherwise the hardware crypto counters show wrong statistics. I've no idea how to set the bit on import correctly, if parts of the hmac operation has been processed by another cipher implementation. Setting it to 0 means, the partial hmac operation is counters as a full operation. setting it to 1 would mean, that the operation after an import is not reflected in the statistics. -- Mit freundlichen Grüßen / Kind regards Holger Dengler -- IBM Systems, Linux on IBM Z Development dengler@xxxxxxxxxxxxx