On 2023/2/24 11:13, Zack Rusin wrote:
That's correct. That's the way this works. The ioctl is allocating a buffer, there's
no infinite space for buffers on a system and, given that your app just allocates
and never frees buffers, at some point the space will run out and the ioctl will
return a failure.
Do you mean that users without certain privileges can access allocate a
buffer because it is designed like this? so we don't need to block
users without certain privileges to VMW_ALLOC_DMABUF success?
As to the stack trace, I'm not sure what kernel you were testing it on so I don't
have access to the full log but I can't reproduce it and there was a change fixing
exactly this (i.e. buffer failed allocation but we were still accessing it) that was
fixed in in 6.2 in commit 1a6897921f52 ("drm/vmwgfx: Stop accessing buffer objects
which failed init") the change was backported as well, so you should be able to
verify on any kernel with it.
z
Thank you, the kernel version of my environment is lower than 6.2, I
will verify on my kernel with commit 1a6897921f52 ("drm/vmwgfx: Stop
accessing buffer objects which failed init").