Skip to content

Commit 8888295

Browse files
author
Nikita Zakirov
committed
fix style and a note from the pr
Signed-off-by: Nikita Zakirov <[email protected]>
1 parent d8cecad commit 8888295

File tree

1 file changed

+30
-25
lines changed

1 file changed

+30
-25
lines changed

src/vmm/src/devices/virtio/net/device.rs

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ use crate::devices::virtio::device::{DeviceState, IrqTrigger, IrqType, VirtioDev
2424
use crate::devices::virtio::gen::virtio_blk::VIRTIO_F_VERSION_1;
2525
use crate::devices::virtio::gen::virtio_net::{
2626
virtio_net_hdr_v1, VIRTIO_NET_F_CSUM, VIRTIO_NET_F_GUEST_CSUM, VIRTIO_NET_F_GUEST_TSO4,
27-
VIRTIO_NET_F_GUEST_TSO6, VIRTIO_NET_F_GUEST_UFO, VIRTIO_NET_F_HOST_TSO4, VIRTIO_NET_F_HOST_UFO, VIRTIO_NET_F_MAC,
27+
VIRTIO_NET_F_GUEST_TSO6, VIRTIO_NET_F_GUEST_UFO, VIRTIO_NET_F_HOST_TSO4, VIRTIO_NET_F_HOST_UFO,
28+
VIRTIO_NET_F_MAC,
2829
};
2930
use crate::devices::virtio::gen::virtio_ring::VIRTIO_RING_F_EVENT_IDX;
3031
use crate::devices::virtio::iovec::IoVecBuffer;
@@ -641,12 +642,12 @@ impl Net {
641642
}
642643
}
643644

644-
fn build_tap_supported_features(desired_flags: Vec<(u32, u32)>, supported_features: u64) -> u32 {
645-
let mut answer : u32 = 0;
645+
fn build_tap_supported_features(desired_flags: &[(u32, u32)], supported_features: u64) -> u32 {
646+
let mut answer: u32 = 0;
646647

647-
for i in 0..desired_flags.len() {
648-
if (supported_features & 1 << desired_flags[i].1) != 0 {
649-
answer |= desired_flags[i].0
648+
for (tap_flag, net_flag) in desired_flags.iter() {
649+
if (supported_features & 1 << net_flag) != 0 {
650+
answer |= tap_flag;
650651
}
651652
}
652653

@@ -868,14 +869,15 @@ impl VirtioDevice for Net {
868869
}
869870
}
870871

871-
let desired_flags = vec![
872+
let desired_flags = [
872873
(gen::TUN_F_CSUM, VIRTIO_NET_F_CSUM),
873874
(gen::TUN_F_UFO, VIRTIO_NET_F_GUEST_UFO),
874875
(gen::TUN_F_TSO4, VIRTIO_NET_F_GUEST_TSO4),
875-
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6)
876+
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6),
876877
];
877878

878-
let supported_flags = Net::build_tap_supported_features(desired_flags, self.acked_features());
879+
let supported_flags =
880+
Net::build_tap_supported_features(&desired_flags, self.acked_features());
879881
if self.tap.set_offload(supported_flags).is_err() {
880882
return Err(super::super::ActivateError::TapSetOffload);
881883
}
@@ -1022,63 +1024,66 @@ pub mod tests {
10221024
// We can't get offload features, that were set up to a TAP device by ioctl,
10231025
// hence that we have to validate, that we sort out unsupported features correctly
10241026
fn test_build_tap_supported_features_all() {
1025-
let desired_features = vec![
1027+
let desired_features = [
10261028
(gen::TUN_F_CSUM, VIRTIO_NET_F_CSUM),
10271029
(gen::TUN_F_UFO, VIRTIO_NET_F_GUEST_UFO),
10281030
(gen::TUN_F_TSO4, VIRTIO_NET_F_GUEST_TSO4),
1029-
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6)
1031+
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6),
10301032
];
10311033

1032-
let mut tap_features : u32 = 0;
1033-
let mut ack_features : u32 = 0;
1034+
let mut tap_features: u32 = 0;
1035+
let mut ack_features: u32 = 0;
10341036

1035-
for i in 0.. desired_features.len() {
1037+
for i in 0..desired_features.len() {
10361038
tap_features |= desired_features[i].0;
10371039
ack_features |= 1 << desired_features[i].1;
10381040
}
10391041

1040-
let supported_flags = Net::build_tap_supported_features(desired_features, ack_features as u64);
1042+
let supported_flags =
1043+
Net::build_tap_supported_features(&desired_features, ack_features as u64);
10411044

10421045
assert_eq!(supported_flags, tap_features);
10431046
}
10441047

10451048
#[test]
10461049
fn test_build_tap_supported_features_ack_les_than_want() {
1047-
let desired_features = vec![
1050+
let desired_features = [
10481051
(gen::TUN_F_CSUM, VIRTIO_NET_F_CSUM),
10491052
(gen::TUN_F_UFO, VIRTIO_NET_F_GUEST_UFO),
10501053
(gen::TUN_F_TSO4, VIRTIO_NET_F_GUEST_TSO4),
1051-
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6)
1054+
(gen::TUN_F_TSO6, VIRTIO_NET_F_GUEST_TSO6),
10521055
];
10531056

1054-
let tap_features : u32 = gen::TUN_F_CSUM | gen::TUN_F_UFO;
1055-
let ack_features : u32 = 1 << VIRTIO_NET_F_CSUM | 1 << VIRTIO_NET_F_GUEST_UFO;
1057+
let tap_features: u32 = gen::TUN_F_CSUM | gen::TUN_F_UFO;
1058+
let ack_features: u32 = 1 << VIRTIO_NET_F_CSUM | 1 << VIRTIO_NET_F_GUEST_UFO;
10561059

1057-
let supported_flags = Net::build_tap_supported_features(desired_features, ack_features as u64);
1060+
let supported_flags =
1061+
Net::build_tap_supported_features(&desired_features, ack_features as u64);
10581062

10591063
assert_eq!(supported_flags, tap_features);
10601064
}
10611065

10621066
#[test]
10631067
fn test_build_tap_supported_features_ack_more_than_want() {
1064-
let desired_features = vec![
1068+
let desired_features = [
10651069
(gen::TUN_F_CSUM, VIRTIO_NET_F_CSUM),
10661070
(gen::TUN_F_UFO, VIRTIO_NET_F_GUEST_UFO),
10671071
(gen::TUN_F_TSO4, VIRTIO_NET_F_GUEST_TSO4),
10681072
];
10691073

1070-
let mut tap_features : u32 = 0;
1071-
let mut ack_features : u32 = 0;
1074+
let mut tap_features: u32 = 0;
1075+
let mut ack_features: u32 = 0;
10721076

1073-
for i in 0.. desired_features.len() {
1077+
for i in 0..desired_features.len() {
10741078
tap_features |= desired_features[i].0;
10751079
ack_features |= 1 << desired_features[i].1;
10761080
}
10771081

10781082
// extra supported feature
10791083
ack_features |= 1 << VIRTIO_NET_F_GUEST_TSO6;
10801084

1081-
let supported_flags = Net::build_tap_supported_features(desired_features, ack_features as u64);
1085+
let supported_flags =
1086+
Net::build_tap_supported_features(&desired_features, ack_features as u64);
10821087

10831088
assert_eq!(supported_flags, tap_features);
10841089
}

0 commit comments

Comments
 (0)