All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Matt Fleming <matt@codeblueprint.co.uk>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Theodore Ts'o <tytso@mit.edu>, Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	David Airlie <airlied@linux.ie>,
	Benjamin Tissoires <benjamin.tissoires@redhat.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Lv Zheng <lv.zheng@intel.com>, Mark Brown <broonie@kernel.org>,
	Zhang Rui <rui.zhang@intel.com>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, linux-efi@vger.kernel.org,
	linux-api@vger.kernel.org, linux-nvdimm@lists.01.org
Subject: Re: [PATCH v1 10/10] efivars: use generic UUID library
Date: Fri, 26 Feb 2016 16:29:11 +0200	[thread overview]
Message-ID: <1456496951.13244.147.camel@linux.intel.com> (raw)
In-Reply-To: <20160218150727.GK2651@codeblueprint.co.uk>

On Thu, 2016-02-18 at 15:07 +0000, Matt Fleming wrote:
> On Wed, 17 Feb, at 02:17:28PM, Andy Shevchenko wrote:
> > Instead of opencoding let's use generic UUID library functions
> > here.
> > 
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > ---
> >  fs/efivarfs/inode.c | 40 +++-------------------------------------
> >  1 file changed, 3 insertions(+), 37 deletions(-)
> > 
> > diff --git a/fs/efivarfs/inode.c b/fs/efivarfs/inode.c
> > index 3381b9d..b579e3a 100644
> > --- a/fs/efivarfs/inode.c
> > +++ b/fs/efivarfs/inode.c
> > @@ -11,6 +11,7 @@
> >  #include <linux/fs.h>
> >  #include <linux/ctype.h>
> >  #include <linux/slab.h>
> > +#include <linux/uuid.h>
> >  
> >  #include "internal.h"
> >  
> > @@ -44,11 +45,7 @@ struct inode *efivarfs_get_inode(struct
> > super_block *sb,
> >   */
> >  bool efivarfs_valid_name(const char *str, int len)
> >  {
> > -	static const char dashes[EFI_VARIABLE_GUID_LEN] = {
> > -		[8] = 1, [13] = 1, [18] = 1, [23] = 1
> > -	};
> >  	const char *s = str + len - EFI_VARIABLE_GUID_LEN;
> > -	int i;
> >  
> >  	/*
> >  	 * We need a GUID, plus at least one letter for the
> > variable name,
> > @@ -66,37 +63,7 @@ bool efivarfs_valid_name(const char *str, int
> > len)
> >  	 *
> >  	 *	12345678-1234-1234-1234-123456789abc
> >  	 */
> > -	for (i = 0; i < EFI_VARIABLE_GUID_LEN; i++) {
> > -		if (dashes[i]) {
> > -			if (*s++ != '-')
> > -				return false;
> > -		} else {
> > -			if (!isxdigit(*s++))
> > -				return false;
> > -		}
> > -	}
> > -
> > -	return true;
> > -}
> > -
> > -static void efivarfs_hex_to_guid(const char *str, efi_guid_t
> > *guid)
> > -{
> > -	guid->b[0] = hex_to_bin(str[6]) << 4 | hex_to_bin(str[7]);
> > -	guid->b[1] = hex_to_bin(str[4]) << 4 | hex_to_bin(str[5]);
> > -	guid->b[2] = hex_to_bin(str[2]) << 4 | hex_to_bin(str[3]);
> > -	guid->b[3] = hex_to_bin(str[0]) << 4 | hex_to_bin(str[1]);
> > -	guid->b[4] = hex_to_bin(str[11]) << 4 |
> > hex_to_bin(str[12]);
> > -	guid->b[5] = hex_to_bin(str[9]) << 4 |
> > hex_to_bin(str[10]);
> > -	guid->b[6] = hex_to_bin(str[16]) << 4 |
> > hex_to_bin(str[17]);
> > -	guid->b[7] = hex_to_bin(str[14]) << 4 |
> > hex_to_bin(str[15]);
> > -	guid->b[8] = hex_to_bin(str[19]) << 4 |
> > hex_to_bin(str[20]);
> > -	guid->b[9] = hex_to_bin(str[21]) << 4 |
> > hex_to_bin(str[22]);
> > -	guid->b[10] = hex_to_bin(str[24]) << 4 |
> > hex_to_bin(str[25]);
> > -	guid->b[11] = hex_to_bin(str[26]) << 4 |
> > hex_to_bin(str[27]);
> > -	guid->b[12] = hex_to_bin(str[28]) << 4 |
> > hex_to_bin(str[29]);
> > -	guid->b[13] = hex_to_bin(str[30]) << 4 |
> > hex_to_bin(str[31]);
> > -	guid->b[14] = hex_to_bin(str[32]) << 4 |
> > hex_to_bin(str[33]);
> > -	guid->b[15] = hex_to_bin(str[34]) << 4 |
> > hex_to_bin(str[35]);
> > +	return uuid_is_valid(s);
> >  }
> 
> I think you've confused yourself here. You've inverted the return
> value meaning for efivarfs_valid_name().
> 
> Normally I would expect this change to be correct but uuid_is_valid()
> returns 0 for success, -EINVAL for failure. Either the function is
> misnamed or the return value semantics are wrong.

Oops, thanks for noticing this. Right the return value should be
aligned.

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Matt Fleming <matt@codeblueprint.co.uk>
Cc: linux-efi@vger.kernel.org, David Airlie <airlied@linux.ie>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	dri-devel@lists.freedesktop.org,
	Benjamin Tissoires <benjamin.tissoires@redhat.com>,
	Lv Zheng <lv.zheng@intel.com>, Arnd Bergmann <arnd@arndb.de>,
	linux-nvdimm@lists.01.org, linux-acpi@vger.kernel.org,
	Zhang Rui <rui.zhang@intel.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	Mark Brown <broonie@kernel.org>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Theodore Ts'o <tytso@mit.edu>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH v1 10/10] efivars: use generic UUID library
Date: Fri, 26 Feb 2016 16:29:11 +0200	[thread overview]
Message-ID: <1456496951.13244.147.camel@linux.intel.com> (raw)
In-Reply-To: <20160218150727.GK2651@codeblueprint.co.uk>

On Thu, 2016-02-18 at 15:07 +0000, Matt Fleming wrote:
> On Wed, 17 Feb, at 02:17:28PM, Andy Shevchenko wrote:
> > Instead of opencoding let's use generic UUID library functions
> > here.
> > 
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > ---
> >  fs/efivarfs/inode.c | 40 +++-------------------------------------
> >  1 file changed, 3 insertions(+), 37 deletions(-)
> > 
> > diff --git a/fs/efivarfs/inode.c b/fs/efivarfs/inode.c
> > index 3381b9d..b579e3a 100644
> > --- a/fs/efivarfs/inode.c
> > +++ b/fs/efivarfs/inode.c
> > @@ -11,6 +11,7 @@
> >  #include <linux/fs.h>
> >  #include <linux/ctype.h>
> >  #include <linux/slab.h>
> > +#include <linux/uuid.h>
> >  
> >  #include "internal.h"
> >  
> > @@ -44,11 +45,7 @@ struct inode *efivarfs_get_inode(struct
> > super_block *sb,
> >   */
> >  bool efivarfs_valid_name(const char *str, int len)
> >  {
> > -	static const char dashes[EFI_VARIABLE_GUID_LEN] = {
> > -		[8] = 1, [13] = 1, [18] = 1, [23] = 1
> > -	};
> >  	const char *s = str + len - EFI_VARIABLE_GUID_LEN;
> > -	int i;
> >  
> >  	/*
> >  	 * We need a GUID, plus at least one letter for the
> > variable name,
> > @@ -66,37 +63,7 @@ bool efivarfs_valid_name(const char *str, int
> > len)
> >  	 *
> >  	 *	12345678-1234-1234-1234-123456789abc
> >  	 */
> > -	for (i = 0; i < EFI_VARIABLE_GUID_LEN; i++) {
> > -		if (dashes[i]) {
> > -			if (*s++ != '-')
> > -				return false;
> > -		} else {
> > -			if (!isxdigit(*s++))
> > -				return false;
> > -		}
> > -	}
> > -
> > -	return true;
> > -}
> > -
> > -static void efivarfs_hex_to_guid(const char *str, efi_guid_t
> > *guid)
> > -{
> > -	guid->b[0] = hex_to_bin(str[6]) << 4 | hex_to_bin(str[7]);
> > -	guid->b[1] = hex_to_bin(str[4]) << 4 | hex_to_bin(str[5]);
> > -	guid->b[2] = hex_to_bin(str[2]) << 4 | hex_to_bin(str[3]);
> > -	guid->b[3] = hex_to_bin(str[0]) << 4 | hex_to_bin(str[1]);
> > -	guid->b[4] = hex_to_bin(str[11]) << 4 |
> > hex_to_bin(str[12]);
> > -	guid->b[5] = hex_to_bin(str[9]) << 4 |
> > hex_to_bin(str[10]);
> > -	guid->b[6] = hex_to_bin(str[16]) << 4 |
> > hex_to_bin(str[17]);
> > -	guid->b[7] = hex_to_bin(str[14]) << 4 |
> > hex_to_bin(str[15]);
> > -	guid->b[8] = hex_to_bin(str[19]) << 4 |
> > hex_to_bin(str[20]);
> > -	guid->b[9] = hex_to_bin(str[21]) << 4 |
> > hex_to_bin(str[22]);
> > -	guid->b[10] = hex_to_bin(str[24]) << 4 |
> > hex_to_bin(str[25]);
> > -	guid->b[11] = hex_to_bin(str[26]) << 4 |
> > hex_to_bin(str[27]);
> > -	guid->b[12] = hex_to_bin(str[28]) << 4 |
> > hex_to_bin(str[29]);
> > -	guid->b[13] = hex_to_bin(str[30]) << 4 |
> > hex_to_bin(str[31]);
> > -	guid->b[14] = hex_to_bin(str[32]) << 4 |
> > hex_to_bin(str[33]);
> > -	guid->b[15] = hex_to_bin(str[34]) << 4 |
> > hex_to_bin(str[35]);
> > +	return uuid_is_valid(s);
> >  }
> 
> I think you've confused yourself here. You've inverted the return
> value meaning for efivarfs_valid_name().
> 
> Normally I would expect this change to be correct but uuid_is_valid()
> returns 0 for success, -EINVAL for failure. Either the function is
> misnamed or the return value semantics are wrong.

Oops, thanks for noticing this. Right the return value should be
aligned.

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Matt Fleming <matt@codeblueprint.co.uk>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>,
	"Theodore Ts'o" <tytso@mit.edu>, Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	Jani Nikula <jani.nikula@linux.intel.com>,
	David Airlie <airlied@linux.ie>,
	Benjamin Tissoires <benjamin.tissoires@redhat.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Mathias Nyman <mathias.nyman@intel.com>,
	Lv Zheng <lv.zheng@intel.com>, Mark Brown <broonie@kernel.org>,
	Zhang Rui <rui.zhang@intel.com>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org,
	dri-devel@lists.freedesktop.org, linux-efi@vger.kernel.org,
	linux-api@vger.kernel.org, linux-nvdimm@ml01.01.org
Subject: Re: [PATCH v1 10/10] efivars: use generic UUID library
Date: Fri, 26 Feb 2016 16:29:11 +0200	[thread overview]
Message-ID: <1456496951.13244.147.camel@linux.intel.com> (raw)
In-Reply-To: <20160218150727.GK2651@codeblueprint.co.uk>

On Thu, 2016-02-18 at 15:07 +0000, Matt Fleming wrote:
> On Wed, 17 Feb, at 02:17:28PM, Andy Shevchenko wrote:
> > Instead of opencoding let's use generic UUID library functions
> > here.
> > 
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > ---
> >  fs/efivarfs/inode.c | 40 +++-------------------------------------
> >  1 file changed, 3 insertions(+), 37 deletions(-)
> > 
> > diff --git a/fs/efivarfs/inode.c b/fs/efivarfs/inode.c
> > index 3381b9d..b579e3a 100644
> > --- a/fs/efivarfs/inode.c
> > +++ b/fs/efivarfs/inode.c
> > @@ -11,6 +11,7 @@
> >  #include <linux/fs.h>
> >  #include <linux/ctype.h>
> >  #include <linux/slab.h>
> > +#include <linux/uuid.h>
> >  
> >  #include "internal.h"
> >  
> > @@ -44,11 +45,7 @@ struct inode *efivarfs_get_inode(struct
> > super_block *sb,
> >   */
> >  bool efivarfs_valid_name(const char *str, int len)
> >  {
> > -	static const char dashes[EFI_VARIABLE_GUID_LEN] = {
> > -		[8] = 1, [13] = 1, [18] = 1, [23] = 1
> > -	};
> >  	const char *s = str + len - EFI_VARIABLE_GUID_LEN;
> > -	int i;
> >  
> >  	/*
> >  	 * We need a GUID, plus at least one letter for the
> > variable name,
> > @@ -66,37 +63,7 @@ bool efivarfs_valid_name(const char *str, int
> > len)
> >  	 *
> >  	 *	12345678-1234-1234-1234-123456789abc
> >  	 */
> > -	for (i = 0; i < EFI_VARIABLE_GUID_LEN; i++) {
> > -		if (dashes[i]) {
> > -			if (*s++ != '-')
> > -				return false;
> > -		} else {
> > -			if (!isxdigit(*s++))
> > -				return false;
> > -		}
> > -	}
> > -
> > -	return true;
> > -}
> > -
> > -static void efivarfs_hex_to_guid(const char *str, efi_guid_t
> > *guid)
> > -{
> > -	guid->b[0] = hex_to_bin(str[6]) << 4 | hex_to_bin(str[7]);
> > -	guid->b[1] = hex_to_bin(str[4]) << 4 | hex_to_bin(str[5]);
> > -	guid->b[2] = hex_to_bin(str[2]) << 4 | hex_to_bin(str[3]);
> > -	guid->b[3] = hex_to_bin(str[0]) << 4 | hex_to_bin(str[1]);
> > -	guid->b[4] = hex_to_bin(str[11]) << 4 |
> > hex_to_bin(str[12]);
> > -	guid->b[5] = hex_to_bin(str[9]) << 4 |
> > hex_to_bin(str[10]);
> > -	guid->b[6] = hex_to_bin(str[16]) << 4 |
> > hex_to_bin(str[17]);
> > -	guid->b[7] = hex_to_bin(str[14]) << 4 |
> > hex_to_bin(str[15]);
> > -	guid->b[8] = hex_to_bin(str[19]) << 4 |
> > hex_to_bin(str[20]);
> > -	guid->b[9] = hex_to_bin(str[21]) << 4 |
> > hex_to_bin(str[22]);
> > -	guid->b[10] = hex_to_bin(str[24]) << 4 |
> > hex_to_bin(str[25]);
> > -	guid->b[11] = hex_to_bin(str[26]) << 4 |
> > hex_to_bin(str[27]);
> > -	guid->b[12] = hex_to_bin(str[28]) << 4 |
> > hex_to_bin(str[29]);
> > -	guid->b[13] = hex_to_bin(str[30]) << 4 |
> > hex_to_bin(str[31]);
> > -	guid->b[14] = hex_to_bin(str[32]) << 4 |
> > hex_to_bin(str[33]);
> > -	guid->b[15] = hex_to_bin(str[34]) << 4 |
> > hex_to_bin(str[35]);
> > +	return uuid_is_valid(s);
> >  }
> 
> I think you've confused yourself here. You've inverted the return
> value meaning for efivarfs_valid_name().
> 
> Normally I would expect this change to be correct but uuid_is_valid()
> returns 0 for success, -EINVAL for failure. Either the function is
> misnamed or the return value semantics are wrong.

Oops, thanks for noticing this. Right the return value should be
aligned.

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

  reply	other threads:[~2016-02-26 14:29 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-17 12:17 [PATCH v1 00/10] uuid: convert users to generic UUID API Andy Shevchenko
2016-02-17 12:17 ` Andy Shevchenko
     [not found] ` <1455711448-124103-1-git-send-email-andriy.shevchenko-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-02-17 12:17   ` [PATCH v1 01/10] lib/vsprintf: simplify UUID printing Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17   ` [PATCH v1 03/10] lib/uuid: introduce few more generic helpers for UUID Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17   ` [PATCH v1 05/10] ACPI: switch to use generic UUID API Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 17:49     ` Dan Williams
2016-02-17 17:49       ` Dan Williams
2016-02-17 17:49       ` Dan Williams
     [not found]       ` <CAPcyv4inMjmt8eH_=bNE_=NMeYGmS75B5LxB=f7Cd762=3UKyQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-02-26 13:46         ` Andy Shevchenko
2016-02-26 13:46           ` Andy Shevchenko
2016-02-26 13:46           ` Andy Shevchenko
2016-02-17 12:17   ` [PATCH v1 10/10] efivars: use generic UUID library Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-17 12:17     ` Andy Shevchenko
2016-02-18 15:07     ` Matt Fleming
2016-02-18 15:07       ` Matt Fleming
2016-02-26 14:29       ` Andy Shevchenko [this message]
2016-02-26 14:29         ` Andy Shevchenko
2016-02-26 14:29         ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 02/10] lib/uuid: move generate_random_uuid() to uuid.c Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 04/10] lib/uuid: remove FSF address Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 06/10] device property: switch to use UUID API Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko
     [not found]   ` <1455711448-124103-7-git-send-email-andriy.shevchenko-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-02-18  0:03     ` Rafael J. Wysocki
2016-02-18  0:03       ` Rafael J. Wysocki
2016-02-18  0:03       ` Rafael J. Wysocki
     [not found]       ` <7544228.v4QPX4F7J7-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2016-02-26 14:11         ` Andy Shevchenko
2016-02-26 14:11           ` Andy Shevchenko
2016-02-26 14:11           ` Andy Shevchenko
2016-04-07 16:41           ` Andy Shevchenko
2016-04-07 16:41             ` Andy Shevchenko
2016-04-07 16:41             ` Andy Shevchenko
     [not found]             ` <1460047286.6620.26.camel-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-04-08  1:27               ` Huang, Ying
2016-04-08  1:27                 ` Huang, Ying
2016-04-08  1:27                 ` Huang, Ying
     [not found]                 ` <877fg828lr.fsf-5/hDr2MS57EDqwDYnZuMFFaTQe2KTcn/@public.gmane.org>
2016-04-08 10:00                   ` Andy Shevchenko
2016-04-08 10:00                     ` Andy Shevchenko
2016-04-08 10:00                     ` Andy Shevchenko
     [not found]                     ` <1460109638.6620.41.camel-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-04-08 23:46                       ` huang ying
2016-04-08 23:46                         ` huang ying
2016-04-08 23:46                         ` huang ying
2016-02-18 11:07   ` Mika Westerberg
2016-02-18 11:07     ` Mika Westerberg
     [not found]     ` <20160218110754.GG1742-3PARRvDOhMZrdx17CPfAsdBPR1lH4CV8@public.gmane.org>
2016-02-26 14:28       ` Andy Shevchenko
2016-02-26 14:28         ` Andy Shevchenko
2016-02-26 14:28         ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 07/10] sysctl: drop away useless label Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 08/10] sysctl: use generic UUID library Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko
2016-02-17 12:17 ` [PATCH v1 09/10] efi: redefine type, constant, macro from generic code Andy Shevchenko
2016-02-17 12:17   ` Andy Shevchenko

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=1456496951.13244.147.camel@linux.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=airlied@linux.ie \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=benjamin.tissoires@redhat.com \
    --cc=bhelgaas@google.com \
    --cc=broonie@kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jani.nikula@linux.intel.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=lv.zheng@intel.com \
    --cc=mathias.nyman@intel.com \
    --cc=matt@codeblueprint.co.uk \
    --cc=mika.westerberg@linux.intel.com \
    --cc=rjw@rjwysocki.net \
    --cc=rui.zhang@intel.com \
    --cc=tytso@mit.edu \
    /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.