From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A1E243446CA for ; Fri, 21 Nov 2025 17:45:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763747124; cv=none; b=C0RADoI4noF/0KswiUksV1kfMRpsYhU8Gh9NN2J0TI3PArAHyne+Vh6/WJUNmgU8gjwXWupoGshAtWDAuo9241hSwRm7y4Whzsg1Mv+ZqHFq9t5w/ENUZllJknfjq9LiwuU2Dneh1hpZk+crzX0mh9yQ9EP2mFyYLgxOYh2jbKU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763747124; c=relaxed/simple; bh=1wRpDQF+PYc0CZ0e9+rmq3caZaUgiXV5uRUf2X8d4Ew=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=HdMlCaueDUlkLby9W+GgLJ1cSxvyLKPqZtroOGcVZeTy/sSleMP1z1/AqQvRYr6/UzY3B0e3+yoj25om8WwnpkxUgs31/EgSsESeZo0toNFfC+6+YnOvtJSWmIPVUNotqUjx8Mbi/hHkKDlLAdUOqVTTIrgcrDCbyB3GctULbwI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=SAsc1lKC; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=bMhHMgFq; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="SAsc1lKC"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="bMhHMgFq" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763747121; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=iPUxsCB68OtlQ4ZU2Anvk/LjkstuSN+yLG3TCw1aX4g=; b=SAsc1lKCBN8fBSNtiYXO5ARwrK6dMmWZf/2AUdJngRbJtozAglzhrfIVXJUTE4SeofceSy zLScMXNUvKorWc9257Ha8SKL5txjnJ3BJ3N7UTa2FXmTAhgh2KShiJupaFxOMqcfFL4VGv eUSqEgoYPEgmGvhuu46QtgTgINgZFNY= Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-622-m84D_AKTPH6bD64hXJBGEg-1; Fri, 21 Nov 2025 12:45:20 -0500 X-MC-Unique: m84D_AKTPH6bD64hXJBGEg-1 X-Mimecast-MFC-AGG-ID: m84D_AKTPH6bD64hXJBGEg_1763747119 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-42b2fb13b79so1270819f8f.3 for ; Fri, 21 Nov 2025 09:45:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763747119; x=1764351919; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=iPUxsCB68OtlQ4ZU2Anvk/LjkstuSN+yLG3TCw1aX4g=; b=bMhHMgFqXuiVvBRjCYXggfYOOCDxr52yv42TN5cjAWEXtT9RDVMyIV+GegpQjULyb9 gmzKbHjRf1RmVqMtApEiQkPoMCr0rYXvpKcCPWi/yR9NGx0ztiCaB8wm5nTX6MQVSboC fGyO/WA0Mzwu73OnOCkfK0ZlMs5ysEJxCq9KMNrbWKd1fzwukCvzND/bppTNd9DxojdW rbU3AYh2U6XMUe9QNwRwUVgWzWP/TFlhvNK1ldRtOtKCepBBkmSkTksYUBwgVLdREqdI Nby5OYaidOUsTj/ik1wa9xJEsl2noQKDT8GRrVIT+2QRj9yvYgeO81bXmjSc1WH91kOt 1AEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763747119; x=1764351919; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=iPUxsCB68OtlQ4ZU2Anvk/LjkstuSN+yLG3TCw1aX4g=; b=auB9G9gQCTqvUu+wiOM5Tzl5SU5DZnLGVA0s3VDgJfeqFMgAa3P0AHP7vDypsdYW9d rzAn44L++cgCay1n05Stenq+yRQGcX19AauHwwOxVdElaAxLNqJL024W3XneGfmLDT+S 6SxD9s6W/mfh5beyKTLD0Iq7ulRdHsCHkclH0JKBZuvu42jdptxRV2pqXmf8qMZLzdY5 6fTD/24dVq3EB5raJEGhVDfeK34Y9170w5RQ+w6LEjhZ2Rb5Kd0oq5tTZ+EJMwcWo5l0 jtuKcGBolTj0IJ8adYfZg3izusy9ILNcxCa/BWVybb/eIhMLztxObBh06ZCMxUCajbx1 n5Ow== X-Forwarded-Encrypted: i=1; AJvYcCUr5azBgRMLsBzKJoFIAlZ60E5gBABVadJeVx31L7RLNO1jgajHV6fWZMkc/C+58rxpRfYSA+rN0CjtaAg=@vger.kernel.org X-Gm-Message-State: AOJu0Yy6EUWuwkQWLAWZnNN351+D1pKQS3rJs+g0nYwnGIVa/62BsPYh 7HPH1FxPNFEQ4IIOE+G2Ra3p0X9NEJEUO0dEa9EENikC4zN1kJs81/JO048JW8WZk9TAy1vSPgf 93f6GNOvej8s81lcW0W4tj+bQ8YQzZDsOPFue+cyJn+1fPC7KWJdhnBrbwPyvHEWRYA== X-Gm-Gg: ASbGncsiLSuCrOva55KlngVq6qKpoQURl4+7oVDS+NRcIXj5KqypfxAqqBrStv9kA+f hDU/qrrowKCXkw0CRufY7G1yVmWsB5P+KEVtHjubKTnVgv3O5ri/xnxXg8i5wmgKXvYAcaKgxb5 mcvBOS8uk6pvzflShwN8C9I5sPwydXZ+SGf4qYAzNOF7PENk9USEWFN6+wNR2LeebeZbd9Q6XUH JkMvkALoiA6ehTAo05XOgoD9z6/xtFB/Ao+awhZ86NOySrCcbGvc0Tob2CE7x6aYsWqe1vPAlv3 h2Ll0EtlQ/tVnicYEkXBB4/+KjgKOrGY5NxN8nwkTUU3qlya9lxK9jQSHNUYeoIYgtdzyg7oM+u YndFrnO46pliqP1dAy5UnwhiQ X-Received: by 2002:a05:600c:4e87:b0:46d:a04:50c6 with SMTP id 5b1f17b1804b1-477c01ebc76mr34703225e9.30.1763747118947; Fri, 21 Nov 2025 09:45:18 -0800 (PST) X-Google-Smtp-Source: AGHT+IFzqsK/8czIQV9eJ6zCC2tqD4f0JD1dgzV6/tliXXqCBq0SC0Gw7XP+mw8HTIxPxE72VIDirA== X-Received: by 2002:a05:600c:4e87:b0:46d:a04:50c6 with SMTP id 5b1f17b1804b1-477c01ebc76mr34702975e9.30.1763747118517; Fri, 21 Nov 2025 09:45:18 -0800 (PST) Received: from costa-tp.bos2.lab ([2a00:a041:e294:5000:b694:8e49:4f51:966d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42cb7ec454csm11529567f8f.0.2025.11.21.09.45.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Nov 2025 09:45:18 -0800 (PST) From: Costa Shulyupin To: Steven Rostedt , Tomas Glozar , Costa Shulyupin , Crystal Wood , Wander Lairson Costa , Ivan Pravdin , linux-trace-kernel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 0/8] tools/rtla: Consolidate common command line options Date: Fri, 21 Nov 2025 19:44:56 +0200 Message-ID: <20251121174504.519230-1-costa.shul@redhat.com> X-Mailer: git-send-email 2.51.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Argument parsing functions are the longest functions of the project: lizard --warnings_only --sort nloc -L100 | head -n 4 ./src/timerlat_hist.c:766: warning: timerlat_hist_parse_args has 247 NLOC, 76 CCN, 1579 token, 1 PARAM, 287 length, 0 ND ./src/timerlat_top.c:538: warning: timerlat_top_parse_args has 217 NLOC, 64 CCN, 1338 token, 2 PARAM, 262 length, 0 ND ./src/osnoise_hist.c:469: warning: osnoise_hist_parse_args has 195 NLOC, 56 CCN, 1225 token, 1 PARAM, 216 length, 0 ND ./src/osnoise_top.c:322: warning: osnoise_top_parse_args has 169 NLOC, 46 CCN, 1019 token, 2 PARAM, 191 length, 0 ND Moreover, they contain a lot of duplicate code and growing. Refactor these functions to reduce code duplication. Benefits: - Single implementation for common options - Easier maintenance and consistent behavior Costa Shulyupin (8): tools/rtla: Add common_parse_options() tools/rtla: Consolidate -c/--cpus option parsing tools/rtla: Consolidate -C/--cgroup option parsing tools/rtla: Consolidate -D/--debug option parsing tools/rtla: Consolidate -d/--duration option parsing tools/rtla: Consolidate -e/--event option parsing tools/rtla: Consolidate -P/--priority option parsing tools/rtla: Consolidate -H/--house-keeping option parsing tools/tracing/rtla/src/common.c | 78 ++++++++++++++++++++++++++ tools/tracing/rtla/src/common.h | 1 + tools/tracing/rtla/src/osnoise_hist.c | 53 ++--------------- tools/tracing/rtla/src/osnoise_top.c | 53 ++--------------- tools/tracing/rtla/src/timerlat_hist.c | 53 ++--------------- tools/tracing/rtla/src/timerlat_top.c | 52 ++--------------- 6 files changed, 95 insertions(+), 195 deletions(-) -- 2.51.1