diff --git a/metropolis/pkg/tpm/eventlog/eventlog.go b/metropolis/pkg/tpm/eventlog/eventlog.go
index 036185a..dbfeae0 100644
--- a/metropolis/pkg/tpm/eventlog/eventlog.go
+++ b/metropolis/pkg/tpm/eventlog/eventlog.go
@@ -489,8 +489,8 @@
 	// TODO(ericchiang): Check errata? Or do we expect that to change in ways
 	// we're okay with?
 
-	specAlg := specAlgSize{}
-	e := specIDEvent{}
+	var specAlg specAlgSize
+	var e specIDEvent
 	for i := 0; i < int(header.NumAlgs); i++ {
 		if err := binary.Read(r, binary.LittleEndian, &specAlg); err != nil {
 			return nil, fmt.Errorf("reading algorithm: %v", err)
diff --git a/metropolis/pkg/tpm/eventlog/internal/events.go b/metropolis/pkg/tpm/eventlog/internal/events.go
index 3a719ab..eb121b2 100644
--- a/metropolis/pkg/tpm/eventlog/internal/events.go
+++ b/metropolis/pkg/tpm/eventlog/internal/events.go
@@ -275,7 +275,7 @@
 		// Being passed an empty signature list here appears to be valid
 		return nil, nil, nil
 	}
-	signatures := efiSignatureList{}
+	var signatures efiSignatureList
 	buf := bytes.NewReader(b)
 	var certificates []x509.Certificate
 	var hashes [][]byte
@@ -297,7 +297,7 @@
 		switch signatureType {
 		case certX509SigGUID: // X509 certificate
 			for sigOffset := 0; uint32(sigOffset) < signatures.Header.SignatureListSize-28; {
-				signature := efiSignatureData{}
+				var signature efiSignatureData
 				signature.SignatureData = make([]byte, signatures.Header.SignatureSize-16)
 				err := binary.Read(buf, binary.LittleEndian, &signature.SignatureOwner)
 				if err != nil {
@@ -316,7 +316,7 @@
 			}
 		case hashSHA256SigGUID: // SHA256
 			for sigOffset := 0; uint32(sigOffset) < signatures.Header.SignatureListSize-28; {
-				signature := efiSignatureData{}
+				var signature efiSignatureData
 				signature.SignatureData = make([]byte, signatures.Header.SignatureSize-16)
 				err := binary.Read(buf, binary.LittleEndian, &signature.SignatureOwner)
 				if err != nil {
@@ -375,7 +375,7 @@
 	}
 
 	buf := bytes.NewReader(b)
-	signature := EFISignatureData{}
+	var signature EFISignatureData
 	signature.SignatureData = make([]byte, len(b)-16)
 
 	if err := binary.Read(buf, binary.LittleEndian, &signature.SignatureOwner); err != nil {
