Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Wed, May 16, 2018 at 03:59:01PM +0900, Masahiro Yamada wrote: > 2018-05-16 15:26 GMT+09:00 Greg Kroah-Hartman: > > On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: > >> Hi Andrew, > >> > >> 2018-05-16 7:59 GMT+09:00 Andrew Morton : > >> > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > >> > wrote: > >> > > >> >> This header file is not exported. It is safe to reference types > >> >> without double-underscore prefix. > >> >> > >> > > >> > It may be safe to do this, but why is it desirable? > >> > >> > >> It is shorter. That's all. > >> If it is a noise commit, please feel free to drop it. > >> > >> > >> BTW, a large amount of kernel-space code > >> uses underscore-prefixed types. > > > > Sometimes it can/should do that. > > I agree that UAPI headers must do that. > > If you mean "it should even for non-exported code", > I have no idea why. > > > > >> I wonder if we could check it by checkpatch.pl or something... > > > > You do understand the difference between the two types and why/when they > > are needed, right? I don't think checkpatch.pl can determine if data is > > coming from userspace or not very easily to make this a simple perl > > script check :( > > > I am getting puzzled... > > It sounds like you are talking about __user or __kernel. > If so, it is a matter of sparse tool > but I believe it is a different topic. > > > If I understand correctly, > using 'u32' is safe outside of 'include/uapi/' and > arch/$(SRCARCH)/include/uapi/ > > Why can't a simple script do that? > > Am I missing something? I think we are talking past each other here :) __ types are for when the variable crosses the user/kernel boundry, that's all. ioctl structures are one such example, as are some of these specific userspace-facing types that you are changing here. We have loads of ioctl structures that are _not_ in uapi/ which is a totally different problem that I know some people are looking at fixing up, so a checkpatch.pl rule would not be good here. There's also places where data comes in from hardware that use the __ types, but those are usually a bit more rare. thanks, greg k-h
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Wed, May 16, 2018 at 03:59:01PM +0900, Masahiro Yamada wrote: > 2018-05-16 15:26 GMT+09:00 Greg Kroah-Hartman : > > On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: > >> Hi Andrew, > >> > >> 2018-05-16 7:59 GMT+09:00 Andrew Morton : > >> > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > >> > wrote: > >> > > >> >> This header file is not exported. It is safe to reference types > >> >> without double-underscore prefix. > >> >> > >> > > >> > It may be safe to do this, but why is it desirable? > >> > >> > >> It is shorter. That's all. > >> If it is a noise commit, please feel free to drop it. > >> > >> > >> BTW, a large amount of kernel-space code > >> uses underscore-prefixed types. > > > > Sometimes it can/should do that. > > I agree that UAPI headers must do that. > > If you mean "it should even for non-exported code", > I have no idea why. > > > > >> I wonder if we could check it by checkpatch.pl or something... > > > > You do understand the difference between the two types and why/when they > > are needed, right? I don't think checkpatch.pl can determine if data is > > coming from userspace or not very easily to make this a simple perl > > script check :( > > > I am getting puzzled... > > It sounds like you are talking about __user or __kernel. > If so, it is a matter of sparse tool > but I believe it is a different topic. > > > If I understand correctly, > using 'u32' is safe outside of 'include/uapi/' and > arch/$(SRCARCH)/include/uapi/ > > Why can't a simple script do that? > > Am I missing something? I think we are talking past each other here :) __ types are for when the variable crosses the user/kernel boundry, that's all. ioctl structures are one such example, as are some of these specific userspace-facing types that you are changing here. We have loads of ioctl structures that are _not_ in uapi/ which is a totally different problem that I know some people are looking at fixing up, so a checkpatch.pl rule would not be good here. There's also places where data comes in from hardware that use the __ types, but those are usually a bit more rare. thanks, greg k-h
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
2018-05-16 15:26 GMT+09:00 Greg Kroah-Hartman: > On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: >> Hi Andrew, >> >> 2018-05-16 7:59 GMT+09:00 Andrew Morton : >> > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada >> > wrote: >> > >> >> This header file is not exported. It is safe to reference types >> >> without double-underscore prefix. >> >> >> > >> > It may be safe to do this, but why is it desirable? >> >> >> It is shorter. That's all. >> If it is a noise commit, please feel free to drop it. >> >> >> BTW, a large amount of kernel-space code >> uses underscore-prefixed types. > > Sometimes it can/should do that. I agree that UAPI headers must do that. If you mean "it should even for non-exported code", I have no idea why. >> I wonder if we could check it by checkpatch.pl or something... > > You do understand the difference between the two types and why/when they > are needed, right? I don't think checkpatch.pl can determine if data is > coming from userspace or not very easily to make this a simple perl > script check :( I am getting puzzled... It sounds like you are talking about __user or __kernel. If so, it is a matter of sparse tool but I believe it is a different topic. If I understand correctly, using 'u32' is safe outside of 'include/uapi/' and arch/$(SRCARCH)/include/uapi/ Why can't a simple script do that? Am I missing something? > thanks, > > greg k-h -- Best Regards Masahiro Yamada
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
2018-05-16 15:26 GMT+09:00 Greg Kroah-Hartman : > On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: >> Hi Andrew, >> >> 2018-05-16 7:59 GMT+09:00 Andrew Morton : >> > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada >> > wrote: >> > >> >> This header file is not exported. It is safe to reference types >> >> without double-underscore prefix. >> >> >> > >> > It may be safe to do this, but why is it desirable? >> >> >> It is shorter. That's all. >> If it is a noise commit, please feel free to drop it. >> >> >> BTW, a large amount of kernel-space code >> uses underscore-prefixed types. > > Sometimes it can/should do that. I agree that UAPI headers must do that. If you mean "it should even for non-exported code", I have no idea why. >> I wonder if we could check it by checkpatch.pl or something... > > You do understand the difference between the two types and why/when they > are needed, right? I don't think checkpatch.pl can determine if data is > coming from userspace or not very easily to make this a simple perl > script check :( I am getting puzzled... It sounds like you are talking about __user or __kernel. If so, it is a matter of sparse tool but I believe it is a different topic. If I understand correctly, using 'u32' is safe outside of 'include/uapi/' and arch/$(SRCARCH)/include/uapi/ Why can't a simple script do that? Am I missing something? > thanks, > > greg k-h -- Best Regards Masahiro Yamada
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: > Hi Andrew, > > 2018-05-16 7:59 GMT+09:00 Andrew Morton: > > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > > wrote: > > > >> This header file is not exported. It is safe to reference types > >> without double-underscore prefix. > >> > > > > It may be safe to do this, but why is it desirable? > > > It is shorter. That's all. > If it is a noise commit, please feel free to drop it. > > > BTW, a large amount of kernel-space code > uses underscore-prefixed types. Sometimes it can/should do that. > I wonder if we could check it by checkpatch.pl or something... You do understand the difference between the two types and why/when they are needed, right? I don't think checkpatch.pl can determine if data is coming from userspace or not very easily to make this a simple perl script check :( thanks, greg k-h
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Wed, May 16, 2018 at 10:07:50AM +0900, Masahiro Yamada wrote: > Hi Andrew, > > 2018-05-16 7:59 GMT+09:00 Andrew Morton : > > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > > wrote: > > > >> This header file is not exported. It is safe to reference types > >> without double-underscore prefix. > >> > > > > It may be safe to do this, but why is it desirable? > > > It is shorter. That's all. > If it is a noise commit, please feel free to drop it. > > > BTW, a large amount of kernel-space code > uses underscore-prefixed types. Sometimes it can/should do that. > I wonder if we could check it by checkpatch.pl or something... You do understand the difference between the two types and why/when they are needed, right? I don't think checkpatch.pl can determine if data is coming from userspace or not very easily to make this a simple perl script check :( thanks, greg k-h
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
Hi Andrew, 2018-05-16 7:59 GMT+09:00 Andrew Morton: > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > wrote: > >> This header file is not exported. It is safe to reference types >> without double-underscore prefix. >> > > It may be safe to do this, but why is it desirable? It is shorter. That's all. If it is a noise commit, please feel free to drop it. BTW, a large amount of kernel-space code uses underscore-prefixed types. I wonder if we could check it by checkpatch.pl or something... >> index be15897..9834e90 100644 >> --- a/include/linux/types.h >> +++ b/include/linux/types.h >> @@ -10,14 +10,14 @@ >> #define DECLARE_BITMAP(name,bits) \ >> unsigned long name[BITS_TO_LONGS(bits)] >> >> -typedef __u32 __kernel_dev_t; >> +typedef u32 __kernel_dev_t; >> >> ... >> -- Best Regards Masahiro Yamada
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
Hi Andrew, 2018-05-16 7:59 GMT+09:00 Andrew Morton : > On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada > wrote: > >> This header file is not exported. It is safe to reference types >> without double-underscore prefix. >> > > It may be safe to do this, but why is it desirable? It is shorter. That's all. If it is a noise commit, please feel free to drop it. BTW, a large amount of kernel-space code uses underscore-prefixed types. I wonder if we could check it by checkpatch.pl or something... >> index be15897..9834e90 100644 >> --- a/include/linux/types.h >> +++ b/include/linux/types.h >> @@ -10,14 +10,14 @@ >> #define DECLARE_BITMAP(name,bits) \ >> unsigned long name[BITS_TO_LONGS(bits)] >> >> -typedef __u32 __kernel_dev_t; >> +typedef u32 __kernel_dev_t; >> >> ... >> -- Best Regards Masahiro Yamada
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamadawrote: > This header file is not exported. It is safe to reference types > without double-underscore prefix. > It may be safe to do this, but why is it desirable? > index be15897..9834e90 100644 > --- a/include/linux/types.h > +++ b/include/linux/types.h > @@ -10,14 +10,14 @@ > #define DECLARE_BITMAP(name,bits) \ > unsigned long name[BITS_TO_LONGS(bits)] > > -typedef __u32 __kernel_dev_t; > +typedef u32 __kernel_dev_t; > > ... >
Re: [PATCH 3/3] types: use fixed width types without double-underscore prefix
On Tue, 15 May 2018 11:22:05 +0900 Masahiro Yamada wrote: > This header file is not exported. It is safe to reference types > without double-underscore prefix. > It may be safe to do this, but why is it desirable? > index be15897..9834e90 100644 > --- a/include/linux/types.h > +++ b/include/linux/types.h > @@ -10,14 +10,14 @@ > #define DECLARE_BITMAP(name,bits) \ > unsigned long name[BITS_TO_LONGS(bits)] > > -typedef __u32 __kernel_dev_t; > +typedef u32 __kernel_dev_t; > > ... >