Re: Missing symbol on sh4: "__get_user_unknown"

Ben Hutchings <[email protected]>
Newsgroups gmane.linux.debian.ports.superh,gmane.linux.debian.devel.kernel
Message-ID <[email protected]>
On Sun, 2020-05-10 at 12:38 +0200, John Paul Adrian Glaubitz wrote:
> (Please keep me CC'ed, I'm not subscribed to debian-kernel@)
> 
> Hi!
> 
> src:linux hasn't been building on sh4 in the past for a while now due to objdump
> locking up during the build.
> 
> However, this problem has recently vanished, I assume maybe because the bug was
> fixed in binutils.
> 
> In any case, the kernel package now fails to build due to a missing symbol in the
> Infiniband core driver (see below). A simple workaround is to disable Infiniband
> support which allows me to build the kernel package normally (which I did and
> consequently uploaded).
[...]

__get_user_unknown() is never defined, but will be referenced if the
get_user() macro is invoked with a variable of unsupported size (see
arch/sh/include/asm/uaccess.h).  So my guess is that this module uses
get_user() to read a 64-bit value.  Some 32-bit architectures do now
support this operation but I'm not sure whether they are expected to.

This seems to have been introduced by commit 3a6532c9af1a, and could
probably be fixed by replacing the get_user() with a copy_from_user().

We could disable IB since it doesn't seem that likely to be used on
sh4, although I think the "verbs" layer can be used on top of Ethernet.

Ben.

-- 
Ben Hutchings
Everything should be made as simple as possible, but not simpler.
                                                      - Albert Einstein
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEErCspvTSmr92z9o8157/I7JWGEQkFAl64AVUACgkQ57/I7JWG
EQlQkRAAkTRbhPayKQn0x1WQJlekg3hCoba0us0Y+8x2yXkg6MaLGZQ4YgmI9B9q
tWTtgtkDxdJ53Y5oVUAIzoSo/+IWVNwpAuzDPpX/3q89t9yBNNyhZUKUI6fM39/j
8yVwcuicpEICfsA6QynayRjlWnhRKgY3+yT5jGWswlYVql+ngPJsZ6cg+M5W1ebd
NCIJooQyzRQsC0ySmQlMH/wysz8IOQBA5RvmShWT891zpw0jG/Im9KXTcCnXsVqZ
Af+V6QaikQOMakXwH1IRm1ET6hHNL8R1beDZAK5uipWhohAaeqfZN54ikh+MA8f1
zq554kR8/mZztH3FlYSn2cOQkrXOpV5P/WVCbZYk3qE5KxpbcsXT7OlY+REnC/R/
RnQeE8SHDUA3u2VLi6btnLXqTL7Zi1Cd8f84AshhEq4WWUBbS0gYx4d63+vEjK7w
m3Qm8sDoRAyqZNLIuKmts4FIzIWLb/EdXzZy+fjJgyFjJYa5lfvDkMLtVQpAKGc1
slHGRTRUcgLbqJVq4u+UsgLx+S7nQHewwCiM1OW3OXO+pOI4f+HMH+DMrb4MCZoJ
+j7Qi7v1bnldkpimIwaD+pVQZS8QatFUAJ1WkliGG32ouMHFbebaiyQVmlqeIT1B
x3jcy35Upxq3yLedHZX57oKsXML7Z4+ANz3R2+wnJY+95fBiIJE=
=jGCH
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.