All of lore.kernel.org
 help / color / mirror / Atom feed
* Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
@ 2020-05-29  9:03 John Paul Adrian Glaubitz
  2020-05-29  9:59 ` Geert Uytterhoeven
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: John Paul Adrian Glaubitz @ 2020-05-29  9:03 UTC (permalink / raw)
  To: linux-sh

Hi!

Trying to build the SuperH kernel on Debian currently fails with:

	ERROR: "__get_user_unknown" [drivers/infiniband/core/ib_uverbs.ko] undefined!

when Infiniband is enabled (which is the default in Debian) during build.

I have assumed that the problem is similar to what Kuninori Morimoto fixed in the
sh-next branch [2] but I couldn't figure out where __get_user_unknown() is actually
defined within the kernel.

Does anyone know how to fix this problem?

Thanks,
Adrian

> [1] https://buildd.debian.org/status/fetch.php?pkg=linux&arch=sh4&ver=5.6.14-1&stamp\x1590304428&raw=0
> [2] https://osdn.net/projects/uclinux-h8/scm/git/linux/commits?branch=sh-next

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
  2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
@ 2020-05-29  9:59 ` Geert Uytterhoeven
  2020-05-29 10:12 ` John Paul Adrian Glaubitz
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2020-05-29  9:59 UTC (permalink / raw)
  To: linux-sh

Hi Adrian,

On Fri, May 29, 2020 at 11:03 AM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
> Trying to build the SuperH kernel on Debian currently fails with:
>
>         ERROR: "__get_user_unknown" [drivers/infiniband/core/ib_uverbs.ko] undefined!
>
> when Infiniband is enabled (which is the default in Debian) during build.
>
> I have assumed that the problem is similar to what Kuninori Morimoto fixed in the

Morimoto-san fixed a different issue.

> sh-next branch [2] but I couldn't figure out where __get_user_unknown() is actually
> defined within the kernel.

"git grep __get_user_unknown" tells you ;-)
See __get_user_size in arch/sh/include/asm/uaccess_32.h

> Does anyone know how to fix this problem?

__get_user_size() lacks a case for 64-bit values.
Interestingly, __put_user_size() has one, cfr. __put_user_u64().

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
  2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
  2020-05-29  9:59 ` Geert Uytterhoeven
@ 2020-05-29 10:12 ` John Paul Adrian Glaubitz
  2020-05-29 10:21 ` Geert Uytterhoeven
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: John Paul Adrian Glaubitz @ 2020-05-29 10:12 UTC (permalink / raw)
  To: linux-sh

Hello Geert!

On 5/29/20 11:59 AM, Geert Uytterhoeven wrote:
>> I have assumed that the problem is similar to what Kuninori Morimoto fixed in the
> 
> Morimoto-san fixed a different issue.

Yes, that's clear :).

>> sh-next branch [2] but I couldn't figure out where __get_user_unknown() is actually
>> defined within the kernel.
> 
> "git grep __get_user_unknown" tells you ;-)
> See __get_user_size in arch/sh/include/asm/uaccess_32.h
> 
>> Does anyone know how to fix this problem?
> 
> __get_user_size() lacks a case for 64-bit values.
> Interestingly, __put_user_size() has one, cfr. __put_user_u64().

Ah, so this is the problem then? I'm surprised that this issue has
surfaced only recently.

Would this be fixed by Arnds patch series to remove SH-5 support by any chance?

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
  2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
  2020-05-29  9:59 ` Geert Uytterhoeven
  2020-05-29 10:12 ` John Paul Adrian Glaubitz
@ 2020-05-29 10:21 ` Geert Uytterhoeven
  2020-05-29 10:35 ` John Paul Adrian Glaubitz
  2020-05-29 11:21 ` Geert Uytterhoeven
  4 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2020-05-29 10:21 UTC (permalink / raw)
  To: linux-sh

Hi Adrian,

On Fri, May 29, 2020 at 12:13 PM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
> On 5/29/20 11:59 AM, Geert Uytterhoeven wrote:
> >> sh-next branch [2] but I couldn't figure out where __get_user_unknown() is actually
> >> defined within the kernel.
> >
> > "git grep __get_user_unknown" tells you ;-)
> > See __get_user_size in arch/sh/include/asm/uaccess_32.h
> >
> >> Does anyone know how to fix this problem?
> >
> > __get_user_size() lacks a case for 64-bit values.
> > Interestingly, __put_user_size() has one, cfr. __put_user_u64().
>
> Ah, so this is the problem then? I'm surprised that this issue has
> surfaced only recently.
>
> Would this be fixed by Arnds patch series to remove SH-5 support by any chance?

No, it won't. As this is uaccess_32.h, i.e. for sh32.
All architectures are supposed to implement 64-bit get_user() accesses.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
  2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
                   ` (2 preceding siblings ...)
  2020-05-29 10:21 ` Geert Uytterhoeven
@ 2020-05-29 10:35 ` John Paul Adrian Glaubitz
  2020-05-29 11:21 ` Geert Uytterhoeven
  4 siblings, 0 replies; 6+ messages in thread
From: John Paul Adrian Glaubitz @ 2020-05-29 10:35 UTC (permalink / raw)
  To: linux-sh

On 5/29/20 12:21 PM, Geert Uytterhoeven wrote:
>> Would this be fixed by Arnds patch series to remove SH-5 support by any chance?
> 
> No, it won't. As this is uaccess_32.h, i.e. for sh32.
> All architectures are supposed to implement 64-bit get_user() accesses.

Ok, I assume we need an implementation like this then [1]?

Adrian

> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id²f680380ddf2f003882e59e00acd6c1952f91fc

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build fails with unknown symbol __get_user_unknown with InifiniBand enabled
  2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
                   ` (3 preceding siblings ...)
  2020-05-29 10:35 ` John Paul Adrian Glaubitz
@ 2020-05-29 11:21 ` Geert Uytterhoeven
  4 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2020-05-29 11:21 UTC (permalink / raw)
  To: linux-sh

Hi Adrian,

On Fri, May 29, 2020 at 12:35 PM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
> On 5/29/20 12:21 PM, Geert Uytterhoeven wrote:
> >> Would this be fixed by Arnds patch series to remove SH-5 support by any chance?
> >
> > No, it won't. As this is uaccess_32.h, i.e. for sh32.
> > All architectures are supposed to implement 64-bit get_user() accesses.
>
> Ok, I assume we need an implementation like this then [1]?
>
> Adrian
>
> > [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id²f680380ddf2f003882e59e00acd6c1952f91fc

Exactly.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-05-29 11:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-29  9:03 Build fails with unknown symbol __get_user_unknown with InifiniBand enabled John Paul Adrian Glaubitz
2020-05-29  9:59 ` Geert Uytterhoeven
2020-05-29 10:12 ` John Paul Adrian Glaubitz
2020-05-29 10:21 ` Geert Uytterhoeven
2020-05-29 10:35 ` John Paul Adrian Glaubitz
2020-05-29 11:21 ` Geert Uytterhoeven

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.