# runtime loading of module within f2fs in 4.6

## guido.hatzsis

I noticed that when I tried to mount an f2fs root file system, I was getting a "Cannot load crc32 driver." 

I checked the code and woe and behold:

        /* Load the checksum driver */

        sbi->s_chksum_driver = crypto_alloc_shash("crc32", 0, 0);

        if (IS_ERR(sbi->s_chksum_driver)) {

                f2fs_msg(sb, KERN_ERR, "Cannot load crc32 driver.");

                err = PTR_ERR(sbi->s_chksum_driver);

                sbi->s_chksum_driver = NULL;

                goto free_sbi;

        }

which at runtime loads the crc32_generic (or intel or whatever) kernel module. Are there any other modules that don't have dependencies specified in the modules.dep but rather are loaded at runtime and what is the reason the code does this?

----------

## eccerr0r

Probably could be as simple as "bug"...

Likely this is an upstream issue so need to ask them about it.

----------

## guido.hatzsis

I don't think its a bug. Its a bit like going dlopen rather that using the compiler and/or magic of ELF.

----------

