SYSCALL_MODULE() macro and modfind() issues

Andriy Gapon avg at icyb.net.ua
Tue Oct 26 07:28:15 UTC 2010


on 26/10/2010 01:01 Selphie Keller said the following:
> hi fbsd-hackers,
> 
> Noticed a issue in 8.1-release, 8.1p1-release and 8.1-stable
> amd64/i386, to where modfind() will no longer find pmap_helper for the
> /usr/ports/sysutils/pmap port, or other syscall modules using
> SYSCALL_MODULE() macro.
> The issue is that modfind() function no longer finds any modules using
> SYSCALL_MODULE() macro to register the kernel module. Making it
> difficult for userland apps to call the syscall provided. modfind()
> always returns -1 which prevents modstat() from getting the required
> information to perform the syscall.
> 
> Also tested, the demo syscall module:

After commit r205320 and, apparently, its MFC you need to prefix the module with
"sys/".  For example:
modstat(modfind("sys/syscall"), &stat);

P.S.
Perhaps a KPI breakage in a stable branch?
-- 
Andriy Gapon


More information about the freebsd-hackers mailing list