Bug 229484 - graphics/drm-stable-kmod: Compiling error: invalid operand for instruction ATOMIC_ASM
Summary: graphics/drm-stable-kmod: Compiling error: invalid operand for instruction AT...
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: CURRENT
Hardware: amd64 Any
: --- Affects Many People
Assignee: Johannes M Dieterich
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-07-03 07:42 UTC by O. Hartmann
Modified: 2018-07-05 05:17 UTC (History)
5 users (show)

See Also:
bugzilla: maintainer-feedback? (jmd)


Attachments
64-bit immediate cannot be used (889 bytes, patch)
2018-07-03 19:16 UTC, Jung-uk Kim
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description O. Hartmann 2018-07-03 07:42:46 UTC
Building graphics/drm-stable-kmod via /etc/src.conf "PORTS_MODULES" with every kernel build, after the upgrade of CURRENT's sources from r335867 to r335884, building the module fails now with

[...]
In file included from i915_drv.c:30:
In file included from /usr/obj/usr/src/amd64.amd64/sys/FOO/usr/ports/graphics/drm-stable-kmod/work/kms-drm-a753215/linuxkpi/gplv2/include/linux/acpi.h:26:
In file included from /usr/obj/usr/src/amd64.amd64/sys/FOO/usr/ports/graphics/drm-stable-kmod/work/kms-drm-a753215/linuxkpi/gplv2/include/linux/device.h:4:
In file included from /usr/src/sys/compat/linuxkpi/common/include/linux/device.h:35:
In file included from /usr/src/sys/compat/linuxkpi/common/include/linux/types.h:37:
In file included from /usr/src/sys/sys/systm.h:44:
./machine/atomic.h:450:29: error: invalid operand for instruction
ATOMIC_ASM(clear,    long,  "andq %1,%0",  "ir", ~v);
                            ^
<inline asm>:1:7: note: instantiated into assembly here
        andq $9223372036854775807,40672(%r14)
             ^~~~~~~~~~~~~~~~~~~~~
1 error generated.
*** Error code 1
[...]

The same happens to emulators/virtualbox-ose-kmod.

The building host is at FreeBSD 12.0-CURRENT #142 r335867: Mon Jul  2 20:10:23 CEST 2018 amd64. The CURRENT sources I try to compile are at revision 335884.

There have been made changes to the core system, especially r335873. Reverting r335873 doesnt help much (I'm using META_MODE), since then I run into linker problems. Maybe this is a hint to solve the problem.
Comment 1 Jung-uk Kim freebsd_committer freebsd_triage 2018-07-03 19:16:06 UTC
Created attachment 194866 [details]
64-bit immediate cannot be used

Please try the patch.
Comment 2 Jung-uk Kim freebsd_committer freebsd_triage 2018-07-03 19:21:06 UTC
Comment on attachment 194866 [details]
64-bit immediate cannot be used

"I" seems wrong constraint.  jhb has a better patch.
Comment 3 Niclas Zeising freebsd_committer freebsd_triage 2018-07-04 19:38:38 UTC
It is believed this has been patched.  Can you confirm you have a working environment?
Comment 4 O. Hartmann 2018-07-05 05:17:07 UTC
I can confirm, that the reported issue with the module isn't anymore in this case.