Linux-PM Archive on lore.kernel.org
 help / color / Atom feed
From: "Rafael J. Wysocki" <rafael@kernel.org>
To: linux-serial@vger.kernel.org
Cc: Linux PM <linux-pm@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Amit Kucheria <amit.kucheria@linaro.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>
Subject: Re: [PATCH 10/28] PM: QoS: Rename things related to the CPU latency QoS
Date: Wed, 12 Feb 2020 11:34:26 +0100
Message-ID: <CAJZ5v0hV6iEJ=dmNMYL7RU2sQZy5rXffMbVEJ3d4Qa=r9No2OQ@mail.gmail.com> (raw)
In-Reply-To: <3305010.P0mNzRSuHC@kreacher>

On Wed, Feb 12, 2020 at 12:39 AM Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
>
> From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
>
> First, rename PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE to
> PM_QOS_CPU_LATENCY_DEFAULT_VALUE and update all of the code
> referring to it accordingly.
>
> Next, rename cpu_dma_constraints to cpu_latency_constraints, move
> the definition of it closer to the functions referring to it and
> update all of them accordingly.  [While at it, add a comment to mark
> the start of the code related to the CPU latency QoS.]
>
> Finally, rename the pm_qos_power_*() family of functions and
> pm_qos_power_fops to cpu_latency_qos_*() and cpu_latency_qos_fops,
> respectively, and update the definition of cpu_latency_qos_miscdev.
> [While at it, update the miscdev interface code start comment.]
>
> No intentional functional impact.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>


Please note that the whole series is available here:

https://lore.kernel.org/linux-pm/1654227.8mz0SueHsU@kreacher/


> ---
>  drivers/tty/serial/8250/8250_omap.c |  6 ++--
>  drivers/tty/serial/omap-serial.c    |  6 ++--
>  include/linux/pm_qos.h              |  2 +-
>  kernel/power/qos.c                  | 56 +++++++++++++++++++------------------
>  4 files changed, 36 insertions(+), 34 deletions(-)
>
> diff --git a/drivers/tty/serial/8250/8250_omap.c b/drivers/tty/serial/8250/8250_omap.c
> index 6f343ca08440..19f8d2f9e7ba 100644
> --- a/drivers/tty/serial/8250/8250_omap.c
> +++ b/drivers/tty/serial/8250/8250_omap.c
> @@ -1222,8 +1222,8 @@ static int omap8250_probe(struct platform_device *pdev)
>                          DEFAULT_CLK_SPEED);
>         }
>
> -       priv->latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> -       priv->calc_latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> +       priv->latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
> +       priv->calc_latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
>         pm_qos_add_request(&priv->pm_qos_request, PM_QOS_CPU_DMA_LATENCY,
>                            priv->latency);
>         INIT_WORK(&priv->qos_work, omap8250_uart_qos_work);
> @@ -1445,7 +1445,7 @@ static int omap8250_runtime_suspend(struct device *dev)
>         if (up->dma && up->dma->rxchan)
>                 omap_8250_rx_dma_flush(up);
>
> -       priv->latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> +       priv->latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
>         schedule_work(&priv->qos_work);
>
>         return 0;
> diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
> index 48017cec7f2f..ce2558767eee 100644
> --- a/drivers/tty/serial/omap-serial.c
> +++ b/drivers/tty/serial/omap-serial.c
> @@ -1722,8 +1722,8 @@ static int serial_omap_probe(struct platform_device *pdev)
>                          DEFAULT_CLK_SPEED);
>         }
>
> -       up->latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> -       up->calc_latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> +       up->latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
> +       up->calc_latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
>         pm_qos_add_request(&up->pm_qos_request,
>                 PM_QOS_CPU_DMA_LATENCY, up->latency);
>         INIT_WORK(&up->qos_work, serial_omap_uart_qos_work);
> @@ -1869,7 +1869,7 @@ static int serial_omap_runtime_suspend(struct device *dev)
>
>         serial_omap_enable_wakeup(up, true);
>
> -       up->latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
> +       up->latency = PM_QOS_CPU_LATENCY_DEFAULT_VALUE;
>         schedule_work(&up->qos_work);
>
>         return 0;
> diff --git a/include/linux/pm_qos.h b/include/linux/pm_qos.h
> index cb57e5918a25..a3e0bfc6c470 100644
> --- a/include/linux/pm_qos.h
> +++ b/include/linux/pm_qos.h
> @@ -28,7 +28,7 @@ enum pm_qos_flags_status {
>  #define PM_QOS_LATENCY_ANY     S32_MAX
>  #define PM_QOS_LATENCY_ANY_NS  ((s64)PM_QOS_LATENCY_ANY * NSEC_PER_USEC)
>
> -#define PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE       (2000 * USEC_PER_SEC)
> +#define PM_QOS_CPU_LATENCY_DEFAULT_VALUE       (2000 * USEC_PER_SEC)
>  #define PM_QOS_RESUME_LATENCY_DEFAULT_VALUE    PM_QOS_LATENCY_ANY
>  #define PM_QOS_RESUME_LATENCY_NO_CONSTRAINT    PM_QOS_LATENCY_ANY
>  #define PM_QOS_RESUME_LATENCY_NO_CONSTRAINT_NS PM_QOS_LATENCY_ANY_NS
> diff --git a/kernel/power/qos.c b/kernel/power/qos.c
> index 201b43bc6457..a6bf53e9db17 100644
> --- a/kernel/power/qos.c
> +++ b/kernel/power/qos.c
> @@ -56,14 +56,6 @@
>   */
>  static DEFINE_SPINLOCK(pm_qos_lock);
>
> -static struct pm_qos_constraints cpu_dma_constraints = {
> -       .list = PLIST_HEAD_INIT(cpu_dma_constraints.list),
> -       .target_value = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE,
> -       .default_value = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE,
> -       .no_constraint_value = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE,
> -       .type = PM_QOS_MIN,
> -};
> -
>  /**
>   * pm_qos_read_value - Return the current effective constraint value.
>   * @c: List of PM QoS constraint requests.
> @@ -227,6 +219,16 @@ bool pm_qos_update_flags(struct pm_qos_flags *pqf,
>         return prev_value != curr_value;
>  }
>
> +/* Definitions related to the CPU latency QoS. */
> +
> +static struct pm_qos_constraints cpu_latency_constraints = {
> +       .list = PLIST_HEAD_INIT(cpu_latency_constraints.list),
> +       .target_value = PM_QOS_CPU_LATENCY_DEFAULT_VALUE,
> +       .default_value = PM_QOS_CPU_LATENCY_DEFAULT_VALUE,
> +       .no_constraint_value = PM_QOS_CPU_LATENCY_DEFAULT_VALUE,
> +       .type = PM_QOS_MIN,
> +};
> +
>  /**
>   * pm_qos_request - returns current system wide qos expectation
>   * @pm_qos_class: Ignored.
> @@ -235,13 +237,13 @@ bool pm_qos_update_flags(struct pm_qos_flags *pqf,
>   */
>  int pm_qos_request(int pm_qos_class)
>  {
> -       return pm_qos_read_value(&cpu_dma_constraints);
> +       return pm_qos_read_value(&cpu_latency_constraints);
>  }
>  EXPORT_SYMBOL_GPL(pm_qos_request);
>
>  int pm_qos_request_active(struct pm_qos_request *req)
>  {
> -       return req->qos == &cpu_dma_constraints;
> +       return req->qos == &cpu_latency_constraints;
>  }
>  EXPORT_SYMBOL_GPL(pm_qos_request_active);
>
> @@ -278,7 +280,7 @@ void pm_qos_add_request(struct pm_qos_request *req,
>
>         trace_pm_qos_add_request(PM_QOS_CPU_DMA_LATENCY, value);
>
> -       req->qos = &cpu_dma_constraints;
> +       req->qos = &cpu_latency_constraints;
>         cpu_latency_qos_update(req, PM_QOS_ADD_REQ, value);
>  }
>  EXPORT_SYMBOL_GPL(pm_qos_add_request);
> @@ -338,9 +340,9 @@ void pm_qos_remove_request(struct pm_qos_request *req)
>  }
>  EXPORT_SYMBOL_GPL(pm_qos_remove_request);
>
> -/* User space interface to global PM QoS via misc device. */
> +/* User space interface to the CPU latency QoS via misc device. */
>
> -static int pm_qos_power_open(struct inode *inode, struct file *filp)
> +static int cpu_latency_qos_open(struct inode *inode, struct file *filp)
>  {
>         struct pm_qos_request *req;
>
> @@ -354,7 +356,7 @@ static int pm_qos_power_open(struct inode *inode, struct file *filp)
>         return 0;
>  }
>
> -static int pm_qos_power_release(struct inode *inode, struct file *filp)
> +static int cpu_latency_qos_release(struct inode *inode, struct file *filp)
>  {
>         struct pm_qos_request *req = filp->private_data;
>
> @@ -366,8 +368,8 @@ static int pm_qos_power_release(struct inode *inode, struct file *filp)
>         return 0;
>  }
>
> -static ssize_t pm_qos_power_read(struct file *filp, char __user *buf,
> -                                size_t count, loff_t *f_pos)
> +static ssize_t cpu_latency_qos_read(struct file *filp, char __user *buf,
> +                                   size_t count, loff_t *f_pos)
>  {
>         struct pm_qos_request *req = filp->private_data;
>         unsigned long flags;
> @@ -377,14 +379,14 @@ static ssize_t pm_qos_power_read(struct file *filp, char __user *buf,
>                 return -EINVAL;
>
>         spin_lock_irqsave(&pm_qos_lock, flags);
> -       value = pm_qos_get_value(&cpu_dma_constraints);
> +       value = pm_qos_get_value(&cpu_latency_constraints);
>         spin_unlock_irqrestore(&pm_qos_lock, flags);
>
>         return simple_read_from_buffer(buf, count, f_pos, &value, sizeof(s32));
>  }
>
> -static ssize_t pm_qos_power_write(struct file *filp, const char __user *buf,
> -                                 size_t count, loff_t *f_pos)
> +static ssize_t cpu_latency_qos_write(struct file *filp, const char __user *buf,
> +                                    size_t count, loff_t *f_pos)
>  {
>         s32 value;
>
> @@ -404,21 +406,21 @@ static ssize_t pm_qos_power_write(struct file *filp, const char __user *buf,
>         return count;
>  }
>
> -static const struct file_operations pm_qos_power_fops = {
> -       .write = pm_qos_power_write,
> -       .read = pm_qos_power_read,
> -       .open = pm_qos_power_open,
> -       .release = pm_qos_power_release,
> +static const struct file_operations cpu_latency_qos_fops = {
> +       .write = cpu_latency_qos_write,
> +       .read = cpu_latency_qos_read,
> +       .open = cpu_latency_qos_open,
> +       .release = cpu_latency_qos_release,
>         .llseek = noop_llseek,
>  };
>
>  static struct miscdevice cpu_latency_qos_miscdev = {
>         .minor = MISC_DYNAMIC_MINOR,
>         .name = "cpu_dma_latency",
> -       .fops = &pm_qos_power_fops,
> +       .fops = &cpu_latency_qos_fops,
>  };
>
> -static int __init pm_qos_power_init(void)
> +static int __init cpu_latency_qos_init(void)
>  {
>         int ret;
>
> @@ -429,7 +431,7 @@ static int __init pm_qos_power_init(void)
>
>         return ret;
>  }
> -late_initcall(pm_qos_power_init);
> +late_initcall(cpu_latency_qos_init);
>
>  /* Definitions related to the frequency QoS below. */
>
> --
> 2.16.4
>
>
>
>
>

  reply index

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-11 22:51 [PATCH 00/28] PM: QoS: Get rid of unuseful code and rework CPU latency QoS interface Rafael J. Wysocki
2020-02-11 22:52 ` [PATCH 01/28] PM: QoS: Drop debugfs interface Rafael J. Wysocki
2020-02-11 22:58 ` [PATCH 02/28] PM: QoS: Drop pm_qos_update_request_timeout() Rafael J. Wysocki
2020-02-11 22:58 ` [PATCH 03/28] PM: QoS: Drop the PM_QOS_SUM QoS type Rafael J. Wysocki
2020-02-11 22:58 ` [PATCH 04/28] PM: QoS: Clean up pm_qos_update_target() and pm_qos_update_flags() Rafael J. Wysocki
2020-02-11 22:58 ` [PATCH 05/28] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value() Rafael J. Wysocki
2020-02-11 22:59 ` [PATCH 06/28] PM: QoS: Drop iterations over global QoS classes Rafael J. Wysocki
2020-02-11 23:00 ` [PATCH 07/28] PM: QoS: Clean up misc device file operations Rafael J. Wysocki
2020-02-11 23:01 ` [PATCH 08/28] PM: QoS: Redefine struct pm_qos_request and drop struct pm_qos_object Rafael J. Wysocki
2020-02-11 23:02 ` [PATCH 09/28] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY notifier chain Rafael J. Wysocki
2020-02-11 23:04 ` [PATCH 10/28] PM: QoS: Rename things related to the CPU latency QoS Rafael J. Wysocki
2020-02-12 10:34   ` Rafael J. Wysocki [this message]
2020-02-12 19:13   ` Greg Kroah-Hartman
2020-02-11 23:06 ` [PATCH 11/28] PM: QoS: Simplify definitions of CPU latency QoS trace events Rafael J. Wysocki
2020-02-11 23:07 ` [PATCH 12/28] PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h Rafael J. Wysocki
2020-02-11 23:07 ` [PATCH 13/28] PM: QoS: Add CPU latency QoS API wrappers Rafael J. Wysocki
2020-02-11 23:08 ` [PATCH 14/28] cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request() Rafael J. Wysocki
2020-02-11 23:10 ` [PATCH 15/28] x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*() Rafael J. Wysocki
2020-02-12 10:14   ` Andy Shevchenko
2020-02-11 23:12 ` [PATCH 16/28] drm: i915: " Rafael J. Wysocki
2020-02-12 10:32   ` Rafael J. Wysocki
2020-02-14  7:42   ` Jani Nikula
2020-02-11 23:13 ` [PATCH 17/28] drivers: hsi: " Rafael J. Wysocki
2020-02-13 21:06   ` Sebastian Reichel
2020-02-11 23:17 ` [PATCH 18/28] drivers: media: " Rafael J. Wysocki
2020-02-12  5:37   ` Mauro Carvalho Chehab
2020-02-11 23:21 ` [PATCH 19/28] drivers: mmc: " Rafael J. Wysocki
2020-02-11 23:24 ` [PATCH 20/28] drivers: net: " Rafael J. Wysocki
2020-02-11 23:48   ` Jeff Kirsher
2020-02-12  5:49   ` Kalle Valo
2020-02-11 23:26 ` [PATCH 21/28] drivers: spi: " Rafael J. Wysocki
2020-02-11 23:27 ` [PATCH 22/28] drivers: tty: " Rafael J. Wysocki
2020-02-12 10:35   ` Rafael J. Wysocki
2020-02-12 19:13   ` Greg Kroah-Hartman
2020-02-11 23:28 ` [PATCH 23/28] drivers: usb: " Rafael J. Wysocki
2020-02-12 18:38   ` Greg KH
2020-02-18  8:03     ` Peter Chen
2020-02-18  8:08       ` Greg KH
2020-02-18  8:11         ` Peter Chen
2020-02-19  1:09   ` Peter Chen
2020-02-11 23:34 ` [PATCH 24/28] sound: " Rafael J. Wysocki
2020-02-12 10:08   ` Mark Brown
2020-02-12 10:16     ` Rafael J. Wysocki
2020-02-12 10:21       ` Takashi Iwai
2020-02-12 10:18   ` Mark Brown
2020-02-11 23:35 ` [PATCH 25/28] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions Rafael J. Wysocki
2020-02-11 23:35 ` [PATCH 26/28] PM: QoS: Update file information comments Rafael J. Wysocki
2020-02-11 23:36 ` [PATCH 27/28] Documentation: PM: QoS: Update to reflect previous code changes Rafael J. Wysocki
2020-02-11 23:37 ` [PATCH 28/28] PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE Rafael J. Wysocki
2020-02-12  8:37 ` [PATCH 00/28] PM: QoS: Get rid of unuseful code and rework CPU latency QoS interface Ulf Hansson
2020-02-12  9:17   ` Rafael J. Wysocki
2020-02-12  9:39 ` Rafael J. Wysocki
2020-02-12 23:32 ` Francisco Jerez
2020-02-13  0:16   ` Rafael J. Wysocki
2020-02-13  0:37     ` Rafael J. Wysocki
2020-02-13  8:10       ` Francisco Jerez
2020-02-13 11:38         ` Rafael J. Wysocki
2020-02-21 22:10           ` Francisco Jerez
2020-02-24  0:29             ` Rafael J. Wysocki
2020-02-24 21:06               ` Francisco Jerez
2020-02-13  8:07     ` Francisco Jerez
2020-02-13 11:34       ` Rafael J. Wysocki
2020-02-13 16:35         ` Rafael J. Wysocki
2020-02-14  0:15           ` Francisco Jerez
2020-02-14 10:42             ` Rafael J. Wysocki
2020-02-14 20:32               ` Francisco Jerez
2020-02-24 10:39                 ` Rafael J. Wysocki
2020-02-24 21:16                   ` Francisco Jerez
2020-02-14  0:14         ` Francisco Jerez
2020-02-13  7:10 ` Amit Kucheria
2020-02-13 10:17   ` Rafael J. Wysocki
2020-02-13 10:22     ` Rafael J. Wysocki
2020-02-13 10:49     ` Amit Kucheria
2020-02-13 11:36       ` Rafael J. Wysocki

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='CAJZ5v0hV6iEJ=dmNMYL7RU2sQZy5rXffMbVEJ3d4Qa=r9No2OQ@mail.gmail.com' \
    --to=rafael@kernel.org \
    --cc=amit.kucheria@linaro.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    /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

Linux-PM Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-pm/0 linux-pm/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-pm linux-pm/ https://lore.kernel.org/linux-pm \
		linux-pm@vger.kernel.org
	public-inbox-index linux-pm

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-pm


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git