# PAX for kernel

## Fulgurance

Hello, i reinstall gentoo, but i have problem when i emerge nvidia driver, with PAX patch.

When i go in menuconfig of kernel, i haven't got pax options for kernel.

```
emerge -uDU --with-bdeps=y @world

 * IMPORTANT: 13 news items need reading for repository 'gentoo'.

 * Use eselect news read to view new items.

Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Running pre-merge checks for x11-drivers/nvidia-drivers-375.26

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found kernel object directory:

 *     /lib/modules/4.9.6-gentoo-r1/build

 * Found sources for kernel version:

 *     4.9.6-gentoo-r1

 * Checking for suitable kernel configuration options...                         [ ok ]

>>> Emerging (1 of 1) x11-drivers/nvidia-drivers-375.26::gentoo

 * NVIDIA-Linux-x86_64-375.26.run SHA256 SHA512 WHIRLPOOL size ;-) ...           [ ok ]

 * nvidia-settings-375.26.tar.bz2 SHA256 SHA512 WHIRLPOOL size ;-) ...           [ ok ]

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found kernel object directory:

 *     /lib/modules/4.9.6-gentoo-r1/build

 * Found sources for kernel version:

 *     4.9.6-gentoo-r1

 * Checking for suitable kernel configuration options...                         [ ok ]

>>> Unpacking source...

>>> Unpacking NVIDIA-Linux-x86_64-375.26.run to /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work

>>> Unpacking nvidia-settings-375.26.tar.bz2 to /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work

>>> Source unpacked in /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work

>>> Preparing source in /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work ...

 * Applying nvidia-drivers-375.26-profiles-rc.patch ...                          [ ok ]

 * Using PAX patches is not supported. You will be asked to

 * use a standard kernel should you have issues. Should you

 * need support with these patches, contact the PaX team.

 * Applying nvidia-drivers-375.20-pax.patch ...                                  [ ok ]

>>> Source prepared.

>>> Configuring source in /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work ...

>>> Source configured.

>>> Compiling source in /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work ...

 * Preparing nvidia module

make -j1 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- 'LDFLAGS=-m elf_x86_64' ARCH=x86_64 IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/lib/modules/4.9.6-gentoo-r1/build CC=x86_64-pc-linux-gnu-gcc NV_VERBOSE=1 clean module 

rm -f -r conftest

make "CC=x86_64-pc-linux-gnu-gcc" KBUILD_OUTPUT=/lib/modules/4.9.6-gentoo-r1/build KBUILD_VERBOSE=1 -C /usr/src/linux M=/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel ARCH=x86_64 NV_KERNEL_SOURCES=/usr/src/linux NV_KERNEL_OUTPUT=/lib/modules/4.9.6-gentoo-r1/build NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video Q= clean

make[1]: Entering directory '/usr/src/linux-4.9.6-gentoo-r1'

make -C /lib/modules/4.9.6-gentoo-r1/build KBUILD_SRC=/usr/src/linux-4.9.6-gentoo-r1 \

-f /usr/src/linux-4.9.6-gentoo-r1/Makefile clean

make[2]: Entering directory '/usr/src/linux-4.9.6-gentoo-r1'

make -f /usr/src/linux-4.9.6-gentoo-r1/scripts/Makefile.clean obj=/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel

  rm -rf /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/.tmp_versions

  rm -f /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/Module.symvers

make[2]: Leaving directory '/usr/src/linux-4.9.6-gentoo-r1'

make[1]: Leaving directory '/usr/src/linux-4.9.6-gentoo-r1'

make "CC=x86_64-pc-linux-gnu-gcc" KBUILD_OUTPUT=/lib/modules/4.9.6-gentoo-r1/build KBUILD_VERBOSE=1 -C /usr/src/linux M=/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel ARCH=x86_64 NV_KERNEL_SOURCES=/usr/src/linux NV_KERNEL_OUTPUT=/lib/modules/4.9.6-gentoo-r1/build NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video Q= modules

make[1]: Entering directory '/usr/src/linux-4.9.6-gentoo-r1'

make -C /lib/modules/4.9.6-gentoo-r1/build KBUILD_SRC=/usr/src/linux-4.9.6-gentoo-r1 \

-f /usr/src/linux-4.9.6-gentoo-r1/Makefile modules

make[2]: Entering directory '/usr/src/linux-4.9.6-gentoo-r1'

test -e include/generated/autoconf.h -a -e include/config/auto.conf || (               \

echo >&2;                                                       \

echo >&2 "  ERROR: Kernel configuration is invalid.";           \

echo >&2 "         include/generated/autoconf.h or include/config/auto.conf are missing.";\

echo >&2 "         Run 'make oldconfig && make prepare' on kernel src to fix it.";     \

echo >&2 ;                                                      \

/bin/false)

mkdir -p /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/.tmp_versions ; rm -f /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/.tmp_versions/*

make -f /usr/src/linux-4.9.6-gentoo-r1/scripts/Makefile.build obj=/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel

 CONFTEST: INIT_WORK

 CONFTEST: remap_pfn_range

 CONFTEST: follow_pfn

 CONFTEST: vmap

 CONFTEST: set_pages_uc

 CONFTEST: set_memory_uc

 CONFTEST: set_memory_array_uc

 CONFTEST: change_page_attr

 CONFTEST: pci_get_class

 CONFTEST: pci_choose_state

 CONFTEST: vm_insert_page

 CONFTEST: acpi_device_id

 CONFTEST: acquire_console_sem

 CONFTEST: console_lock

 CONFTEST: kmem_cache_create

 CONFTEST: on_each_cpu

 CONFTEST: smp_call_function

 CONFTEST: acpi_evaluate_integer

 CONFTEST: ioremap_cache

 CONFTEST: ioremap_wc

 CONFTEST: acpi_walk_namespace

 CONFTEST: pci_domain_nr

 CONFTEST: pci_dma_mapping_error

 CONFTEST: sg_alloc_table

 CONFTEST: sg_init_table

 CONFTEST: pci_get_domain_bus_and_slot

 CONFTEST: get_num_physpages

 CONFTEST: efi_enabled

 CONFTEST: proc_create_data

 CONFTEST: pde_data

 CONFTEST: proc_remove

 CONFTEST: pm_vt_switch_required

 CONFTEST: drm_driver_has_set_busid

 CONFTEST: drm_driver_has_gem_prime_res_obj

 CONFTEST: xen_ioemu_inject_msi

 CONFTEST: phys_to_dma

 CONFTEST: get_dma_ops

 CONFTEST: write_cr4

 CONFTEST: of_parse_phandle

 CONFTEST: for_each_online_node

 CONFTEST: node_end_pfn

 CONFTEST: pci_bus_address

 CONFTEST: pci_stop_and_remove_bus_device

 CONFTEST: pci_remove_bus_device

 CONFTEST: request_threaded_irq

 CONFTEST: remap_page_range

 CONFTEST: address_space_init_once

 CONFTEST: kbasename

 CONFTEST: fatal_signal_pending

 CONFTEST: list_cut_position

 CONFTEST: vzalloc

 CONFTEST: wait_on_bit_lock_argument_count

 CONFTEST: bitmap_clear

 CONFTEST: usleep_range

 CONFTEST: radix_tree_empty

 CONFTEST: drm_dev_unref

 CONFTEST: drm_reinit_primary_mode_group

 CONFTEST: drm_atomic_set_mode_for_crtc

 CONFTEST: drm_atomic_clean_old_fb

 CONFTEST: get_user_pages_remote

 CONFTEST: drm_gem_object_lookup

 CONFTEST: i2c_adapter

 CONFTEST: pm_message_t

 CONFTEST: irq_handler_t

 CONFTEST: acpi_device_ops

 CONFTEST: acpi_op_remove

 CONFTEST: outer_flush_all

 CONFTEST: proc_dir_entry

 CONFTEST: scatterlist

 CONFTEST: sg_table

 CONFTEST: file_operations

 CONFTEST: vm_operations_struct

 CONFTEST: atomic_long_type

 CONFTEST: pci_save_state

 CONFTEST: file_inode

 CONFTEST: task_struct

 CONFTEST: kuid_t

 CONFTEST: dma_ops

 CONFTEST: dma_map_ops

 CONFTEST: noncoherent_swiotlb_dma_ops

 CONFTEST: fault_flags

 CONFTEST: atomic64_type

 CONFTEST: address_space

 CONFTEST: backing_dev_info

 CONFTEST: kernel_write

 CONFTEST: strnstr

 CONFTEST: iterate_dir

 CONFTEST: kstrtoull

 CONFTEST: mm_context_t

 CONFTEST: drm_bus_present

 CONFTEST: drm_bus_has_bus_type

 CONFTEST: drm_bus_has_get_irq

 CONFTEST: drm_bus_has_get_name

 CONFTEST: drm_driver_has_legacy_dev_list

 CONFTEST: drm_crtc_state_has_connectors_changed

 CONFTEST: drm_init_functions_have_name_arg

 CONFTEST: drm_mode_connector_list_update_has_merge_type_bits_arg

 CONFTEST: drm_helper_mode_fill_fb_struct_has_const_mode_cmd_arg

 CONFTEST: drm_master_drop_has_from_release_arg

 CONFTEST: drm_mode_config_funcs_has_atomic_state_alloc

 CONFTEST: dom0_kernel_present

 CONFTEST: nvidia_vgpu_kvm_build

 CONFTEST: drm_available

 CONFTEST: nvidia_grid_build

 CONFTEST: drm_atomic_available

 CONFTEST: drm_atomic_modeset_nonblocking_commit_available

  x86_64-pc-linux-gnu-gcc -Wp,-MD,/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/.nv-frontend.o.d  -nostdinc -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.4/include -I/usr/src/linux-4.9.6-gentoo-r1/arch/x86/include -I./arch/x86/include/generated/uapi -I./arch/x86/include/generated  -I/usr/src/linux-4.9.6-gentoo-r1/include -I./include -I/usr/src/linux-4.9.6-gentoo-r1/arch/x86/include/uapi -I/usr/src/linux-4.9.6-gentoo-r1/include/uapi -I./include/generated/uapi -include /usr/src/linux-4.9.6-gentoo-r1/include/linux/kconfig.h -I/usr/src/linux-4.9.6-gentoo-r1//var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel -I/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -march=core2 -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_SHA1_NI=1 -DCONFIG_AS_SHA256_NI=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -fno-delete-null-pointer-checks -O2 --param=allow-store-data-races=0 -Wframe-larger-than=2048 -fno-stack-protector -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO  -I/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc  -I/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel -Wall -MD -Wsign-compare -Wno-cast-qual -Wno-error -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"375.26\" -Wno-unused-function -Wuninitialized -fno-strict-aliasing -mno-red-zone -mcmodel=kernel -DNV_UVM_ENABLE -Wno-sign-compare -Wno-format-extra-args  -I/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia -DNV_BUILD_MODULE_INSTANCES=0 -UDEBUG -U_DEBUG -DNDEBUG  -DMODULE  -DKBUILD_BASENAME='"nv_frontend"'  -DKBUILD_MODNAME='"nvidia"' -c -o /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.o /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c

In file included from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.h:18:0,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:15:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-register-module.h:37:14: error: expected ���=���, ���,���, ���;���, ���asm��� or ���__attribute__��� before ���nvidia_module_t���

 } __do_const nvidia_module_t;

              ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-register-module.h:39:28: error: unknown type name ���nvidia_module_t���

 int nvidia_register_module(nvidia_module_t *);

                            ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-register-module.h:40:30: error: unknown type name ���nvidia_module_t���

 int nvidia_unregister_module(nvidia_module_t *);

                              ^

In file included from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:15:0:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.h:31:32: error: unknown type name ���nvidia_module_t���

 int nvidia_frontend_add_device(nvidia_module_t *, nv_linux_state_t *);

                                ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.h:32:35: error: unknown type name ���nvidia_module_t���

 int nvidia_frontend_remove_device(nvidia_module_t *, nv_linux_state_t *);

                                   ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:37:1: error: unknown type name ���nvidia_module_t���

 nvidia_module_t *nv_minor_num_table[NV_FRONTEND_CONTROL_DEVICE_MINOR_MAX + 1];

 ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:78:23: error: unknown type name ���nvidia_module_t���

 static int add_device(nvidia_module_t *module, nv_linux_state_t *device, NvBool all)

                       ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:109:26: error: unknown type name ���nvidia_module_t���

 static int remove_device(nvidia_module_t *module, nv_linux_state_t *device)

                          ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:125:28: error: unknown type name ���nvidia_module_t���

 int nvidia_register_module(nvidia_module_t *module)

                            ^

In file included from /usr/src/linux-4.9.6-gentoo-r1/include/linux/linkage.h:6:0,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/kernel.h:6,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/asm-generic/bug.h:13,

                 from /usr/src/linux-4.9.6-gentoo-r1/arch/x86/include/asm/bug.h:35,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/bug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mmdebug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mm.h:8,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-pgprot.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-linux.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:13:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:147:15: error: ���nvidia_register_module��� undeclared here (not in a function)

 EXPORT_SYMBOL(nvidia_register_module);

               ^

/usr/src/linux-4.9.6-gentoo-r1/include/linux/export.h:58:16: note: in definition of macro ���___EXPORT_SYMBOL���

  extern typeof(sym) sym;      \

                ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:147:1: note: in expansion of macro ���EXPORT_SYMBOL���

 EXPORT_SYMBOL(nvidia_register_module);

 ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:149:30: error: unknown type name ���nvidia_module_t���

 int nvidia_unregister_module(nvidia_module_t *module)

                              ^

In file included from /usr/src/linux-4.9.6-gentoo-r1/include/linux/linkage.h:6:0,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/kernel.h:6,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/asm-generic/bug.h:13,

                 from /usr/src/linux-4.9.6-gentoo-r1/arch/x86/include/asm/bug.h:35,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/bug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mmdebug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mm.h:8,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-pgprot.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-linux.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:13:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:173:15: error: ���nvidia_unregister_module��� undeclared here (not in a function)

 EXPORT_SYMBOL(nvidia_unregister_module);

               ^

/usr/src/linux-4.9.6-gentoo-r1/include/linux/export.h:58:16: note: in definition of macro ���___EXPORT_SYMBOL���

  extern typeof(sym) sym;      \

                ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:173:1: note: in expansion of macro ���EXPORT_SYMBOL���

 EXPORT_SYMBOL(nvidia_unregister_module);

 ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:175:32: error: unknown type name ���nvidia_module_t���

 int nvidia_frontend_add_device(nvidia_module_t *module, nv_linux_state_t * device)

                                ^

In file included from /usr/src/linux-4.9.6-gentoo-r1/include/linux/linkage.h:6:0,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/kernel.h:6,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/asm-generic/bug.h:13,

                 from /usr/src/linux-4.9.6-gentoo-r1/arch/x86/include/asm/bug.h:35,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/bug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mmdebug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mm.h:8,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-pgprot.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-linux.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:13:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:196:15: error: ���nvidia_frontend_add_device��� undeclared here (not in a function)

 EXPORT_SYMBOL(nvidia_frontend_add_device);

               ^

/usr/src/linux-4.9.6-gentoo-r1/include/linux/export.h:58:16: note: in definition of macro ���___EXPORT_SYMBOL���

  extern typeof(sym) sym;      \

                ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:196:1: note: in expansion of macro ���EXPORT_SYMBOL���

 EXPORT_SYMBOL(nvidia_frontend_add_device);

 ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:198:35: error: unknown type name ���nvidia_module_t���

 int nvidia_frontend_remove_device(nvidia_module_t *module, nv_linux_state_t * device)

                                   ^

In file included from /usr/src/linux-4.9.6-gentoo-r1/include/linux/linkage.h:6:0,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/kernel.h:6,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/asm-generic/bug.h:13,

                 from /usr/src/linux-4.9.6-gentoo-r1/arch/x86/include/asm/bug.h:35,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/bug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mmdebug.h:4,

                 from /usr/src/linux-4.9.6-gentoo-r1/include/linux/mm.h:8,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-pgprot.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/common/inc/nv-linux.h:17,

                 from /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:13:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:219:15: error: ���nvidia_frontend_remove_device��� undeclared here (not in a function)

 EXPORT_SYMBOL(nvidia_frontend_remove_device);

               ^

/usr/src/linux-4.9.6-gentoo-r1/include/linux/export.h:58:16: note: in definition of macro ���___EXPORT_SYMBOL���

  extern typeof(sym) sym;      \

                ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:219:1: note: in expansion of macro ���EXPORT_SYMBOL���

 EXPORT_SYMBOL(nvidia_frontend_remove_device);

 ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c: In function ���nvidia_frontend_open���:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:227:5: error: unknown type name ���nvidia_module_t���

     nvidia_module_t *module = NULL;

     ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:234:36: error: request for member ���open��� in something not a structure or union

     if ((module != NULL) && (module->open != NULL))

                                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:239:35: error: request for member ���owner��� in something not a structure or union

         if (!try_module_get(module->owner))

                                   ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:244:20: error: request for member ���open��� in something not a structure or union

         rc = module->open(inode, file);

                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:247:30: error: request for member ���owner��� in something not a structure or union

             module_put(module->owner);

                              ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c: In function ���nvidia_frontend_close���:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:261:5: error: unknown type name ���nvidia_module_t���

     nvidia_module_t *module = NULL;

     ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:267:36: error: request for member ���close��� in something not a structure or union

     if ((module != NULL) && (module->close != NULL))

                                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:269:20: error: request for member ���close��� in something not a structure or union

         rc = module->close(inode, file);

                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:272:26: error: request for member ���owner��� in something not a structure or union

         module_put(module->owner);

                          ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c: In function ���nvidia_frontend_poll���:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:286:5: error: unknown type name ���nvidia_module_t���

     nvidia_module_t *module = nv_minor_num_table[minor_num];

     ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:288:36: error: request for member ���poll��� in something not a structure or union

     if ((module != NULL) && (module->poll != NULL))

                                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:289:22: error: request for member ���poll��� in something not a structure or union

         mask = module->poll(file, wait);

                      ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c: In function ���nvidia_frontend_ioctl���:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:301:5: error: unknown type name ���nvidia_module_t���

     nvidia_module_t *module = NULL;

     ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:306:36: error: request for member ���ioctl��� in something not a structure or union

     if ((module != NULL) && (module->ioctl != NULL))

                                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:307:20: error: request for member ���ioctl��� in something not a structure or union

         rc = module->ioctl(inode, file, cmd, i_arg);

                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c: In function ���nvidia_frontend_mmap���:

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:338:5: error: unknown type name ���nvidia_module_t���

     nvidia_module_t *module = nv_minor_num_table[minor_num];

     ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:340:36: error: request for member ���mmap��� in something not a structure or union

     if ((module != NULL) && (module->mmap != NULL))

                                    ^

/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.c:341:20: error: request for member ���mmap��� in something not a structure or union

         rc = module->mmap(file, vma);

                    ^

make[3]: *** [/usr/src/linux-4.9.6-gentoo-r1/scripts/Makefile.build:294: /var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel/nvidia/nv-frontend.o] Error 1

make[2]: *** [/usr/src/linux-4.9.6-gentoo-r1/Makefile:1490: _module_/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel] Error 2

make[2]: Leaving directory '/usr/src/linux-4.9.6-gentoo-r1'

make[1]: *** [Makefile:150: sub-make] Error 2

make[1]: Leaving directory '/usr/src/linux-4.9.6-gentoo-r1'

make: *** [Makefile:81: modules] Error 2

 * ERROR: x11-drivers/nvidia-drivers-375.26::gentoo failed (compile phase):

 *   emake failed

 * 

 * If you need support, post the output of `emerge --info '=x11-drivers/nvidia-drivers-375.26::gentoo'`,

 * the complete build log and the output of `emerge -pqv '=x11-drivers/nvidia-drivers-375.26::gentoo'`.

 * The complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/temp/environment'.

 * Working directory: '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel'

 * S: '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/'

>>> Failed to emerge x11-drivers/nvidia-drivers-375.26, Log file:

>>>  '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/temp/build.log'

 * Messages for package x11-drivers/nvidia-drivers-375.26:

 * Using PAX patches is not supported. You will be asked to

 * use a standard kernel should you have issues. Should you

 * need support with these patches, contact the PaX team.

 * ERROR: x11-drivers/nvidia-drivers-375.26::gentoo failed (compile phase):

 *   emake failed

 * 

 * If you need support, post the output of `emerge --info '=x11-drivers/nvidia-drivers-375.26::gentoo'`,

 * the complete build log and the output of `emerge -pqv '=x11-drivers/nvidia-drivers-375.26::gentoo'`.

 * The complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/temp/environment'.

 * Working directory: '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/kernel'

 * S: '/var/tmp/portage/x11-drivers/nvidia-drivers-375.26/work/'

```

----------

## fedeliallalinea

Can help this?

----------

## khayyam

Fulgurance ... what fedeliallalinea means is you have enabled USE="pax_kernel" (or have set your profile to hardened), and yet are using sys-kernel/gentoo-sources-4.9.6-r1 (which doesn't have PaX). By default 'pax_kernel' is not set for x11-drivers/nvidia-drivers (so it has to be coming from your profile, make.conf, or package.use):

```
 - - pax_kernel  : PaX patches from the PaX project
```

The first '-' shows it as unset by default (for non-hardened profiles).

So, if you want PaX then you should use a kernel (and userland) that supports it, such as sys-kernel/hardened-sources, and a hardened stage3.

best ... khay

----------

## Fulgurance

It is recommended to use PAX or is it better that I use a standard kernel? How do I do it in this case to return to standard kernel?

----------

## khayyam

 *Fulgurance wrote:*   

> It is recommended to use PAX or is it better that I use a standard kernel? How do I do it in this case to return to standard kernel?

 

Fulgurance ... you are using the standard kernel (as much as there can be said to be one), sys-kernel/gentoo-sources, but you've set a useflag that is only enabled for the hardened profile (which would be expected to be used with sys-kernel/hardened-sources).

best ... khay

----------

## Fulgurance

Not exactly, I did not take this profile ...

```
 

# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /usr/share/portage/config/make.conf.example for a more

# detailed example.

CFLAGS="-march=broadwell -O2 -pipe"

CXXFLAGS="${CFLAGS}"

# WARNING: Changing your CHOST is not something that should be done lightly.

# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.

CHOST="x86_64-pc-linux-gnu"

# These are the USE and USE_EXPAND flags that were used for

# buidling in addition to what is provided by the profile.

USE="glamor"

CPU_FLAGS_X86="mmx sse sse2 mmxext"

PORTDIR="/usr/portage"

DISTDIR="${PORTDIR}/distfiles"

PKGDIR="${PORTDIR}/packages"

MAKEOPTS="-j9"

VIDEO_CARDS="intel i965 nvidia"

LINGUAS="fr fr_FR"

L10N="fr"

GRUB_PLATFORMS="efi-64"
```

```
Available profile symlink targets:

  [1]   default/linux/amd64/13.0

  [2]   default/linux/amd64/13.0/selinux

  [3]   default/linux/amd64/13.0/desktop

  [4]   default/linux/amd64/13.0/desktop/gnome

  [5]   default/linux/amd64/13.0/desktop/gnome/systemd

  [6]   default/linux/amd64/13.0/desktop/plasma *

  [7]   default/linux/amd64/13.0/desktop/plasma/systemd

  [8]   default/linux/amd64/13.0/developer

  [9]   default/linux/amd64/13.0/no-multilib

  [10]  default/linux/amd64/13.0/systemd

  [11]  default/linux/amd64/13.0/x32

  [12]  hardened/linux/amd64

  [13]  hardened/linux/amd64/selinux

  [14]  hardened/linux/amd64/no-multilib

  [15]  hardened/linux/amd64/no-multilib/selinux

  [16]  hardened/linux/amd64/x32

  [17]  hardened/linux/musl/amd64

  [18]  hardened/linux/musl/amd64/x32

  [19]  default/linux/uclibc/amd64

  [20]  hardened/linux/uclibc/amd64
```

Or I make more and more mistakes, I have to be a little too tired right now ...

----------

## Fulgurance

Compilation error ...Last edited by Fulgurance on Fri Mar 10, 2017 3:54 pm; edited 1 time in total

----------

## khayyam

 *Fulgurance wrote:*   

> That's good, I solved the problem by doing an emerge --sync. Bizarre ...

 

Fulgurance ... oh my, yeah, I'd assumed you'd have to have set it as it's not normally in non-hardened profiles.

 *Fulgurance wrote:*   

> I think I'll have to seriously rest me xD

 

I normally say that after 48hrs ... and then I wake up with my face in a plate of spaghetti ;)

best ... khay

----------

## Fulgurance

No, always the same compilation error after emerge --sync... strange 

XD 

That's about it lol

So my problem is still not solved finally: x

----------

