fix(usbgadget): add lock for logWithSupression (#653)

This commit is contained in:
Aveline 2025-07-01 12:54:38 +02:00 committed by Siyuan
parent d25693e0d6
commit 660473aea2
2 changed files with 7 additions and 0 deletions

View File

@ -81,6 +81,7 @@ type UsbGadget struct {
log *zerolog.Logger
logSuppressionCounter map[string]int
logSuppressionLock sync.Mutex
}
const configFSPath = "/sys/kernel/config"

View File

@ -82,6 +82,9 @@ func compareFileContent(oldContent []byte, newContent []byte, looserMatch bool)
}
func (u *UsbGadget) logWithSupression(counterName string, every int, logger *zerolog.Logger, err error, msg string, args ...interface{}) {
u.logSuppressionLock.Lock()
defer u.logSuppressionLock.Unlock()
if _, ok := u.logSuppressionCounter[counterName]; !ok {
u.logSuppressionCounter[counterName] = 0
} else {
@ -100,6 +103,9 @@ func (u *UsbGadget) logWithSupression(counterName string, every int, logger *zer
}
func (u *UsbGadget) resetLogSuppressionCounter(counterName string) {
u.logSuppressionLock.Lock()
defer u.logSuppressionLock.Unlock()
if _, ok := u.logSuppressionCounter[counterName]; !ok {
u.logSuppressionCounter[counterName] = 0
}