From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [linux-next:master 7182/10906] drivers/soundwire/qcom.c:1319 qcom_swrm_probe() warn: passing zero to 'PTR_ERR'
Date: Mon, 18 Jul 2022 02:56:19 +0800 [thread overview]
Message-ID: <202207180216.4ofOSQGA-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 14234 bytes --]
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
CC: Vinod Koul <vkoul@kernel.org>
CC: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 6014cfa5bf32cf8c5c58b3cfd5ee0e1542c8a825
commit: 1fd0d85affe4d64e54b81d04bf9577e57172a341 [7182/10906] soundwire: qcom: Add flag for software clock gating check
:::::: branch date: 2 days ago
:::::: commit date: 12 days ago
config: arm-randconfig-m031-20220717 (https://download.01.org/0day-ci/archive/20220718/202207180216.4ofOSQGA-lkp(a)intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/soundwire/qcom.c:1319 qcom_swrm_probe() warn: passing zero to 'PTR_ERR'
vim +/PTR_ERR +1319 drivers/soundwire/qcom.c
abd9a6049bb59a Srinivas Kandagatla 2021-09-07 1279
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1280 static int qcom_swrm_probe(struct platform_device *pdev)
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1281 {
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1282 struct device *dev = &pdev->dev;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1283 struct sdw_master_prop *prop;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1284 struct sdw_bus_params *params;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1285 struct qcom_swrm_ctrl *ctrl;
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1286 const struct qcom_swrm_data *data;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1287 int ret;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1288 u32 val;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1289
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1290 ctrl = devm_kzalloc(dev, sizeof(*ctrl), GFP_KERNEL);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1291 if (!ctrl)
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1292 return -ENOMEM;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1293
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1294 data = of_device_get_match_data(dev);
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1295 ctrl->rows_index = sdw_find_row_index(data->default_rows);
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1296 ctrl->cols_index = sdw_find_col_index(data->default_cols);
47edc0104c61d6 Vinod Koul 2020-11-25 1297 #if IS_REACHABLE(CONFIG_SLIMBUS)
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1298 if (dev->parent->bus == &slimbus_bus) {
5bd773242f75da Jonathan Marek 2020-09-05 1299 #else
5bd773242f75da Jonathan Marek 2020-09-05 1300 if (false) {
5bd773242f75da Jonathan Marek 2020-09-05 1301 #endif
d1df23fe688b58 Jonathan Marek 2020-09-05 1302 ctrl->reg_read = qcom_swrm_ahb_reg_read;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1303 ctrl->reg_write = qcom_swrm_ahb_reg_write;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1304 ctrl->regmap = dev_get_regmap(dev->parent, NULL);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1305 if (!ctrl->regmap)
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1306 return -EINVAL;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1307 } else {
82f5c70c26511b Jonathan Marek 2020-09-05 1308 ctrl->reg_read = qcom_swrm_cpu_reg_read;
82f5c70c26511b Jonathan Marek 2020-09-05 1309 ctrl->reg_write = qcom_swrm_cpu_reg_write;
82f5c70c26511b Jonathan Marek 2020-09-05 1310 ctrl->mmio = devm_platform_ioremap_resource(pdev, 0);
82f5c70c26511b Jonathan Marek 2020-09-05 1311 if (IS_ERR(ctrl->mmio))
82f5c70c26511b Jonathan Marek 2020-09-05 1312 return PTR_ERR(ctrl->mmio);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1313 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1314
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1315 if (data->sw_clk_gate_required) {
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1316 ctrl->audio_cgcr = devm_reset_control_get_exclusive(dev, "swr_audio_cgcr");
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1317 if (IS_ERR_OR_NULL(ctrl->audio_cgcr)) {
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1318 dev_err(dev, "Failed to get cgcr reset ctrl required for SW gating\n");
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 @1319 ret = PTR_ERR(ctrl->audio_cgcr);
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1320 goto err_init;
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1321 }
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1322 }
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1323
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1324 ctrl->irq = of_irq_get(dev->of_node, 0);
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1325 if (ctrl->irq < 0) {
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1326 ret = ctrl->irq;
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1327 goto err_init;
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1328 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1329
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1330 ctrl->hclk = devm_clk_get(dev, "iface");
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1331 if (IS_ERR(ctrl->hclk)) {
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1332 ret = PTR_ERR(ctrl->hclk);
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1333 goto err_init;
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1334 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1335
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1336 clk_prepare_enable(ctrl->hclk);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1337
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1338 ctrl->dev = dev;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1339 dev_set_drvdata(&pdev->dev, ctrl);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1340 mutex_init(&ctrl->port_lock);
ddea6cf7b619ec Srinivas Kandagatla 2021-03-30 1341 init_completion(&ctrl->broadcast);
06dd96738d6183 Srinivas Kandagatla 2021-03-30 1342 init_completion(&ctrl->enumeration);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1343
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1344 ctrl->bus.ops = &qcom_swrm_ops;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1345 ctrl->bus.port_ops = &qcom_swrm_port_ops;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1346 ctrl->bus.compute_params = &qcom_swrm_compute_params;
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1347 ctrl->bus.clk_stop_timeout = 300;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1348
33ba0178888966 Srinivasa Rao Mandadapu 2022-05-18 1349 ctrl->audio_cgcr = devm_reset_control_get_exclusive(dev, "swr_audio_cgcr");
33ba0178888966 Srinivasa Rao Mandadapu 2022-05-18 1350 if (IS_ERR(ctrl->audio_cgcr))
33ba0178888966 Srinivasa Rao Mandadapu 2022-05-18 1351 dev_err(dev, "Failed to get audio_cgcr reset required for soundwire-v1.6.0\n");
33ba0178888966 Srinivasa Rao Mandadapu 2022-05-18 1352
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1353 ret = qcom_swrm_get_port_config(ctrl);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1354 if (ret)
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1355 goto err_clk;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1356
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1357 params = &ctrl->bus.params;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1358 params->max_dr_freq = DEFAULT_CLK_FREQ;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1359 params->curr_dr_freq = DEFAULT_CLK_FREQ;
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1360 params->col = data->default_cols;
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1361 params->row = data->default_rows;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1362 ctrl->reg_read(ctrl, SWRM_MCP_STATUS, &val);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1363 params->curr_bank = val & SWRM_MCP_STATUS_BANK_NUM_MASK;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1364 params->next_bank = !params->curr_bank;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1365
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1366 prop = &ctrl->bus.prop;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1367 prop->max_clk_freq = DEFAULT_CLK_FREQ;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1368 prop->num_clk_gears = 0;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1369 prop->num_clk_freq = MAX_FREQ_NUM;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1370 prop->clk_freq = &qcom_swrm_freq_tbl[0];
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1371 prop->default_col = data->default_cols;
8cb3b4e74cd810 Srinivas Kandagatla 2020-09-17 1372 prop->default_row = data->default_rows;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1373
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1374 ctrl->reg_read(ctrl, SWRM_COMP_HW_VERSION, &ctrl->version);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1375
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1376 ret = devm_request_threaded_irq(dev, ctrl->irq, NULL,
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1377 qcom_swrm_irq_handler,
4f1738f4c24b44 Samuel Zou 2020-05-06 1378 IRQF_TRIGGER_RISING |
4f1738f4c24b44 Samuel Zou 2020-05-06 1379 IRQF_ONESHOT,
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1380 "soundwire", ctrl);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1381 if (ret) {
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1382 dev_err(dev, "Failed to request soundwire irq\n");
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1383 goto err_clk;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1384 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1385
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1386 ctrl->wake_irq = of_irq_get(dev->of_node, 1);
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1387 if (ctrl->wake_irq > 0) {
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1388 ret = devm_request_threaded_irq(dev, ctrl->wake_irq, NULL,
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1389 qcom_swrm_wake_irq_handler,
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1390 IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1391 "swr_wake_irq", ctrl);
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1392 if (ret) {
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1393 dev_err(dev, "Failed to request soundwire wake irq\n");
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1394 goto err_init;
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1395 }
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1396 }
04d46a7b38375a Srinivas Kandagatla 2022-02-28 1397
5cab3ff2489ede Pierre-Louis Bossart 2020-05-19 1398 ret = sdw_bus_master_add(&ctrl->bus, dev, dev->fwnode);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1399 if (ret) {
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1400 dev_err(dev, "Failed to register Soundwire controller (%d)\n",
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1401 ret);
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1402 goto err_clk;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1403 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1404
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1405 qcom_swrm_init(ctrl);
06dd96738d6183 Srinivas Kandagatla 2021-03-30 1406 wait_for_completion_timeout(&ctrl->enumeration,
06dd96738d6183 Srinivas Kandagatla 2021-03-30 1407 msecs_to_jiffies(TIMEOUT_MS));
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1408 ret = qcom_swrm_register_dais(ctrl);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1409 if (ret)
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1410 goto err_master_add;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1411
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1412 dev_info(dev, "Qualcomm Soundwire controller v%x.%x.%x Registered\n",
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1413 (ctrl->version >> 24) & 0xff, (ctrl->version >> 16) & 0xff,
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1414 ctrl->version & 0xffff);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1415
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1416 pm_runtime_set_autosuspend_delay(dev, 3000);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1417 pm_runtime_use_autosuspend(dev);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1418 pm_runtime_mark_last_busy(dev);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1419 pm_runtime_set_active(dev);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1420 pm_runtime_enable(dev);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1421
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1422 /* Clk stop is not supported on WSA Soundwire masters */
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1423 if (ctrl->version <= 0x01030000) {
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1424 ctrl->clock_stop_not_supported = true;
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1425 } else {
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1426 ctrl->reg_read(ctrl, SWRM_COMP_MASTER_ID, &val);
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1427 if (val == MASTER_ID_WSA)
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1428 ctrl->clock_stop_not_supported = true;
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1429 }
74e79da9fd46a5 Srinivas Kandagatla 2022-02-28 1430
--
0-DAY CI Kernel Test Service
https://01.org/lkp
WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: [linux-next:master 7182/10906] drivers/soundwire/qcom.c:1319 qcom_swrm_probe() warn: passing zero to 'PTR_ERR'
Date: Mon, 18 Jul 2022 15:12:52 +0300 [thread overview]
Message-ID: <202207180216.4ofOSQGA-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2945 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 6014cfa5bf32cf8c5c58b3cfd5ee0e1542c8a825
commit: 1fd0d85affe4d64e54b81d04bf9577e57172a341 [7182/10906] soundwire: qcom: Add flag for software clock gating check
config: arm-randconfig-m031-20220717 (https://download.01.org/0day-ci/archive/20220718/202207180216.4ofOSQGA-lkp(a)intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch warnings:
drivers/soundwire/qcom.c:1319 qcom_swrm_probe() warn: passing zero to 'PTR_ERR'
vim +/PTR_ERR +1319 drivers/soundwire/qcom.c
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1305 if (!ctrl->regmap)
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1306 return -EINVAL;
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1307 } else {
82f5c70c26511b Jonathan Marek 2020-09-05 1308 ctrl->reg_read = qcom_swrm_cpu_reg_read;
82f5c70c26511b Jonathan Marek 2020-09-05 1309 ctrl->reg_write = qcom_swrm_cpu_reg_write;
82f5c70c26511b Jonathan Marek 2020-09-05 1310 ctrl->mmio = devm_platform_ioremap_resource(pdev, 0);
82f5c70c26511b Jonathan Marek 2020-09-05 1311 if (IS_ERR(ctrl->mmio))
82f5c70c26511b Jonathan Marek 2020-09-05 1312 return PTR_ERR(ctrl->mmio);
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1313 }
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1314
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1315 if (data->sw_clk_gate_required) {
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1316 ctrl->audio_cgcr = devm_reset_control_get_exclusive(dev, "swr_audio_cgcr");
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1317 if (IS_ERR_OR_NULL(ctrl->audio_cgcr)) {
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1318 dev_err(dev, "Failed to get cgcr reset ctrl required for SW gating\n");
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 @1319 ret = PTR_ERR(ctrl->audio_cgcr);
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1320 goto err_init;
If ctrl->audio_cgcr were NULL then this code would return success.
The devm_reset_control_get_exclusive() function cannot return NULL
but the static checker gets confused because the developer was confused.
The confusion is contagious!
Change the IS_ERR_OR_NULL() check to just IS_ERR().
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1321 }
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1322 }
1fd0d85affe4d6 Srinivasa Rao Mandadapu 2022-07-01 1323
02efb49aa805ce Srinivas Kandagatla 2020-01-13 1324 ctrl->irq = of_irq_get(dev->of_node, 0);
91b5cfc0209b63 Pierre-Louis Bossart 2020-04-30 1325 if (ctrl->irq < 0) {
--
0-DAY CI Kernel Test Service
https://01.org/lkp
next reply other threads:[~2022-07-17 18:56 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-17 18:56 kernel test robot [this message]
2022-07-18 12:12 ` [linux-next:master 7182/10906] drivers/soundwire/qcom.c:1319 qcom_swrm_probe() warn: passing zero to 'PTR_ERR' Dan Carpenter
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=202207180216.4ofOSQGA-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/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.