This information applies to Oracle ASMLib setup in Oracle Grid Infrastructure on SUSE Linux Enterprise Server 12 SP3 (SLES12 SP3). If you have updated SUSE Enterprise Linux Server 12 SP1/SP2 to SLES12 SP3, you must have noticed oracleasm kernel module failed to load. We looked at this issue in SUSE Bug 1059062 and worked with Oracle Eng. to isolate the problem and provide fix. SUSE Kernel patch  for this issue is now available. There is no change to other required Oracle ASMLib support tools .
Problem was caused by the un-export of kernel symbol bio_unmap_user in upstream Kernel commit . This kernel update caused non-availability of bio_unmap_user to oracleasm kernel module, as it was available in previous SLES12 SP1/SP2 versions. Oracleasm kernel module failed to load as it was looking for bio_unmap_user. Here is brief description of problem with possible Solution.
Error:unknown symbol bio_unmap_user
depmod: WARNING: /lib/modules/4.4.73-5-default/updates/oracleasm.ko needs unknown symbol bio_unmap_user
sles12-sp3:/ # rpm -qa |grep oracleasm oracleasm-support-2.1.8-1.SLE12.x86_64 oracleasm-kmp-default-2.0.8_k4.4.73_5-2.35.x86_64 oracleasmlib-2.0.12-1.SLE12.x86_64 sles12-sp3:~ # modprobe oracleasm modprobe: FATAL: Module oracleasm not found. sles12-sp3:~ # grep oracleasm /var/log/messages 2017-11-18T17:29:03.458987-08:00 sles12-sp3 modprobe: FATAL: Module oracleasm not found. 2017-11-18T17:29:03.664572-08:00 sles12-sp3 oracleasm: Initializing the Oracle ASMLib driver: ..failed
Solution: Apply SUSE Patch  or roll back Server to SLES12 SP2.
 SUSE Patch: <SUSE Linux Enterprise Server 12 SP3 for x86-64>