Skip to content

Commit 368cc14

Browse files
fix
fix Signed-off-by: 张浩宇 <zhanghaoyu.zhy@bytedance.com>
1 parent 1030904 commit 368cc14

1 file changed

Lines changed: 52 additions & 0 deletions

File tree

pkg/agent/qrm-plugins/cpu/dynamicpolicy/irqtuner/controller/controller_linux_test.go

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ import (
2727
. "github.com/bytedance/mockey"
2828
. "github.com/smartystreets/goconvey/convey"
2929

30+
"github.com/kubewharf/katalyst-core/pkg/agent/qrm-plugins/cpu/dynamicpolicy/irqtuner/config"
31+
"github.com/kubewharf/katalyst-core/pkg/metrics"
3032
"github.com/kubewharf/katalyst-core/pkg/util/machine"
3133
)
3234

@@ -109,6 +111,56 @@ func Test_clearNicXPS(t *testing.T) {
109111
})
110112
}
111113

114+
func Test_tuneNicsXPS(t *testing.T) {
115+
t.Parallel()
116+
PatchConvey("Test_tuneNicsXPS", t, func() {
117+
ic := &IrqTuningController{
118+
conf: &config.IrqTuningConfig{
119+
DisableXPS: true,
120+
},
121+
Nics: []*NicIrqTuningManager{
122+
{
123+
NicInfo: &NicInfo{
124+
NicBasicInfo: &machine.NicBasicInfo{
125+
InterfaceInfo: machine.InterfaceInfo{
126+
Name: "eth0",
127+
},
128+
Irq2Queue: map[int]int{
129+
100: 0,
130+
},
131+
Queue2Irq: map[int]int{
132+
0: 100,
133+
},
134+
QueueNum: 1,
135+
},
136+
Irq2Core: map[int]int64{
137+
100: 2,
138+
},
139+
SocketIrqCores: map[int][]int64{
140+
0: {2},
141+
},
142+
},
143+
},
144+
},
145+
}
146+
147+
PatchConvey("Scenario 1: clear NIC XPS successfully", func() {
148+
Mock((*IrqTuningController).clearNicXPS).Return(nil).Build()
149+
150+
ic.tuneNicsXPS()
151+
})
152+
153+
PatchConvey("Scenario 2: clear NIC XPS failed", func() {
154+
expectedErr := errors.New("failed to clearNicXPS")
155+
Mock((*IrqTuningController).clearNicXPS).Return(expectedErr).Build()
156+
Mock((*IrqTuningController).emitErrMetric).To(func(reason string, level int64, tags ...metrics.MetricTag) {
157+
}).Build()
158+
159+
ic.tuneNicsXPS()
160+
})
161+
})
162+
}
163+
112164
func Test_clearRPSForNic(t *testing.T) {
113165
t.Parallel()
114166
PatchConvey("Test_clearRPSForNic", t, func() {

0 commit comments

Comments
 (0)