All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <1561474998.19713.13.camel@intel.com>

diff --git a/a/1.txt b/N1/1.txt
index 1a6a94e..9cbdce0 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,4 +1,4 @@
-On ?, 2019-06-14@00:20 +0900, Akinobu Mita wrote:
+On 五, 2019-06-14 at 00:20 +0900, Akinobu Mita wrote:
 > The NVMe controller reports up to nine temperature values in the
 > SMART /
 > Health log page (the composite temperature and temperature sensor 1
@@ -13,9 +13,9 @@ On ?, 2019-06-14@00:20 +0900, Akinobu Mita wrote:
 > temperature.
 > 
 > /sys/class/thermal/thermal_zone[0-*]:
-> ????|---type: 'nvme<instance>-temp<sensor>'
-> ????|---temp: Temperature
-> ????|---trip_point_0_temp: Over temperature threshold
+>     |---type: 'nvme<instance>-temp<sensor>'
+>     |---temp: Temperature
+>     |---trip_point_0_temp: Over temperature threshold
 > 
 > The thermal_zone[0-*] contains a 'device' symlink to the
 > corresponding nvme
@@ -43,17 +43,17 @@ Eduardo, any comments?
 thanks,
 rui
 
-> Cc: Zhang Rui <rui.zhang at intel.com>
-> Cc: Eduardo Valentin <edubezval at gmail.com>
-> Cc: Daniel Lezcano <daniel.lezcano at linaro.org>
-> Cc: Keith Busch <kbusch at kernel.org>
-> Cc: Jens Axboe <axboe at fb.com>
-> Cc: Christoph Hellwig <hch at lst.de>
-> Cc: Sagi Grimberg <sagi at grimberg.me>
-> Cc: Minwoo Im <minwoo.im.dev at gmail.com>
-> Cc: Kenneth Heitke <kenneth.heitke at intel.com>
-> Cc: Chaitanya Kulkarni <Chaitanya.Kulkarni at wdc.com>
-> Signed-off-by: Akinobu Mita <akinobu.mita at gmail.com>
+> Cc: Zhang Rui <rui.zhang@intel.com>
+> Cc: Eduardo Valentin <edubezval@gmail.com>
+> Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
+> Cc: Keith Busch <kbusch@kernel.org>
+> Cc: Jens Axboe <axboe@fb.com>
+> Cc: Christoph Hellwig <hch@lst.de>
+> Cc: Sagi Grimberg <sagi@grimberg.me>
+> Cc: Minwoo Im <minwoo.im.dev@gmail.com>
+> Cc: Kenneth Heitke <kenneth.heitke@intel.com>
+> Cc: Chaitanya Kulkarni <Chaitanya.Kulkarni@wdc.com>
+> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
 > ---
 > * v4
 > - add thermal.c to hold thermal zone related code
@@ -63,81 +63,81 @@ rui
 > - support DT thermal zone device.
 > - use bitmap to iterate over implemented sensors
 > 
-> ?drivers/nvme/host/Kconfig???|???1 +
-> ?drivers/nvme/host/Makefile??|???1 +
-> ?drivers/nvme/host/core.c????|???5 +
-> ?drivers/nvme/host/nvme.h????|??35 +++++
-> ?drivers/nvme/host/thermal.c | 311
+>  drivers/nvme/host/Kconfig   |   1 +
+>  drivers/nvme/host/Makefile  |   1 +
+>  drivers/nvme/host/core.c    |   5 +
+>  drivers/nvme/host/nvme.h    |  35 +++++
+>  drivers/nvme/host/thermal.c | 311
 > ++++++++++++++++++++++++++++++++++++++++++++
-> ?include/linux/nvme.h????????|???5 +
-> ?6 files changed, 358 insertions(+)
-> ?create mode 100644 drivers/nvme/host/thermal.c
+>  include/linux/nvme.h        |   5 +
+>  6 files changed, 358 insertions(+)
+>  create mode 100644 drivers/nvme/host/thermal.c
 > 
 > diff --git a/drivers/nvme/host/Kconfig b/drivers/nvme/host/Kconfig
 > index ec43ac9..90429f8 100644
 > --- a/drivers/nvme/host/Kconfig
 > +++ b/drivers/nvme/host/Kconfig
 > @@ -1,6 +1,7 @@
-> ?# SPDX-License-Identifier: GPL-2.0-only
-> ?config NVME_CORE
-> ?	tristate
+>  # SPDX-License-Identifier: GPL-2.0-only
+>  config NVME_CORE
+>  	tristate
 > +	select THERMAL_WRITABLE_TRIPS if THERMAL
-> ?
-> ?config BLK_DEV_NVME
-> ?	tristate "NVM Express block device"
+>  
+>  config BLK_DEV_NVME
+>  	tristate "NVM Express block device"
 > diff --git a/drivers/nvme/host/Makefile b/drivers/nvme/host/Makefile
 > index 8a4b671..6018668 100644
 > --- a/drivers/nvme/host/Makefile
 > +++ b/drivers/nvme/host/Makefile
 > @@ -14,6 +14,7 @@ nvme-core-$(CONFIG_TRACING)		+=
 > trace.o
-> ?nvme-core-$(CONFIG_NVME_MULTIPATH)	+= multipath.o
-> ?nvme-core-$(CONFIG_NVM)			+= lightnvm.o
-> ?nvme-core-$(CONFIG_FAULT_INJECTION_DEBUG_FS)	+=
+>  nvme-core-$(CONFIG_NVME_MULTIPATH)	+= multipath.o
+>  nvme-core-$(CONFIG_NVM)			+= lightnvm.o
+>  nvme-core-$(CONFIG_FAULT_INJECTION_DEBUG_FS)	+=
 > fault_inject.o
 > +nvme-core-$(CONFIG_THERMAL)		+= thermal.o
-> ?
-> ?nvme-y					+= pci.o
-> ?
+>  
+>  nvme-y					+= pci.o
+>  
 > diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
 > index 7e3c786..4be339b 100644
 > --- a/drivers/nvme/host/core.c
 > +++ b/drivers/nvme/host/core.c
 > @@ -2696,6 +2696,10 @@ int nvme_init_identify(struct nvme_ctrl *ctrl)
-> ?	if (ret < 0)
-> ?		return ret;
-> ?
+>  	if (ret < 0)
+>  		return ret;
+>  
 > +	ret = nvme_thermal_zones_register(ctrl);
 > +	if (ret)
 > +		return ret;
 > +
-> ?	ctrl->identified = true;
-> ?
-> ?	return 0;
+>  	ctrl->identified = true;
+>  
+>  	return 0;
 > @@ -3699,6 +3703,7 @@ void nvme_stop_ctrl(struct nvme_ctrl *ctrl)
-> ?{
-> ?	nvme_mpath_stop(ctrl);
-> ?	nvme_stop_keep_alive(ctrl);
+>  {
+>  	nvme_mpath_stop(ctrl);
+>  	nvme_stop_keep_alive(ctrl);
 > +	nvme_thermal_zones_unregister(ctrl);
-> ?	flush_work(&ctrl->async_event_work);
-> ?	cancel_work_sync(&ctrl->fw_act_work);
-> ?}
+>  	flush_work(&ctrl->async_event_work);
+>  	cancel_work_sync(&ctrl->fw_act_work);
+>  }
 > diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h
 > index 038b893..a9c63ea 100644
 > --- a/drivers/nvme/host/nvme.h
 > +++ b/drivers/nvme/host/nvme.h
 > @@ -15,6 +15,7 @@
-> ?#include <linux/sed-opal.h>
-> ?#include <linux/fault-inject.h>
-> ?#include <linux/rcupdate.h>
+>  #include <linux/sed-opal.h>
+>  #include <linux/fault-inject.h>
+>  #include <linux/rcupdate.h>
 > +#include <linux/thermal.h>
-> ?
-> ?extern unsigned int nvme_io_timeout;
-> ?#define NVME_IO_TIMEOUT	(nvme_io_timeout * HZ)
+>  
+>  extern unsigned int nvme_io_timeout;
+>  #define NVME_IO_TIMEOUT	(nvme_io_timeout * HZ)
 > @@ -146,6 +147,13 @@ enum nvme_ctrl_state {
-> ?	NVME_CTRL_DEAD,
-> ?};
-> ?
+>  	NVME_CTRL_DEAD,
+>  };
+>  
 > +struct nvme_tz {
 > +	struct thermal_zone_params params;
 > +	struct thermal_zone_device *dev;
@@ -145,30 +145,30 @@ rui
 > +	unsigned int sensor;
 > +};
 > +
-> ?struct nvme_ctrl {
-> ?	bool comp_seen;
-> ?	enum nvme_ctrl_state state;
+>  struct nvme_ctrl {
+>  	bool comp_seen;
+>  	enum nvme_ctrl_state state;
 > @@ -247,6 +255,15 @@ struct nvme_ctrl {
-> ?
-> ?	struct page *discard_page;
-> ?	unsigned long discard_page_busy;
+>  
+>  	struct page *discard_page;
+>  	unsigned long discard_page_busy;
 > +
 > +#ifdef CONFIG_THERMAL
 > +	/*
-> +	?* tz[0]: composite temperature
-> +	?* tz[1-8]: temperature sensor 1 through 8
-> +	?*/
+> +	 * tz[0]: composite temperature
+> +	 * tz[1-8]: temperature sensor 1 through 8
+> +	 */
 > +	struct nvme_tz tz[9];
 > +	DECLARE_BITMAP(tz_enabled, 9);
 > +#endif
-> ?};
-> ?
-> ?enum nvme_iopolicy {
+>  };
+>  
+>  enum nvme_iopolicy {
 > @@ -584,4 +601,22 @@ static inline struct nvme_ns
 > *nvme_get_ns_from_dev(struct device *dev)
-> ?	return dev_to_disk(dev)->private_data;
-> ?}
-> ?
+>  	return dev_to_disk(dev)->private_data;
+>  }
+>  
 > +#ifdef CONFIG_THERMAL
 > +
 > +int nvme_thermal_zones_register(struct nvme_ctrl *ctrl);
@@ -189,7 +189,7 @@ rui
 > +
 > +#endif /* CONFIG_THERMAL */
 > +
-> ?#endif /* _NVME_H */
+>  #endif /* _NVME_H */
 > diff --git a/drivers/nvme/host/thermal.c
 > b/drivers/nvme/host/thermal.c
 > new file mode 100644
@@ -227,7 +227,7 @@ rui
 > +
 > +	ret = nvme_get_log(ctrl, NVME_NSID_ALL, NVME_LOG_SMART, 0,
 > log,
-> +			???sizeof(*log), 0);
+> +			   sizeof(*log), 0);
 > +	if (ret) {
 > +		ret = ret > 0 ? -EINVAL : ret;
 > +		goto free_log;
@@ -271,7 +271,7 @@ rui
 > +}
 > +
 > +static int nvme_tz_get_trip_type(struct thermal_zone_device *tzdev,
-> +				?int trip, enum thermal_trip_type
+> +				 int trip, enum thermal_trip_type
 > *type)
 > +{
 > +	*type = THERMAL_TRIP_ACTIVE;
@@ -280,7 +280,7 @@ rui
 > +}
 > +
 > +static int nvme_get_over_temp_thresh(struct nvme_ctrl *ctrl,
-> +				?????unsigned int sensor, int *temp)
+> +				     unsigned int sensor, int *temp)
 > +{
 > +	unsigned int threshold = sensor <<
 > NVME_TEMP_THRESH_SELECT_SHIFT;
@@ -300,7 +300,7 @@ rui
 > +}
 > +
 > +static int nvme_set_over_temp_thresh(struct nvme_ctrl *ctrl,
-> +				?????unsigned int sensor, int temp)
+> +				     unsigned int sensor, int temp)
 > +{
 > +	unsigned int threshold = sensor <<
 > NVME_TEMP_THRESH_SELECT_SHIFT;
@@ -322,7 +322,7 @@ rui
 > +}
 > +
 > +static int nvme_tz_get_trip_temp(struct thermal_zone_device *tzdev,
-> +				?int trip, int *temp)
+> +				 int trip, int *temp)
 > +{
 > +	struct nvme_tz *tz = tzdev->devdata;
 > +	unsigned int sensor = tz->sensor;
@@ -350,7 +350,7 @@ rui
 > +}
 > +
 > +static int nvme_tz_set_trip_temp(struct thermal_zone_device *tzdev,
-> +				?int trip, int temp)
+> +				 int trip, int temp)
 > +{
 > +	return nvme_tz_of_set_trip_temp(tzdev->devdata, trip, temp);
 > +}
@@ -373,7 +373,7 @@ rui
 > +};
 > +
 > +static int nvme_thermal_zone_register(struct nvme_ctrl *ctrl,
-> +				??????unsigned int sensor)
+> +				      unsigned int sensor)
 > +{
 > +	struct thermal_zone_device *tzdev;
 > +	struct nvme_tz *tz = &ctrl->tz[sensor];
@@ -387,7 +387,7 @@ rui
 > +
 > +	tzdev = thermal_zone_device_register(name, 1, 1, tz,
 > &nvme_tz_ops,
-> +					?????&tz->params, 0, 0);
+> +					     &tz->params, 0, 0);
 > +	if (IS_ERR(tzdev)) {
 > +		dev_err(ctrl->device,
 > +			"Failed to register thermal zone device:
@@ -467,7 +467,7 @@ rui
 > +
 > +	err = nvme_get_log(ctrl, NVME_NSID_ALL, NVME_LOG_SMART, 0,
 > log,
-> +			???sizeof(*log), 0);
+> +			   sizeof(*log), 0);
 > +	if (err) {
 > +		dev_err(ctrl->device, "Failed to get SMART log:
 > %d\n", err);
@@ -487,11 +487,11 @@ rui
 > +			temp = get_unaligned_le16(log->temperature);
 > +
 > +		/*
-> +		?* All implemented temperature sensors report a non-
+> +		 * All implemented temperature sensors report a non-
 > zero value
-> +		?* in temperature sensor fields in the smart log
+> +		 * in temperature sensor fields in the smart log
 > page.
-> +		?*/
+> +		 */
 > +		if (!temp)
 > +			continue;
 > +
@@ -547,14 +547,14 @@ rui
 > --- a/include/linux/nvme.h
 > +++ b/include/linux/nvme.h
 > @@ -749,6 +749,11 @@ struct nvme_write_zeroes_cmd {
-> ?
-> ?/* Features */
-> ?
+>  
+>  /* Features */
+>  
 > +enum {
 > +	NVME_TEMP_THRESH_MASK		= 0xffff,
 > +	NVME_TEMP_THRESH_SELECT_SHIFT	= 16,
 > +};
 > +
-> ?struct nvme_feat_auto_pst {
-> ?	__le64 entries[32];
-> ?};
+>  struct nvme_feat_auto_pst {
+>  	__le64 entries[32];
+>  };
diff --git a/a/content_digest b/N1/content_digest
index d9833a0..aca0bb8 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,11 +1,23 @@
  "ref\01560439238-4054-1-git-send-email-akinobu.mita@gmail.com\0"
  "ref\01560439238-4054-3-git-send-email-akinobu.mita@gmail.com\0"
- "From\0rui.zhang@intel.com (Zhang Rui)\0"
- "Subject\0[PATCH v4 2/3] nvme: add thermal zone devices\0"
+ "From\0Zhang Rui <rui.zhang@intel.com>\0"
+ "Subject\0Re: [PATCH v4 2/3] nvme: add thermal zone devices\0"
  "Date\0Tue, 25 Jun 2019 23:03:18 +0800\0"
+ "To\0Akinobu Mita <akinobu.mita@gmail.com>"
+  linux-nvme@lists.infradead.org
+ " linux-pm@vger.kernel.org\0"
+ "Cc\0Eduardo Valentin <edubezval@gmail.com>"
+  Daniel Lezcano <daniel.lezcano@linaro.org>
+  Keith Busch <kbusch@kernel.org>
+  Jens Axboe <axboe@fb.com>
+  Christoph Hellwig <hch@lst.de>
+  Sagi Grimberg <sagi@grimberg.me>
+  Minwoo Im <minwoo.im.dev@gmail.com>
+  Kenneth Heitke <kenneth.heitke@intel.com>
+ " Chaitanya Kulkarni <Chaitanya.Kulkarni@wdc.com>\0"
  "\00:1\0"
  "b\0"
- "On ?, 2019-06-14@00:20 +0900, Akinobu Mita wrote:\n"
+ "On \344\272\224, 2019-06-14 at 00:20 +0900, Akinobu Mita wrote:\n"
  "> The NVMe controller reports up to nine temperature values in the\n"
  "> SMART /\n"
  "> Health log page (the composite temperature and temperature sensor 1\n"
@@ -20,9 +32,9 @@
  "> temperature.\n"
  "> \n"
  "> /sys/class/thermal/thermal_zone[0-*]:\n"
- "> ????|---type: 'nvme<instance>-temp<sensor>'\n"
- "> ????|---temp: Temperature\n"
- "> ????|---trip_point_0_temp: Over temperature threshold\n"
+ "> \302\240\302\240\302\240\302\240|---type: 'nvme<instance>-temp<sensor>'\n"
+ "> \302\240\302\240\302\240\302\240|---temp: Temperature\n"
+ "> \302\240\302\240\302\240\302\240|---trip_point_0_temp: Over temperature threshold\n"
  "> \n"
  "> The thermal_zone[0-*] contains a 'device' symlink to the\n"
  "> corresponding nvme\n"
@@ -50,17 +62,17 @@
  "thanks,\n"
  "rui\n"
  "\n"
- "> Cc: Zhang Rui <rui.zhang at intel.com>\n"
- "> Cc: Eduardo Valentin <edubezval at gmail.com>\n"
- "> Cc: Daniel Lezcano <daniel.lezcano at linaro.org>\n"
- "> Cc: Keith Busch <kbusch at kernel.org>\n"
- "> Cc: Jens Axboe <axboe at fb.com>\n"
- "> Cc: Christoph Hellwig <hch at lst.de>\n"
- "> Cc: Sagi Grimberg <sagi at grimberg.me>\n"
- "> Cc: Minwoo Im <minwoo.im.dev at gmail.com>\n"
- "> Cc: Kenneth Heitke <kenneth.heitke at intel.com>\n"
- "> Cc: Chaitanya Kulkarni <Chaitanya.Kulkarni at wdc.com>\n"
- "> Signed-off-by: Akinobu Mita <akinobu.mita at gmail.com>\n"
+ "> Cc: Zhang Rui <rui.zhang@intel.com>\n"
+ "> Cc: Eduardo Valentin <edubezval@gmail.com>\n"
+ "> Cc: Daniel Lezcano <daniel.lezcano@linaro.org>\n"
+ "> Cc: Keith Busch <kbusch@kernel.org>\n"
+ "> Cc: Jens Axboe <axboe@fb.com>\n"
+ "> Cc: Christoph Hellwig <hch@lst.de>\n"
+ "> Cc: Sagi Grimberg <sagi@grimberg.me>\n"
+ "> Cc: Minwoo Im <minwoo.im.dev@gmail.com>\n"
+ "> Cc: Kenneth Heitke <kenneth.heitke@intel.com>\n"
+ "> Cc: Chaitanya Kulkarni <Chaitanya.Kulkarni@wdc.com>\n"
+ "> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>\n"
  "> ---\n"
  "> * v4\n"
  "> - add thermal.c to hold thermal zone related code\n"
@@ -70,81 +82,81 @@
  "> - support DT thermal zone device.\n"
  "> - use bitmap to iterate over implemented sensors\n"
  "> \n"
- "> ?drivers/nvme/host/Kconfig???|???1 +\n"
- "> ?drivers/nvme/host/Makefile??|???1 +\n"
- "> ?drivers/nvme/host/core.c????|???5 +\n"
- "> ?drivers/nvme/host/nvme.h????|??35 +++++\n"
- "> ?drivers/nvme/host/thermal.c | 311\n"
+ "> \302\240drivers/nvme/host/Kconfig\302\240\302\240\302\240|\302\240\302\240\302\2401 +\n"
+ "> \302\240drivers/nvme/host/Makefile\302\240\302\240|\302\240\302\240\302\2401 +\n"
+ "> \302\240drivers/nvme/host/core.c\302\240\302\240\302\240\302\240|\302\240\302\240\302\2405 +\n"
+ "> \302\240drivers/nvme/host/nvme.h\302\240\302\240\302\240\302\240|\302\240\302\24035 +++++\n"
+ "> \302\240drivers/nvme/host/thermal.c | 311\n"
  "> ++++++++++++++++++++++++++++++++++++++++++++\n"
- "> ?include/linux/nvme.h????????|???5 +\n"
- "> ?6 files changed, 358 insertions(+)\n"
- "> ?create mode 100644 drivers/nvme/host/thermal.c\n"
+ "> \302\240include/linux/nvme.h\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240|\302\240\302\240\302\2405 +\n"
+ "> \302\2406 files changed, 358 insertions(+)\n"
+ "> \302\240create mode 100644 drivers/nvme/host/thermal.c\n"
  "> \n"
  "> diff --git a/drivers/nvme/host/Kconfig b/drivers/nvme/host/Kconfig\n"
  "> index ec43ac9..90429f8 100644\n"
  "> --- a/drivers/nvme/host/Kconfig\n"
  "> +++ b/drivers/nvme/host/Kconfig\n"
  "> @@ -1,6 +1,7 @@\n"
- "> ?# SPDX-License-Identifier: GPL-2.0-only\n"
- "> ?config NVME_CORE\n"
- "> ?\ttristate\n"
+ "> \302\240# SPDX-License-Identifier: GPL-2.0-only\n"
+ "> \302\240config NVME_CORE\n"
+ "> \302\240\ttristate\n"
  "> +\tselect THERMAL_WRITABLE_TRIPS if THERMAL\n"
- "> ?\n"
- "> ?config BLK_DEV_NVME\n"
- "> ?\ttristate \"NVM Express block device\"\n"
+ "> \302\240\n"
+ "> \302\240config BLK_DEV_NVME\n"
+ "> \302\240\ttristate \"NVM Express block device\"\n"
  "> diff --git a/drivers/nvme/host/Makefile b/drivers/nvme/host/Makefile\n"
  "> index 8a4b671..6018668 100644\n"
  "> --- a/drivers/nvme/host/Makefile\n"
  "> +++ b/drivers/nvme/host/Makefile\n"
  "> @@ -14,6 +14,7 @@ nvme-core-$(CONFIG_TRACING)\t\t+=\n"
  "> trace.o\n"
- "> ?nvme-core-$(CONFIG_NVME_MULTIPATH)\t+= multipath.o\n"
- "> ?nvme-core-$(CONFIG_NVM)\t\t\t+= lightnvm.o\n"
- "> ?nvme-core-$(CONFIG_FAULT_INJECTION_DEBUG_FS)\t+=\n"
+ "> \302\240nvme-core-$(CONFIG_NVME_MULTIPATH)\t+= multipath.o\n"
+ "> \302\240nvme-core-$(CONFIG_NVM)\t\t\t+= lightnvm.o\n"
+ "> \302\240nvme-core-$(CONFIG_FAULT_INJECTION_DEBUG_FS)\t+=\n"
  "> fault_inject.o\n"
  "> +nvme-core-$(CONFIG_THERMAL)\t\t+= thermal.o\n"
- "> ?\n"
- "> ?nvme-y\t\t\t\t\t+= pci.o\n"
- "> ?\n"
+ "> \302\240\n"
+ "> \302\240nvme-y\t\t\t\t\t+= pci.o\n"
+ "> \302\240\n"
  "> diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c\n"
  "> index 7e3c786..4be339b 100644\n"
  "> --- a/drivers/nvme/host/core.c\n"
  "> +++ b/drivers/nvme/host/core.c\n"
  "> @@ -2696,6 +2696,10 @@ int nvme_init_identify(struct nvme_ctrl *ctrl)\n"
- "> ?\tif (ret < 0)\n"
- "> ?\t\treturn ret;\n"
- "> ?\n"
+ "> \302\240\tif (ret < 0)\n"
+ "> \302\240\t\treturn ret;\n"
+ "> \302\240\n"
  "> +\tret = nvme_thermal_zones_register(ctrl);\n"
  "> +\tif (ret)\n"
  "> +\t\treturn ret;\n"
  "> +\n"
- "> ?\tctrl->identified = true;\n"
- "> ?\n"
- "> ?\treturn 0;\n"
+ "> \302\240\tctrl->identified = true;\n"
+ "> \302\240\n"
+ "> \302\240\treturn 0;\n"
  "> @@ -3699,6 +3703,7 @@ void nvme_stop_ctrl(struct nvme_ctrl *ctrl)\n"
- "> ?{\n"
- "> ?\tnvme_mpath_stop(ctrl);\n"
- "> ?\tnvme_stop_keep_alive(ctrl);\n"
+ "> \302\240{\n"
+ "> \302\240\tnvme_mpath_stop(ctrl);\n"
+ "> \302\240\tnvme_stop_keep_alive(ctrl);\n"
  "> +\tnvme_thermal_zones_unregister(ctrl);\n"
- "> ?\tflush_work(&ctrl->async_event_work);\n"
- "> ?\tcancel_work_sync(&ctrl->fw_act_work);\n"
- "> ?}\n"
+ "> \302\240\tflush_work(&ctrl->async_event_work);\n"
+ "> \302\240\tcancel_work_sync(&ctrl->fw_act_work);\n"
+ "> \302\240}\n"
  "> diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h\n"
  "> index 038b893..a9c63ea 100644\n"
  "> --- a/drivers/nvme/host/nvme.h\n"
  "> +++ b/drivers/nvme/host/nvme.h\n"
  "> @@ -15,6 +15,7 @@\n"
- "> ?#include <linux/sed-opal.h>\n"
- "> ?#include <linux/fault-inject.h>\n"
- "> ?#include <linux/rcupdate.h>\n"
+ "> \302\240#include <linux/sed-opal.h>\n"
+ "> \302\240#include <linux/fault-inject.h>\n"
+ "> \302\240#include <linux/rcupdate.h>\n"
  "> +#include <linux/thermal.h>\n"
- "> ?\n"
- "> ?extern unsigned int nvme_io_timeout;\n"
- "> ?#define NVME_IO_TIMEOUT\t(nvme_io_timeout * HZ)\n"
+ "> \302\240\n"
+ "> \302\240extern unsigned int nvme_io_timeout;\n"
+ "> \302\240#define NVME_IO_TIMEOUT\t(nvme_io_timeout * HZ)\n"
  "> @@ -146,6 +147,13 @@ enum nvme_ctrl_state {\n"
- "> ?\tNVME_CTRL_DEAD,\n"
- "> ?};\n"
- "> ?\n"
+ "> \302\240\tNVME_CTRL_DEAD,\n"
+ "> \302\240};\n"
+ "> \302\240\n"
  "> +struct nvme_tz {\n"
  "> +\tstruct thermal_zone_params params;\n"
  "> +\tstruct thermal_zone_device *dev;\n"
@@ -152,30 +164,30 @@
  "> +\tunsigned int sensor;\n"
  "> +};\n"
  "> +\n"
- "> ?struct nvme_ctrl {\n"
- "> ?\tbool comp_seen;\n"
- "> ?\tenum nvme_ctrl_state state;\n"
+ "> \302\240struct nvme_ctrl {\n"
+ "> \302\240\tbool comp_seen;\n"
+ "> \302\240\tenum nvme_ctrl_state state;\n"
  "> @@ -247,6 +255,15 @@ struct nvme_ctrl {\n"
- "> ?\n"
- "> ?\tstruct page *discard_page;\n"
- "> ?\tunsigned long discard_page_busy;\n"
+ "> \302\240\n"
+ "> \302\240\tstruct page *discard_page;\n"
+ "> \302\240\tunsigned long discard_page_busy;\n"
  "> +\n"
  "> +#ifdef CONFIG_THERMAL\n"
  "> +\t/*\n"
- "> +\t?* tz[0]: composite temperature\n"
- "> +\t?* tz[1-8]: temperature sensor 1 through 8\n"
- "> +\t?*/\n"
+ "> +\t\302\240* tz[0]: composite temperature\n"
+ "> +\t\302\240* tz[1-8]: temperature sensor 1 through 8\n"
+ "> +\t\302\240*/\n"
  "> +\tstruct nvme_tz tz[9];\n"
  "> +\tDECLARE_BITMAP(tz_enabled, 9);\n"
  "> +#endif\n"
- "> ?};\n"
- "> ?\n"
- "> ?enum nvme_iopolicy {\n"
+ "> \302\240};\n"
+ "> \302\240\n"
+ "> \302\240enum nvme_iopolicy {\n"
  "> @@ -584,4 +601,22 @@ static inline struct nvme_ns\n"
  "> *nvme_get_ns_from_dev(struct device *dev)\n"
- "> ?\treturn dev_to_disk(dev)->private_data;\n"
- "> ?}\n"
- "> ?\n"
+ "> \302\240\treturn dev_to_disk(dev)->private_data;\n"
+ "> \302\240}\n"
+ "> \302\240\n"
  "> +#ifdef CONFIG_THERMAL\n"
  "> +\n"
  "> +int nvme_thermal_zones_register(struct nvme_ctrl *ctrl);\n"
@@ -196,7 +208,7 @@
  "> +\n"
  "> +#endif /* CONFIG_THERMAL */\n"
  "> +\n"
- "> ?#endif /* _NVME_H */\n"
+ "> \302\240#endif /* _NVME_H */\n"
  "> diff --git a/drivers/nvme/host/thermal.c\n"
  "> b/drivers/nvme/host/thermal.c\n"
  "> new file mode 100644\n"
@@ -234,7 +246,7 @@
  "> +\n"
  "> +\tret = nvme_get_log(ctrl, NVME_NSID_ALL, NVME_LOG_SMART, 0,\n"
  "> log,\n"
- "> +\t\t\t???sizeof(*log), 0);\n"
+ "> +\t\t\t\302\240\302\240\302\240sizeof(*log), 0);\n"
  "> +\tif (ret) {\n"
  "> +\t\tret = ret > 0 ? -EINVAL : ret;\n"
  "> +\t\tgoto free_log;\n"
@@ -278,7 +290,7 @@
  "> +}\n"
  "> +\n"
  "> +static int nvme_tz_get_trip_type(struct thermal_zone_device *tzdev,\n"
- "> +\t\t\t\t?int trip, enum thermal_trip_type\n"
+ "> +\t\t\t\t\302\240int trip, enum thermal_trip_type\n"
  "> *type)\n"
  "> +{\n"
  "> +\t*type = THERMAL_TRIP_ACTIVE;\n"
@@ -287,7 +299,7 @@
  "> +}\n"
  "> +\n"
  "> +static int nvme_get_over_temp_thresh(struct nvme_ctrl *ctrl,\n"
- "> +\t\t\t\t?????unsigned int sensor, int *temp)\n"
+ "> +\t\t\t\t\302\240\302\240\302\240\302\240\302\240unsigned int sensor, int *temp)\n"
  "> +{\n"
  "> +\tunsigned int threshold = sensor <<\n"
  "> NVME_TEMP_THRESH_SELECT_SHIFT;\n"
@@ -307,7 +319,7 @@
  "> +}\n"
  "> +\n"
  "> +static int nvme_set_over_temp_thresh(struct nvme_ctrl *ctrl,\n"
- "> +\t\t\t\t?????unsigned int sensor, int temp)\n"
+ "> +\t\t\t\t\302\240\302\240\302\240\302\240\302\240unsigned int sensor, int temp)\n"
  "> +{\n"
  "> +\tunsigned int threshold = sensor <<\n"
  "> NVME_TEMP_THRESH_SELECT_SHIFT;\n"
@@ -329,7 +341,7 @@
  "> +}\n"
  "> +\n"
  "> +static int nvme_tz_get_trip_temp(struct thermal_zone_device *tzdev,\n"
- "> +\t\t\t\t?int trip, int *temp)\n"
+ "> +\t\t\t\t\302\240int trip, int *temp)\n"
  "> +{\n"
  "> +\tstruct nvme_tz *tz = tzdev->devdata;\n"
  "> +\tunsigned int sensor = tz->sensor;\n"
@@ -357,7 +369,7 @@
  "> +}\n"
  "> +\n"
  "> +static int nvme_tz_set_trip_temp(struct thermal_zone_device *tzdev,\n"
- "> +\t\t\t\t?int trip, int temp)\n"
+ "> +\t\t\t\t\302\240int trip, int temp)\n"
  "> +{\n"
  "> +\treturn nvme_tz_of_set_trip_temp(tzdev->devdata, trip, temp);\n"
  "> +}\n"
@@ -380,7 +392,7 @@
  "> +};\n"
  "> +\n"
  "> +static int nvme_thermal_zone_register(struct nvme_ctrl *ctrl,\n"
- "> +\t\t\t\t??????unsigned int sensor)\n"
+ "> +\t\t\t\t\302\240\302\240\302\240\302\240\302\240\302\240unsigned int sensor)\n"
  "> +{\n"
  "> +\tstruct thermal_zone_device *tzdev;\n"
  "> +\tstruct nvme_tz *tz = &ctrl->tz[sensor];\n"
@@ -394,7 +406,7 @@
  "> +\n"
  "> +\ttzdev = thermal_zone_device_register(name, 1, 1, tz,\n"
  "> &nvme_tz_ops,\n"
- "> +\t\t\t\t\t?????&tz->params, 0, 0);\n"
+ "> +\t\t\t\t\t\302\240\302\240\302\240\302\240\302\240&tz->params, 0, 0);\n"
  "> +\tif (IS_ERR(tzdev)) {\n"
  "> +\t\tdev_err(ctrl->device,\n"
  "> +\t\t\t\"Failed to register thermal zone device:\n"
@@ -474,7 +486,7 @@
  "> +\n"
  "> +\terr = nvme_get_log(ctrl, NVME_NSID_ALL, NVME_LOG_SMART, 0,\n"
  "> log,\n"
- "> +\t\t\t???sizeof(*log), 0);\n"
+ "> +\t\t\t\302\240\302\240\302\240sizeof(*log), 0);\n"
  "> +\tif (err) {\n"
  "> +\t\tdev_err(ctrl->device, \"Failed to get SMART log:\n"
  "> %d\\n\", err);\n"
@@ -494,11 +506,11 @@
  "> +\t\t\ttemp = get_unaligned_le16(log->temperature);\n"
  "> +\n"
  "> +\t\t/*\n"
- "> +\t\t?* All implemented temperature sensors report a non-\n"
+ "> +\t\t\302\240* All implemented temperature sensors report a non-\n"
  "> zero value\n"
- "> +\t\t?* in temperature sensor fields in the smart log\n"
+ "> +\t\t\302\240* in temperature sensor fields in the smart log\n"
  "> page.\n"
- "> +\t\t?*/\n"
+ "> +\t\t\302\240*/\n"
  "> +\t\tif (!temp)\n"
  "> +\t\t\tcontinue;\n"
  "> +\n"
@@ -554,16 +566,16 @@
  "> --- a/include/linux/nvme.h\n"
  "> +++ b/include/linux/nvme.h\n"
  "> @@ -749,6 +749,11 @@ struct nvme_write_zeroes_cmd {\n"
- "> ?\n"
- "> ?/* Features */\n"
- "> ?\n"
+ "> \302\240\n"
+ "> \302\240/* Features */\n"
+ "> \302\240\n"
  "> +enum {\n"
  "> +\tNVME_TEMP_THRESH_MASK\t\t= 0xffff,\n"
  "> +\tNVME_TEMP_THRESH_SELECT_SHIFT\t= 16,\n"
  "> +};\n"
  "> +\n"
- "> ?struct nvme_feat_auto_pst {\n"
- "> ?\t__le64 entries[32];\n"
- > ?};
+ "> \302\240struct nvme_feat_auto_pst {\n"
+ "> \302\240\t__le64 entries[32];\n"
+ "> \302\240};"
 
-540f477696f198af12aa41f501e3ab23f332fbbe7ea26828843592f9236a6713
+82297eb7dd5df4c53c4ff3a62abc94c44ecbe68f59321ba4f45a024b5fafceb7

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.