Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-30 Thread Rasmus Villemoes
On Wed, Aug 27 2014, Dan Carpenter  wrote:

> On Wed, Aug 27, 2014 at 11:13:16AM +0200, Rasmus Villemoes wrote:
>> Anyway, I was also planning on sending tree-wide patches doing
>> s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
>> first wanted to get feedback on the first patch and maybe some guidance
>> on how to properly deal with the module issue (e.g., does the kernel
>> need to export a strnicmp symbol forever?).
>
> Once we remove the in kernel users then we can remove the function.
> Don't worry about out of tree modules.

OK, that makes everything simpler. Any objections to the first patch?
Andrew, could you take it through your tree?

Thanks,
Rasmus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-30 Thread Rasmus Villemoes
On Wed, Aug 27 2014, Dan Carpenter dan.carpen...@oracle.com wrote:

 On Wed, Aug 27, 2014 at 11:13:16AM +0200, Rasmus Villemoes wrote:
 Anyway, I was also planning on sending tree-wide patches doing
 s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
 first wanted to get feedback on the first patch and maybe some guidance
 on how to properly deal with the module issue (e.g., does the kernel
 need to export a strnicmp symbol forever?).

 Once we remove the in kernel users then we can remove the function.
 Don't worry about out of tree modules.

OK, that makes everything simpler. Any objections to the first patch?
Andrew, could you take it through your tree?

Thanks,
Rasmus
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Dan Carpenter
On Wed, Aug 27, 2014 at 11:13:16AM +0200, Rasmus Villemoes wrote:
> Anyway, I was also planning on sending tree-wide patches doing
> s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
> first wanted to get feedback on the first patch and maybe some guidance
> on how to properly deal with the module issue (e.g., does the kernel
> need to export a strnicmp symbol forever?).

Once we remove the in kernel users then we can remove the function.
Don't worry about out of tree modules.

regards,
dan carpenter

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Rasmus Villemoes
On Wed, Aug 27 2014, Dan Carpenter  wrote:

> On Wed, Aug 27, 2014 at 09:36:02AM +0200, Rasmus Villemoes wrote:
>> The previous patch made strnicmp into a wrapper for strncasecmp. This
>> patch makes all in-tree users of strnicmp call strncasecmp directly,
>> while still making sure that the strnicmp symbol can be used by
>> out-of-tree modules. It should be considered a temporary hack until
>> all in-tree callers have been converted.
>> 
>> Signed-off-by: Rasmus Villemoes 
>
> Won't GCC just do the right thing without this second patch?
>

Not without LTO, I think. gcc can't really know how strnicmp is
implemented, so it has to emit a call to it.

Anyway, I was also planning on sending tree-wide patches doing
s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
first wanted to get feedback on the first patch and maybe some guidance
on how to properly deal with the module issue (e.g., does the kernel
need to export a strnicmp symbol forever?).

Rasmus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Dan Carpenter
On Wed, Aug 27, 2014 at 09:36:02AM +0200, Rasmus Villemoes wrote:
> The previous patch made strnicmp into a wrapper for strncasecmp. This
> patch makes all in-tree users of strnicmp call strncasecmp directly,
> while still making sure that the strnicmp symbol can be used by
> out-of-tree modules. It should be considered a temporary hack until
> all in-tree callers have been converted.
> 
> Signed-off-by: Rasmus Villemoes 

Won't GCC just do the right thing without this second patch?

regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Rasmus Villemoes
The previous patch made strnicmp into a wrapper for strncasecmp. This
patch makes all in-tree users of strnicmp call strncasecmp directly,
while still making sure that the strnicmp symbol can be used by
out-of-tree modules. It should be considered a temporary hack until
all in-tree callers have been converted.

Signed-off-by: Rasmus Villemoes 
---
 include/linux/string.h | 2 +-
 lib/string.c   | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/linux/string.h b/include/linux/string.h
index d36977e..e6edfe5 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -41,7 +41,7 @@ extern int strcmp(const char *,const char *);
 extern int strncmp(const char *,const char *,__kernel_size_t);
 #endif
 #ifndef __HAVE_ARCH_STRNICMP
-extern int strnicmp(const char *, const char *, __kernel_size_t);
+#define strnicmp strncasecmp
 #endif
 #ifndef __HAVE_ARCH_STRCASECMP
 extern int strcasecmp(const char *s1, const char *s2);
diff --git a/lib/string.c b/lib/string.c
index 92c33e1..d171554 100644
--- a/lib/string.c
+++ b/lib/string.c
@@ -59,6 +59,7 @@ int strncasecmp(const char *s1, const char *s2, size_t len)
 EXPORT_SYMBOL(strncasecmp);
 #endif
 #ifndef __HAVE_ARCH_STRNICMP
+#undef strnicmp
 int strnicmp(const char *s1, const char *s2, size_t len)
 {
return strncasecmp(s1, s2, len);
-- 
2.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Rasmus Villemoes
The previous patch made strnicmp into a wrapper for strncasecmp. This
patch makes all in-tree users of strnicmp call strncasecmp directly,
while still making sure that the strnicmp symbol can be used by
out-of-tree modules. It should be considered a temporary hack until
all in-tree callers have been converted.

Signed-off-by: Rasmus Villemoes li...@rasmusvillemoes.dk
---
 include/linux/string.h | 2 +-
 lib/string.c   | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/linux/string.h b/include/linux/string.h
index d36977e..e6edfe5 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -41,7 +41,7 @@ extern int strcmp(const char *,const char *);
 extern int strncmp(const char *,const char *,__kernel_size_t);
 #endif
 #ifndef __HAVE_ARCH_STRNICMP
-extern int strnicmp(const char *, const char *, __kernel_size_t);
+#define strnicmp strncasecmp
 #endif
 #ifndef __HAVE_ARCH_STRCASECMP
 extern int strcasecmp(const char *s1, const char *s2);
diff --git a/lib/string.c b/lib/string.c
index 92c33e1..d171554 100644
--- a/lib/string.c
+++ b/lib/string.c
@@ -59,6 +59,7 @@ int strncasecmp(const char *s1, const char *s2, size_t len)
 EXPORT_SYMBOL(strncasecmp);
 #endif
 #ifndef __HAVE_ARCH_STRNICMP
+#undef strnicmp
 int strnicmp(const char *s1, const char *s2, size_t len)
 {
return strncasecmp(s1, s2, len);
-- 
2.0.4

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Dan Carpenter
On Wed, Aug 27, 2014 at 09:36:02AM +0200, Rasmus Villemoes wrote:
 The previous patch made strnicmp into a wrapper for strncasecmp. This
 patch makes all in-tree users of strnicmp call strncasecmp directly,
 while still making sure that the strnicmp symbol can be used by
 out-of-tree modules. It should be considered a temporary hack until
 all in-tree callers have been converted.
 
 Signed-off-by: Rasmus Villemoes li...@rasmusvillemoes.dk

Won't GCC just do the right thing without this second patch?

regards,
dan carpenter
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Rasmus Villemoes
On Wed, Aug 27 2014, Dan Carpenter dan.carpen...@oracle.com wrote:

 On Wed, Aug 27, 2014 at 09:36:02AM +0200, Rasmus Villemoes wrote:
 The previous patch made strnicmp into a wrapper for strncasecmp. This
 patch makes all in-tree users of strnicmp call strncasecmp directly,
 while still making sure that the strnicmp symbol can be used by
 out-of-tree modules. It should be considered a temporary hack until
 all in-tree callers have been converted.
 
 Signed-off-by: Rasmus Villemoes li...@rasmusvillemoes.dk

 Won't GCC just do the right thing without this second patch?


Not without LTO, I think. gcc can't really know how strnicmp is
implemented, so it has to emit a call to it.

Anyway, I was also planning on sending tree-wide patches doing
s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
first wanted to get feedback on the first patch and maybe some guidance
on how to properly deal with the module issue (e.g., does the kernel
need to export a strnicmp symbol forever?).

Rasmus
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH/RFC 2/2] lib: string: Make all calls to strnicmp into calls to strncasecmp

2014-08-27 Thread Dan Carpenter
On Wed, Aug 27, 2014 at 11:13:16AM +0200, Rasmus Villemoes wrote:
 Anyway, I was also planning on sending tree-wide patches doing
 s/strnicmp/strncasecmp/, and then removing the hack from string.h, but I
 first wanted to get feedback on the first patch and maybe some guidance
 on how to properly deal with the module issue (e.g., does the kernel
 need to export a strnicmp symbol forever?).

Once we remove the in kernel users then we can remove the function.
Don't worry about out of tree modules.

regards,
dan carpenter

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/