From patchwork Fri Dec 1 00:46:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Deborah Brouwer X-Patchwork-Id: 97550 X-Patchwork-Delegate: hverkuil@xs4all.nl Received: from sy.mirrors.kernel.org ([147.75.48.161]) by www.linuxtv.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1r8rgh-0063QP-57 for patchwork@linuxtv.org; Fri, 01 Dec 2023 00:47:23 +0000 Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 8487CB21301 for ; Fri, 1 Dec 2023 00:47:18 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 6FC8A63A; Fri, 1 Dec 2023 00:47:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="VzlbqIF8" X-Original-To: linux-media@vger.kernel.org Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 575ED10F0 for ; Thu, 30 Nov 2023 16:47:10 -0800 (PST) Received: from mz550.lan (ec2-34-240-57-77.eu-west-1.compute.amazonaws.com [34.240.57.77]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: dbrouwer) by madras.collabora.co.uk (Postfix) with ESMTPSA id 641BC660738B; Fri, 1 Dec 2023 00:47:08 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1701391629; bh=/h7AWDJb/3fCGWg8ghrRVRV0SW7CX+JZ25CLlUI8ySQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VzlbqIF8BdDeipy6q+0l8CrM0Ol7X0+04wUVaEW8Ndi81/w/HpLaPMauBHjhjfIVu uPEDujtIT0F04ostr6gY96uOmRQpriHZEikETiHtunZYOpAjcxKc1H+w1fgVsdDHQB cD1/5eu2dEnlIvN2nWlS3jBilwb0DtyjlAbgVxK71jYeBFTc/gdYeREY/tvqOugpEf OvW0OxJnJxIcXebbFbsWlhnacwKZ4OvdDqXk9+JX0NZlAkWsIT4SaZmLko06C2EX5Q ISUHdw3z6Q+GHoiLx2FGDuqQc/WmMVlsZ9sN31JNbE4Rl2wUBF10KzBaaOZ6UzlNxb UuUV2Izg2uBiA== From: Deborah Brouwer To: linux-media@vger.kernel.org Cc: hverkuil-cisco@xs4all.nl, Deborah Brouwer Subject: [PATCH 6/6] v4l2-tracer: use stat to verify that retrace file exists Date: Thu, 30 Nov 2023 16:46:34 -0800 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-LSpam-Score: -4.8 (----) X-LSpam-Report: No, score=-4.8 required=5.0 tests=BAYES_00=-1.9,DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1,HEADER_FROM_DIFFERENT_DOMAINS=0.5,MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3 autolearn=unavailable autolearn_force=no Instead of opening and closing the file to see if it exists, just use stat. This avoids cluttering a trace with extra opens/closes. Also change the return value to give a better description of the failure to the calling function. Signed-off-by: Deborah Brouwer --- utils/v4l2-tracer/retrace.cpp | 7 +++---- utils/v4l2-tracer/v4l2-tracer-common.h | 1 + 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/v4l2-tracer/retrace.cpp b/utils/v4l2-tracer/retrace.cpp index b8a1c8fb..60d64d8b 100644 --- a/utils/v4l2-tracer/retrace.cpp +++ b/utils/v4l2-tracer/retrace.cpp @@ -1537,12 +1537,11 @@ void retrace_array(json_object *root_array_obj) int retrace(std::string trace_filename) { - FILE *trace_file = fopen(trace_filename.c_str(), "r"); - if (trace_file == nullptr) { + struct stat sb; + if (stat(trace_filename.c_str(), &sb) == -1) { line_info("\n\tTrace file error: \'%s\'", trace_filename.c_str()); - return 1; + return -EINVAL; } - fclose(trace_file); fprintf(stderr, "Retracing: %s\n", trace_filename.c_str()); diff --git a/utils/v4l2-tracer/v4l2-tracer-common.h b/utils/v4l2-tracer/v4l2-tracer-common.h index c8b5dbd4..adb41218 100644 --- a/utils/v4l2-tracer/v4l2-tracer-common.h +++ b/utils/v4l2-tracer/v4l2-tracer-common.h @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include