[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdV2Nh6ZZ-0tW0dCt5OoBH5_OrcpON32X1YJBQYgF=eywA@mail.gmail.com>
Date: Tue, 10 Dec 2024 10:02:24 +0100
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Greg KH <gregkh@...uxfoundation.org>
Cc: Guenter Roeck <linux@...ck-us.net>, Dave Penkler <dpenkler@...il.com>,
linux-staging@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5] staging: gpib: Fix i386 build issue
Hi Greg,
On Tue, Dec 10, 2024 at 9:39 AM Greg KH <gregkh@...uxfoundation.org> wrote:
> On Tue, Dec 10, 2024 at 08:52:08AM +0100, Geert Uytterhoeven wrote:
> > On Mon, Dec 9, 2024 at 5:18 PM Guenter Roeck <linux@...ck-us.net> wrote:
> > > The underlying problem is that the code uses a pointer to store the physical
> > > address. That doesn't work if sizeof(pointer) < sizeof(physical address),
> > > which affects systems with X86_PAE enabled. I have not seen the problem
> > > anywhere else.
> >
> > I could reproduce the build issue on ARM, with CONFIG_ARM_LPAE=y,
> > which is not enabled by allmodconfig.
>
> So does that mean this patch is incorrect?
Purely from an arch-agnostic LPAE PoV, it should be:
depends on 64BIT || !PHYS_ADDR_T_64BIT
However, that assumes the driver actually works on 64-bit or non-x86.
Perhaps people keep an old i386 to control their GPIB gear?
The drivers do not use ioremap(), but just cast the PCI resource
addresses to void * pointers. No idea if that works on x86_64.
It will probably crash spectacularly on non-x86...
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists