All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Cc: Hans de Goede <hdegoede@redhat.com>,
	 Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	 platform-driver-x86@vger.kernel.org,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] platform/x86: ISST: Simplify isst_misc_reg() and isst_misc_unreg()
Date: Mon, 12 Aug 2024 13:55:50 +0300 (EEST)	[thread overview]
Message-ID: <f6f3ca5a-8179-e678-aa8d-aeeacdcddb31@linux.intel.com> (raw)
In-Reply-To: <20240731184256.1852840-1-srinivas.pandruvada@linux.intel.com>

[-- Attachment #1: Type: text/plain, Size: 2883 bytes --]

On Wed, 31 Jul 2024, Srinivas Pandruvada wrote:

> After commit '1630dc626c87 ("platform/x86: ISST: Add model specific
> loading for common module")' isst_misc_reg() and isst_misc_unreg() can be
> simplified. Since these functions are only called during module_init()
> and module_exit() respectively, there is no contention while calling
> misc_register()/misc_deregister or isst_if_cpu_info_init()/
> isst_if_cpu_info_exit().
> 
> Hence remove mutex and reference counting.
> 
> Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> ---
>  .../intel/speed_select_if/isst_if_common.c    | 42 +++++--------------
>  1 file changed, 11 insertions(+), 31 deletions(-)
> 
> diff --git a/drivers/platform/x86/intel/speed_select_if/isst_if_common.c b/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
> index 3065f149e721..febfd5eeceb4 100644
> --- a/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
> +++ b/drivers/platform/x86/intel/speed_select_if/isst_if_common.c
> @@ -651,10 +651,6 @@ static long isst_if_def_ioctl(struct file *file, unsigned int cmd,
>  
>  /* Lock to prevent module registration when already opened by user space */
>  static DEFINE_MUTEX(punit_misc_dev_open_lock);
> -/* Lock to allow one shared misc device for all ISST interfaces */
> -static DEFINE_MUTEX(punit_misc_dev_reg_lock);
> -static int misc_usage_count;
> -static int misc_device_ret;
>  static int misc_device_open;
>  
>  static int isst_if_open(struct inode *inode, struct file *file)
> @@ -720,39 +716,23 @@ static struct miscdevice isst_if_char_driver = {
>  
>  static int isst_misc_reg(void)
>  {
> -	mutex_lock(&punit_misc_dev_reg_lock);
> -	if (misc_device_ret)
> -		goto unlock_exit;
> -
> -	if (!misc_usage_count) {
> -		misc_device_ret = isst_if_cpu_info_init();
> -		if (misc_device_ret)
> -			goto unlock_exit;
> -
> -		misc_device_ret = misc_register(&isst_if_char_driver);
> -		if (misc_device_ret) {
> -			isst_if_cpu_info_exit();
> -			goto unlock_exit;
> -		}
> -	}
> -	misc_usage_count++;
> +	int ret;
>  
> -unlock_exit:
> -	mutex_unlock(&punit_misc_dev_reg_lock);
> +	ret = isst_if_cpu_info_init();
> +	if (ret)
> +		return ret;
>  
> -	return misc_device_ret;
> +	ret = misc_register(&isst_if_char_driver);
> +	if (ret)
> +		isst_if_cpu_info_exit();
> +
> +	return ret;
>  }
>  
>  static void isst_misc_unreg(void)
>  {
> -	mutex_lock(&punit_misc_dev_reg_lock);
> -	if (misc_usage_count)
> -		misc_usage_count--;
> -	if (!misc_usage_count && !misc_device_ret) {
> -		misc_deregister(&isst_if_char_driver);
> -		isst_if_cpu_info_exit();
> -	}
> -	mutex_unlock(&punit_misc_dev_reg_lock);
> +	misc_deregister(&isst_if_char_driver);
> +	isst_if_cpu_info_exit();
>  }
>  
>  /**
> 

Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

-- 
 i.

  reply	other threads:[~2024-08-12 10:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-31 18:42 [PATCH] platform/x86: ISST: Simplify isst_misc_reg() and isst_misc_unreg() Srinivas Pandruvada
2024-08-12 10:55 ` Ilpo Järvinen [this message]
2024-08-12 14:32 ` Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f6f3ca5a-8179-e678-aa8d-aeeacdcddb31@linux.intel.com \
    --to=ilpo.jarvinen@linux.intel.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=srinivas.pandruvada@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.