Notice the signature of the init and exit functions is as follows:
static int __init <modulename>_init(void);
static void __exit <modulename>_exit(void);
As a good coding practice, we have used the naming format for the functions as <modulename>__[init|exit](), where <modulename> is replaced with the name of the kernel module. You will realize that this naming convention is just that - it's merely a convention that is, technically speaking, unnecessary, but it is intuitive and thus helpful. Clearly, neither routine receives any parameter.
Marking both functions with the static qualifier implies that they are private to this kernel module. That is what we want.
Now let's move along to the important convention that is followed for a kernel module's init function's return value.