From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 42DAB383339 for ; Mon, 15 Jun 2026 21:06:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.176 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781557611; cv=none; b=rC+TPstjkEMzKrj7eKq7p+HkU7C0r49SvGi5CyrK5RBbwj1C+VKCjIo+l+lFP9bz5TJoLbydy4PmVwMeIFDmNHCGVM46XN70+UWAaX65PI+GNAhNMyUBTi+N4WDgYAQRDnifvi9u44YGjIoplGpW3c0gEP/CP98LCi0KRJf/pfA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781557611; c=relaxed/simple; bh=FY7JZGImNTvxn8dnGWvuvXmcLUESsMho2m/hquENim0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=rFTVk/krviwIm+a13wp2/Ty/m32QuQ02SAB/Y9XVNP0ZBgd/kfMRM5ifnFsm78UYL4XYsFFCW6MAZHkhX8YaZvgnP9d2IisD70iHy1edpxXwy1qCYfvKbuiHM5pLn1SFRTv8yilLLhAZ/yCoiNQURRDSy/S3ru1iSd34ocXVIzI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ijggp9Mo; arc=none smtp.client-ip=209.85.210.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ijggp9Mo" Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-8424b00710aso2725364b3a.0 for ; Mon, 15 Jun 2026 14:06:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781557610; x=1782162410; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cbbi1IcZJaR9ktXMK0nloWLl+ZLOkEfUS6FKctRydbw=; b=ijggp9MoLKtFEJxhGC5Zin/mf48yCN0xxGOzNEUfkrj9t4oYgK7Aa0hTNaTR4hJMg7 m8mTVDWCxTJekd7WiG6DZbbYaJp/Cuy40H8clYh303CFTdW56zAoOQJfRsADxhMThG7y T0XdPX0pLxqPDRn8lW7AVTKshozme+2BuGDd5Mhyk7tb+cxdX1EWw7b+JrUXboM0Kpqp agYoiqjvfpp2NcxKCAy27c7Sz7A1z7cR5pGOtxmfI7ll+YxwD2ngo0df9qiC3RjbkcFd oVhSi7GTLhX60OjzgietlIpARMHI2XwVTznlO/KZkKvjpA5uYX5Ap91wGW01UiMVnVIq QzUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781557610; x=1782162410; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=cbbi1IcZJaR9ktXMK0nloWLl+ZLOkEfUS6FKctRydbw=; b=cQEOtm6H/EUmzQ5qvdhT0PO+J6w4QsPN+G+zCje/e9yC/60lTY4AaSM3WXTLquB8qZ N1kImOo7qe3XUSnpfRWmVAfM7wxN/uzRbf8LIyxAsFg8vgRON3jT6HOno1adSTq7ZYt9 xy11MrEEQbcKw3jDVypQlABWDUKbterIaU1yN7vePyqsvYhgcEw/K0uB1I9kdArZVRyr qGurTbriPXzLr58kb2LDJK4fYvlzFJgbOQyDnZG2+jk6x0smd7O+KisaieDHzXlno7vp RDTRSCt0/w8GNPpTkG5uJliOfK/v+/ofJDVyhOVIjUnCbwe6EnCILUKKJnv/9V2GGg2E 76yw== X-Forwarded-Encrypted: i=1; AFNElJ8GuV4ga0TsMEMBNVS5KFQMxjngbpHoCVI5kX/+NaE1h/ONNtk1vDOIJTauS5frkukqIsAukIC9qGP0UWc=@vger.kernel.org X-Gm-Message-State: AOJu0YwPuP8SGxvaQuqbjC8UrdcdBSGuZ+Di1humXpnbt2YyvqLEU3Uw 7SDXnyziSf2ly1IjHkBY+hHi1fvF4eeuMQE9FNKTbS80TpJx93jJIs6d X-Gm-Gg: Acq92OGSABf6AYkPQcDC3MNDX+tz7xzsBJez386huuPndckV5urmAUL6IXD+lM66HK4 8ToNlGsN96sXtJoyzwn2imeajjbUH4vn7iV4swEATrUc2+dfoe/U2+4WWq9sHmEPLDDFMQZlUtq ZrypMqSZfezjsDb20M0gOsoHYjbHh3YfKqlELKBwueJx9Hk7zKFTZRTJ2iEeOxTcAs2APO/bssc LzH+GbxGiei9ZmoblK1gOtmXbs/oXnfS7BoTxzmSBusWM8/v1nqdquTYnVsNtkAbncy9XK8I8n7 H7naShruaBUzML/UylpTQ1zU0h0qISfRQhvLqI6NNUhGdbzGE1195JUy+wG5vBBN3WEnFq2kv9a NLMA3ltm6qgTTXlieVwMvIpBSskSr5tRnqPGZYwj7Rmdbvd9650+dnJPM6kdWywoFaU8ZRwWrsg 3BNYw0Gy4uUXniPqsnEvWiRGbQ3vaO8XKBMkq4g+zVqtnf X-Received: by 2002:a05:6a00:1c86:b0:842:65c1:468c with SMTP id d2e1a72fcca58-845153dc082mr525812b3a.7.1781557609685; Mon, 15 Jun 2026 14:06:49 -0700 (PDT) Received: from LAPTOP-TMVMP5FD.localdomain ([106.222.251.194]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-8434acf2ac9sm10879777b3a.21.2026.06.15.14.06.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Jun 2026 14:06:49 -0700 (PDT) From: Keshav Verma To: gregkh@linuxfoundation.org, arve@android.com, tkjos@android.com, brauner@kernel.org, cmllamas@google.com, aliceryhl@google.com Cc: ojeda@kernel.org, stable@kernel.org, rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Keshav Verma Subject: [PATCH v3] binder: synchronize Rust Binder stats with freeze commands Date: Tue, 16 Jun 2026 02:35:16 +0530 Message-Id: <20260615210516.513-1-iganschel@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260615201737.262-1-iganschel@gmail.com> References: <20260615201737.262-1-iganschel@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Rust Binder stats use BC_COUNT and BR_COUNT to size the command and return counters, and use event string tables when printing debug statistics. The Binder protocol includes freeze-related commands and return codes, but the Rust Binder statistics code was not updated to cover them. As a result, those commands and return codes are not accounted for or printed by the stats debug output. Update the counts and event string tables so these commands and return codes are included in the debug statistics output. Fixes: eafedbc7c050 ("rust_binder: add Rust Binder driver") Cc: stable@kernel.org Acked-by: Carlos Llamas Signed-off-by: Keshav Verma --- v3: - Add changelog for previous revisions. v2: - Add Fixes: tag for rust_binder introduction commit. - Cc stable@kernel.org. - Add Acked-by from Carlos Llamas. - Use real name in Signed-off-by. drivers/android/binder/rust_binder_events.c | 7 ++++++- drivers/android/binder/stats.rs | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/android/binder/rust_binder_events.c b/drivers/android/binder/rust_binder_events.c index 488b1470060c..5792aa59cc82 100644 --- a/drivers/android/binder/rust_binder_events.c +++ b/drivers/android/binder/rust_binder_events.c @@ -28,6 +28,9 @@ const char * const binder_command_strings[] = { "BC_DEAD_BINDER_DONE", "BC_TRANSACTION_SG", "BC_REPLY_SG", + "BC_REQUEST_FREEZE_NOTIFICATION", + "BC_CLEAR_FREEZE_NOTIFICATION", + "BC_FREEZE_NOTIFICATION_DONE", }; const char * const binder_return_strings[] = { @@ -51,7 +54,9 @@ const char * const binder_return_strings[] = { "BR_FAILED_REPLY", "BR_FROZEN_REPLY", "BR_ONEWAY_SPAM_SUSPECT", - "BR_TRANSACTION_PENDING_FROZEN" + "BR_TRANSACTION_PENDING_FROZEN", + "BR_FROZEN_BINDER", + "BR_CLEAR_FREEZE_NOTIFICATION_DONE", }; #define CREATE_TRACE_POINTS diff --git a/drivers/android/binder/stats.rs b/drivers/android/binder/stats.rs index ab75e9561cbf..ec81dc7747db 100644 --- a/drivers/android/binder/stats.rs +++ b/drivers/android/binder/stats.rs @@ -8,8 +8,8 @@ use kernel::sync::atomic::{ordering::Relaxed, Atomic}; use kernel::{ioctl::_IOC_NR, seq_file::SeqFile, seq_print}; -const BC_COUNT: usize = _IOC_NR(BC_REPLY_SG) as usize + 1; -const BR_COUNT: usize = _IOC_NR(BR_TRANSACTION_PENDING_FROZEN) as usize + 1; +const BC_COUNT: usize = _IOC_NR(BC_FREEZE_NOTIFICATION_DONE) as usize + 1; +const BR_COUNT: usize = _IOC_NR(BR_CLEAR_FREEZE_NOTIFICATION_DONE) as usize + 1; pub(crate) static GLOBAL_STATS: BinderStats = BinderStats::new(); -- 2.39.5