]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
tools: ynl: ethtool: add --dbg-small-recv option
authorHangbin Liu <liuhangbin@gmail.com>
Wed, 8 Apr 2026 07:08:51 +0000 (15:08 +0800)
committerJakub Kicinski <kuba@kernel.org>
Sun, 12 Apr 2026 18:23:49 +0000 (11:23 -0700)
Add a --dbg-small-recv debug option to control the recv() buffer size
used by YNL, matching the same option already present in cli.py. This
is useful if user need to get large netlink message.

Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://patch.msgid.link/20260408-b4-ynl_ethtool-v2-3-7623a5e8f70b@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/net/ynl/tests/ethtool.py

index 63854d21818c0cba5abc6cd9f4385505f26b91af..db3b62c652e77fe2d54e7a3a634c60a4e5b3ed92 100755 (executable)
@@ -166,12 +166,19 @@ def main():
     parser.add_argument('device', metavar='device', type=str)
     parser.add_argument('args', metavar='args', type=str, nargs='*')
 
+    dbg_group = parser.add_argument_group('Debug options')
+    dbg_group.add_argument('--dbg-small-recv', default=0, const=4000,
+                           action='store', nargs='?', type=int, metavar='INT',
+                           help="Length of buffers used for recv()")
+
     args = parser.parse_args()
 
     spec = os.path.join(spec_dir(), 'ethtool.yaml')
     schema = os.path.join(schema_dir(), 'genetlink-legacy.yaml')
 
-    ynl = YnlFamily(spec, schema)
+    ynl = YnlFamily(spec, schema, recv_size=args.dbg_small_recv)
+    if args.dbg_small_recv:
+        ynl.set_recv_dbg(True)
 
     if args.set_priv_flags:
         # TODO: parse the bitmask