diff --git a/pkg/endpoint/policy.go b/pkg/endpoint/policy.go
index <HASH>..<HASH> 100644
--- a/pkg/endpoint/policy.go
+++ b/pkg/endpoint/policy.go
@@ -646,12 +646,8 @@ func (e *Endpoint) TriggerPolicyUpdatesLocked(owner Owner, opts models.Configura
 // Caller triggers policy regeneration if needed.
 // Called with e.Mutex Locked
 func (e *Endpoint) SetIdentity(owner Owner, id *policy.Identity) {
-	repo := owner.GetPolicyRepository()
 	cache := policy.GetConsumableCache()
 
-	repo.Mutex.Lock()
-	defer repo.Mutex.Unlock()
-
 	if e.Consumable != nil {
 		if e.SecLabel != nil && id.ID == e.Consumable.ID {
 			// Even if the numeric identity is the same, the order in which the
endpoint: Do not take repo mutex when setting identity.

Policy repository is not used when changing the identity, so do not lock it.

Earlier we used Consumable's labels without locking, so taking a write
lock excluded policy regeneration while labels were changed. This is
no longer needed.