Fedora – 28 Released, but Fails with GCC 8 and Kernel 4.16…
Fedora 28 has been released, but this includes GCC 8 (8.0.1) which – currently – is not capable of compiling Kernel 4.16 as-is (tested with 4.16.6):
.................................. CC /usr/src/linux-4.16.6/tools/objtool/objtool.o CC /usr/src/linux-4.16.6/tools/objtool/libstring.o CC /usr/src/linux-4.16.6/tools/objtool/str_error_r.o ../lib/str_error_r.c: In function ‘str_error_r’: ../lib/str_error_r.c:25:3: error: passing argument 1 to restrict-qualified parameter aliases with argument 5 [-Werror=restrict] snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err); ^~~~~~~~ HOSTCC scripts/mod/file2alias.o cc1: all warnings being treated as errors .....................................
See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84919
Kernel 4.17 (4.17-rc3) does compile, but with multiple warnings:
..................... CC lib/earlycpio.o drivers/dma/dmaengine.o: warning: objtool: dma_async_device_register()+0x22: sibling call from callable instruction with modified stack frame lib/earlycpio.o: warning: objtool: find_cpio_data()+0x218: sibling call from callable instruction with modified stack frame CC lib/extable.o CC drivers/dma/virt-dma.o fs/nfsd/vfs.o: warning: objtool: nfsd_lookup_dentry()+0x6d: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_vfs_write()+0x230: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_symlink()+0x92: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_link()+0xdd: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_unlink()+0x8b: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_setattr()+0x140: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: do_nfsd_create()+0x114: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_create()+0xbf: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_racache_shutdown()+0xb: sibling call from callable instruction with modified stack frame fs/nfsd/vfs.o: warning: objtool: nfsd_racache_init()+0x3e: sibling call from callable instruction with modified stack frame CC [M] fs/nfsd/export.o .................................... CC lib/kobject.o In function ‘fill_kobj_path’, inlined from ‘kobject_get_path’ at lib/kobject.c:155:2: lib/kobject.c:128:3: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation] strncpy(path + length, kobject_name(parent), cur); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/kobject.c: In function ‘kobject_get_path’: lib/kobject.c:125:13: note: length computed here int cur = strlen(kobject_name(parent)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ................................. etc..........
Despite all this, the resulting kernel loads/runs OK:
# uname -a
Linux rgup 4.17.0-rc3 #1 SMP Sun Apr 29 18:19:03 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
So, for the time being, I am staying with Fedora 27 on my main system..
Robert Gadsdon. May 2, 2018.
Comments
Fedora – 28 Released, but Fails with GCC 8 and Kernel 4.16… — No Comments