Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nvidia-drm-kmod: expand the comment and description #2

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

grahamperrin
Copy link
Owner

@grahamperrin grahamperrin commented Aug 23, 2023

Clarify that graphics/nvidia-drm-kmod is a meta port (not a module in itself).

Note that nvidia-drm.ko complements (non-DRM) x11/nvidia-driver.

Add context: DRM graphics subsystem.

https://bugs.freebsd.org/273311

PR: 273311

Signed-off-by: Graham Perrin <grahamperrin@gmail.com>

Clarify that this is a meta port (not a module in itself).
Add context: Direct Rendering Manager.

Distinguish graphics/nvidia-drm-kmod from the (non-DRM) x11/nvidia-driver series.
80 columns. I don't know what's the norm.
@grahamperrin grahamperrin changed the title nvidia-drm-kmod: package description: meta nvidia-drm-kmod: package description: clarity Aug 23, 2023
@grahamperrin grahamperrin marked this pull request as ready for review August 23, 2023 16:04
@grahamperrin grahamperrin marked this pull request as draft August 24, 2023 01:56
For e.g. the first line under 'Port details' at <https://www.freshports.org/graphics/nvidia-drm-kmod/> to more obviously show that this is meta. 

Compare with e.g. <https://www.freshports.org/graphics/drm-kmod/>, although let's note that Metaport (without a space) is detectably misspelt.
@grahamperrin grahamperrin changed the title nvidia-drm-kmod: package description: clarity nvidia-drm-kmod: expand the comment and description Aug 24, 2023
@grahamperrin

This comment was marked as outdated.

Aim to resolve #2 (comment) – correct my false assumption about this port being an alternative to the x11/nvidia-driver series.
@grahamperrin grahamperrin marked this pull request as ready for review August 26, 2023 12:29
@grahamperrin

This comment was marked as outdated.

@grahamperrin grahamperrin marked this pull request as draft August 26, 2023 12:40
https://github.com/amshafer/nvidia-driver#user-content-branch-structure
notes that driver versions predating 525 lack the closed-source changes that
are necessary for use with (the port of) nvidia-drm.ko.

Attempt to convey this in the package description – for users of
x11/nvidia-driver-470 and less to be not disappointed by attempted use of
graphics/nvidia-drm-kmod.
@grahamperrin
Copy link
Owner Author

If I understand correctly: nvidia-drm.ko complements the x11/nvidia-driver port alone (at the time of writing). Not, as I previously wrote, the x11/nvidia-driver series of ports.

aabdd12 (#2) aims to cover this aspect. I'll update the wiki accordingly.


@amshafer this PR should be properly ready for review now. Thanks

@grahamperrin grahamperrin marked this pull request as ready for review August 26, 2023 13:06
grahamperrin pushed a commit that referenced this pull request Aug 29, 2023
$ vkcube-wayland
Selected GPU 0: Intel(R) HD Graphics 530 (SKL GT2), type: IntegratedGpu
Segmentation fault

(lldb) bt
* thread #1, name = 'vkcube-wayland', stop reason = signal SIGSEGV: invalid address (fault address: 0x40)
  * frame #0: 0x000000082114a4dc libwayland-client.so`wl_proxy_get_version(proxy=0x0000000000000000) at wayland-client.c:2248:16
    frame #1: 0x000000082b8543e1 libvulkan_intel.so`wp_tearing_control_manager_v1_get_tearing_control(wp_tearing_control_manager_v1=0x0000000000000000, surface=0x0000245a71e110a0) at tearing-control-v1-client-protocol.h:191:90
    frame #2: 0x000000082b852016 libvulkan_intel.so`wsi_wl_surface_create_swapchain(icd_surface=0x0000245a71e32e00, device=0x0000245a71f47400, wsi_device=0x0000245a71eb1ae0, pCreateInfo=0x0000000820617900, pAllocator=0x0000245a71f47440, swapchain_out=0x00000008206178d8) at wsi_common_wayland.c:2277:10
    frame #3: 0x000000082b842be4 libvulkan_intel.so`wsi_CreateSwapchainKHR(_device=0x0000245a71f47400, pCreateInfo=0x0000000820617900, pAllocator=0x0000000000000000, pSwapchain=0x0000000820618700) at wsi_common.c:930:22
    frame #4: 0x0000000822051bef libvulkan.so.1`terminator_CreateSwapchainKHR + 223
    frame freebsd#5: 0x000000000021136b vkcube-wayland`demo_prepare_buffers(demo=0x0000000820617c30) at cube.c:1408:11
    frame freebsd#6: 0x000000000020c679 vkcube-wayland`demo_prepare(demo=0x0000000820617c30) at cube.c:2302:5
    frame freebsd#7: 0x000000000020af7a vkcube-wayland`main(argc=1, argv=0x0000000820618a38) at cube.c:4592:5
    frame freebsd#8: 0x000000082356e5fa libc.so.7`__libc_start1(argc=1, argv=0x0000000820618a38, env=0x0000000820618a48, cleanup=<unavailable>, mainX=(vkcube-wayland`main at cube.c:4574)) at libc_start1.c:157:7
    frame freebsd#9: 0x00000000002085d0 vkcube-wayland`_start at crt1_s.S:83
(lldb) f 2
frame #2: 0x000000082b852016 libvulkan_intel.so`wsi_wl_surface_create_swapchain(icd_surface=0x0000245a71e32e00, device=0x0000245a71f47400, wsi_device=0x0000245a71eb1ae0, pCreateInfo=0x0000000820617900, pAllocator=0x0000245a71f47440, swapchain_out=0x00000008206178d8) at wsi_common_wayland.c:2277:10
   2274
   2275    if (chain->base.present_mode == VK_PRESENT_MODE_IMMEDIATE_KHR) {
   2276       chain->tearing_control =
-> 2277          wp_tearing_control_manager_v1_get_tearing_control(wsi_wl_surface->display->tearing_control_manager,
   2278                                                            wsi_wl_surface->surface);
   2279       if (!chain->tearing_control) {
   2280          result = VK_ERROR_OUT_OF_HOST_MEMORY;
(lldb) p wsi_wl_surface->display->tearing_control_manager
(wp_tearing_control_manager_v1 *) $0 = NULL
grahamperrin pushed a commit that referenced this pull request Oct 1, 2023
$ arcan console
pid 12345 (arcan), jid 0, uid 1111: exited on signal 6 (no core dump - bad address)
$ tail -1 /var/log/messages
Sep 29 22:48:36 localhost arcan[12345]: stack overflow detected; terminated

(lldb) bt
* thread #2, name = 'arcan', stop reason = signal SIGABRT
  * frame #0: 0x00000008277faf5a libc.so.7`__sys_kill at kill.S:4
    frame #1: 0x00000008277fe361 libc.so.7`__fail(msg="stack overflow detected; terminated") at stack_protector.c:120:8
    frame #2: 0x00000008277fe2d0 libc.so.7`__stack_chk_fail at stack_protector.c:127:2
    frame #3: 0x00000000002eb876 arcan`button_count(fd=5, bitn=1, got_mouse=0x000000082040a5cf, got_joy=0x000000082040a5ce) at event.c:0
(lldb) f 3
frame #3: 0x00000000002eb876 arcan`button_count(fd=5, bitn=1, got_mouse=0x000000082040a5cf, got_joy=0x000000082040a5ce) at event.c:0
   844  #define bit_isset(ary, bit) (( ary[bit_longn(bit)] >> bit_ofs(bit)) & 1)
   845  #define bit_count(x) ( ((x) - 1 ) / (sizeof(long) * 8 ) + 1 )
   846
-> 847  static size_t button_count(int fd, size_t bitn, bool* got_mouse, bool* got_joy)
   848  {
   849          size_t count = 0;
   850

PR:		274163
Reported by:	Albin "a12l" Otterhäll
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants