]> Git Repo - linux.git/blobdiff - drivers/base/firmware_loader/fallback_platform.c
x86/alternative: Make custom return thunk unconditional
[linux.git] / drivers / base / firmware_loader / fallback_platform.c
index 685edb7dd05a7bcb2ba47d2f744c8ac2e102f29d..00af99f0aff21818d36e6917bedf78866fa376fe 100644 (file)
@@ -8,16 +8,16 @@
 #include "fallback.h"
 #include "firmware.h"
 
-int firmware_fallback_platform(struct fw_priv *fw_priv, u32 opt_flags)
+int firmware_fallback_platform(struct fw_priv *fw_priv)
 {
        const u8 *data;
        size_t size;
        int rc;
 
-       if (!(opt_flags & FW_OPT_FALLBACK_PLATFORM))
+       if (!(fw_priv->opt_flags & FW_OPT_FALLBACK_PLATFORM))
                return -ENOENT;
 
-       rc = security_kernel_load_data(LOADING_FIRMWARE_EFI_EMBEDDED);
+       rc = security_kernel_load_data(LOADING_FIRMWARE, true);
        if (rc)
                return rc;
 
@@ -27,6 +27,12 @@ int firmware_fallback_platform(struct fw_priv *fw_priv, u32 opt_flags)
 
        if (fw_priv->data && size > fw_priv->allocated_size)
                return -ENOMEM;
+
+       rc = security_kernel_post_load_data((u8 *)data, size, LOADING_FIRMWARE,
+                                               "platform");
+       if (rc)
+               return rc;
+
        if (!fw_priv->data)
                fw_priv->data = vmalloc(size);
        if (!fw_priv->data)
This page took 0.031779 seconds and 4 git commands to generate.