Re: Missing symbol on sh4: "__get_user_unknown"
John Paul Adrian Glaubitz <[email protected]>
| Newsgroups | gmane.linux.debian.ports.superh,gmane.linux.debian.devel.kernel |
|---|---|
| Message-ID | <[email protected]> |
On 5/10/20 3:27 PM, Ben Hutchings wrote: >> 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. I see, thanks a lot for the explanation. > 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. I'm fine with that. Adrian