From: Thomas Richter Date: Wed, 5 Nov 2025 14:39:00 +0000 (+0100) Subject: s390/pai_crypto: Introduce PAI crypto specific event delete function X-Git-Tag: v6.19-rc1~206^2~21^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3abb6b16758045b44d5fdf50915befa6744eaaca;p=thirdparty%2Flinux.git s390/pai_crypto: Introduce PAI crypto specific event delete function Introduce PAI crypto specific event delete function to handle additional actions to be done at event removal. Signed-off-by: Thomas Richter Reviewed-by: Jan Polensky Signed-off-by: Heiko Carstens --- diff --git a/arch/s390/kernel/perf_pai_crypto.c b/arch/s390/kernel/perf_pai_crypto.c index 94551b3d09f3b..f2d7f8bc0319a 100644 --- a/arch/s390/kernel/perf_pai_crypto.c +++ b/arch/s390/kernel/perf_pai_crypto.c @@ -138,7 +138,6 @@ static void pai_event_destroy(struct perf_event *event) { int cpu; - static_branch_dec(&pai_key); free_page(PAI_SAVE_AREA(event)); if (event->cpu == -1) { struct cpumask *mask = PAI_CPU_MASK(event); @@ -151,6 +150,12 @@ static void pai_event_destroy(struct perf_event *event) } } +static void paicrypt_event_destroy(struct perf_event *event) +{ + static_branch_dec(&pai_key); + pai_event_destroy(event); +} + static u64 pai_getctr(unsigned long *page, int nr, unsigned long offset) { if (offset) @@ -360,7 +365,7 @@ static int paicrypt_event_init(struct perf_event *event) int rc = pai_event_init(event, PAI_PMU_CRYPTO); if (!rc) { - event->destroy = pai_event_destroy; + event->destroy = paicrypt_event_destroy; static_branch_inc(&pai_key); } return rc;