On Sat, 21 Nov 2020 22:25:35 +0100 Arnd Bergmann wrote:
> On Sat, Nov 21, 2020 at 6:52 PM Jakub Kicinski <k...@kernel.org> wrote:
> >
> > We're about to do some reshuffling in networking headers and make
> > some of the file lose the implicit includes. This results in:
> >
> > In file included from net/ipv4/netfilter/arp_tables.c:26:
> > include/net/compat.h:57:23: error: conflicting types for ‘uintptr_t’
> >  #define compat_uptr_t uintptr_t
> >                        ^~~~~~~~~
> > include/asm-generic/compat.h:22:13: note: in expansion of macro 
> > ‘compat_uptr_t’
> >  typedef u32 compat_uptr_t;
> >              ^~~~~~~~~~~~~
> > In file included from include/linux/limits.h:6,
> >                  from include/linux/kernel.h:7,
> >                  from net/ipv4/netfilter/arp_tables.c:14:
> > include/linux/types.h:37:24: note: previous declaration of ‘uintptr_t’ was 
> > here
> >  typedef unsigned long  uintptr_t;
> >                         ^~~~~~~~~
> >
> > Currently net/compat.h depends on linux/compat.h being included
> > first. After the upcoming changes this would break the 32bit build.
> >
> > Signed-off-by: Jakub Kicinski <k...@kernel.org>
> > ---
> > Not sure who officially maintains this. Arnd, Christoph any objections?  
> 
> Looks good to me. I would actually go one step further and completely
> remove this #ifdef, if possible. In the old days, it was not possible to
> include linux/compat.h on 32-bit architectures, but now this should just
> work without an #ifdef.

Indeed, that appears to work, v2 coming up, thanks!

Reply via email to