Date: Mon, 16 Dec 2019 18:30:36 +0100 From: Hans Petter Selasky <hps@selasky.org> To: "Kenneth M. Glassey" <kennethg@trueworldfoods.com>, "freebsd-hackers@FreeBSD.org" <freebsd-hackers@FreeBSD.org> Subject: Re: How to compile 'struct module' usage? Message-ID: <573c2041-41f6-19e1-7b39-0cf078a83659@selasky.org> In-Reply-To: <CY4PR13MB186133B99A405BD6900F87BCA0510@CY4PR13MB1861.namprd13.prod.outlook.com> References: <CY4PR13MB186133B99A405BD6900F87BCA0510@CY4PR13MB1861.namprd13.prod.outlook.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2019-12-16 18:26, Kenneth M. Glassey wrote:
> Hello, I am doing some fiddling on a driver port and I am encountering
> a compilation error "incomplete definition of type struct module"
> concerning lines in the port source that access members of struct module,
> such as module->name. Looking into the issue, it seems that struct module
> is not defined in the headers, at least not in sys/module.h, but I did see
> some definitions in *.c files elsewhere.
>
> To check whether this was a problem specifically due to this driver, I
> made a simple module following one of the tutorials online and it compiled
> fine. I then added a line that accessed module->name and I got the
> compilation error.
>
> So how do we build a module to allow the use of the members of struct
> module? Is the struct module definition supposed to be constructed at
> compile time, and if so, how? Or is it verboten to access members of that
> struct?
Hi,
"struct module" is not public:
grep -r "struct module {" /sys/
/sys/kern/kern_module.c:struct module {
--HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?573c2041-41f6-19e1-7b39-0cf078a83659>
