Re: [RFC bpf-next v4 3/6] bpf: Remove an unnecessary check.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2/2/24 16:46, Martin KaFai Lau wrote:
On 2/2/24 2:05 PM, thinker.li@xxxxxxxxx wrote:
From: Kui-Feng Lee <thinker.li@xxxxxxxxx>

The "i" here is always equal to "btf_type_vlen(t)" since
the "for_each_member()" loop never breaks.

It can be separated from the PTR_MAYBE_NULL support set. Please post this as its own patch without the RFC.

Sure!

Signed-off-by: Kui-Feng Lee <thinker.li@xxxxxxxxx>
---
  kernel/bpf/bpf_struct_ops.c | 21 +++++++++------------
  1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/kernel/bpf/bpf_struct_ops.c b/kernel/bpf/bpf_struct_ops.c
index 0decd862dfe0..f98f580de77a 100644
--- a/kernel/bpf/bpf_struct_ops.c
+++ b/kernel/bpf/bpf_struct_ops.c
@@ -189,20 +189,17 @@ int bpf_struct_ops_desc_init(struct bpf_struct_ops_desc *st_ops_desc,
          }
      }
-    if (i == btf_type_vlen(t)) {
-        if (st_ops->init(btf)) {
-            pr_warn("Error in init bpf_struct_ops %s\n",
-                st_ops->name);
-            return -EINVAL;
-        } else {
-            st_ops_desc->type_id = type_id;
-            st_ops_desc->type = t;
-            st_ops_desc->value_id = value_id;
-            st_ops_desc->value_type = btf_type_by_id(btf,
-                                 value_id);
-        }
+    if (st_ops->init(btf)) {
+        pr_warn("Error in init bpf_struct_ops %s\n",
+            st_ops->name);
+        return -EINVAL;
      }
+    st_ops_desc->type_id = type_id;
+    st_ops_desc->type = t;
+    st_ops_desc->value_id = value_id;
+    st_ops_desc->value_type = btf_type_by_id(btf, value_id);
+
      return 0;
  }





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux