]> git.ipfire.org Git - thirdparty/wireguard-go.git/commitdiff
device: add ID to repeated routines
authorJason A. Donenfeld <Jason@zx2c4.com>
Fri, 7 May 2021 10:21:21 +0000 (12:21 +0200)
committerJason A. Donenfeld <Jason@zx2c4.com>
Fri, 7 May 2021 10:21:21 +0000 (12:21 +0200)
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
device/device.go
device/receive.go
device/send.go

index a635e687cdfe2b549cc2bb0e80d30288f6c92f16..86f519aa0c5b959eb84402ce13bcf0b9c11b58d3 100644 (file)
@@ -304,9 +304,9 @@ func NewDevice(tunDevice tun.Device, bind conn.Bind, logger *Logger) *Device {
        device.state.stopping.Wait()
        device.queue.encryption.wg.Add(cpus) // One for each RoutineHandshake
        for i := 0; i < cpus; i++ {
-               go device.RoutineEncryption()
-               go device.RoutineDecryption()
-               go device.RoutineHandshake()
+               go device.RoutineEncryption(i + 1)
+               go device.RoutineDecryption(i + 1)
+               go device.RoutineHandshake(i + 1)
        }
 
        device.state.stopping.Add(1)      // RoutineReadFromTUN
index 9f6b363dacf2b499856fa5d65a5b28d72e4d553f..11822464a94592fd247ba27ea781f4c74dc6741c 100644 (file)
@@ -98,7 +98,7 @@ func (device *Device) RoutineReceiveIncoming(recv conn.ReceiveFunc) {
                        if errors.Is(err, net.ErrClosed) {
                                return
                        }
-                       device.log.Verbosef("Routine: receive incoming %s - failed to receive packet: %v", recvName, err)
+                       device.log.Verbosef("Failed to receive %s packet: %v", recvName, err)
                        if neterr, ok := err.(net.Error); ok && !neterr.Temporary() {
                                return
                        }
@@ -203,11 +203,11 @@ func (device *Device) RoutineReceiveIncoming(recv conn.ReceiveFunc) {
        }
 }
 
-func (device *Device) RoutineDecryption() {
+func (device *Device) RoutineDecryption(id int) {
        var nonce [chacha20poly1305.NonceSize]byte
 
-       defer device.log.Verbosef("Routine: decryption worker - stopped")
-       device.log.Verbosef("Routine: decryption worker - started")
+       defer device.log.Verbosef("Routine: decryption worker %d - stopped", id)
+       device.log.Verbosef("Routine: decryption worker %d - started", id)
 
        for elem := range device.queue.decryption.c {
                // split message into fields
@@ -234,12 +234,12 @@ func (device *Device) RoutineDecryption() {
 
 /* Handles incoming packets related to handshake
  */
-func (device *Device) RoutineHandshake() {
+func (device *Device) RoutineHandshake(id int) {
        defer func() {
-               device.log.Verbosef("Routine: handshake worker - stopped")
+               device.log.Verbosef("Routine: handshake worker %d - stopped", id)
                device.queue.encryption.wg.Done()
        }()
-       device.log.Verbosef("Routine: handshake worker - started")
+       device.log.Verbosef("Routine: handshake worker %d - started", id)
 
        for elem := range device.queue.handshake.c {
 
index a437cf1239bda5a98097fe2d34dd1d6d8222abe3..e07df1baeec5886d3f53613a422a1d3eccf783b9 100644 (file)
@@ -362,12 +362,12 @@ func calculatePaddingSize(packetSize, mtu int) int {
  *
  * Obs. One instance per core
  */
-func (device *Device) RoutineEncryption() {
+func (device *Device) RoutineEncryption(id int) {
        var paddingZeros [PaddingMultiple]byte
        var nonce [chacha20poly1305.NonceSize]byte
 
-       defer device.log.Verbosef("Routine: encryption worker - stopped")
-       device.log.Verbosef("Routine: encryption worker - started")
+       defer device.log.Verbosef("Routine: encryption worker %d - stopped", id)
+       device.log.Verbosef("Routine: encryption worker %d - started", id)
 
        for elem := range device.queue.encryption.c {
                // populate header fields