Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7644c16c authored by Mike Waychison's avatar Mike Waychison Committed by Tony Luck
Browse files

efivars: Introduce PSTORE_EFI_ATTRIBUTES



Consolidate the attributes listed for pstore operations in one place,
PSTORE_EFI_ATTRIBUTES.

Signed-off-by: default avatarMike Waychison <mikew@google.com>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent c475594d
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -122,6 +122,10 @@ struct efivar_attribute {
	ssize_t (*store)(struct efivar_entry *entry, const char *buf, size_t count);
};

#define PSTORE_EFI_ATTRIBUTES \
	(EFI_VARIABLE_NON_VOLATILE | \
	 EFI_VARIABLE_BOOTSERVICE_ACCESS | \
	 EFI_VARIABLE_RUNTIME_ACCESS)

#define EFIVAR_ATTR(_name, _mode, _show, _store) \
struct efivar_attribute efivar_attr_##_name = { \
@@ -523,8 +527,9 @@ static u64 efi_pstore_write(enum pstore_type_id type, unsigned int part,

		/* found */
		found = entry;
		efivars->ops->set_variable(entry->var.VariableName, &entry->var.VendorGuid,
					   EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
		efivars->ops->set_variable(entry->var.VariableName,
					   &entry->var.VendorGuid,
					   PSTORE_EFI_ATTRIBUTES,
					   0, NULL);
	}

@@ -534,8 +539,7 @@ static u64 efi_pstore_write(enum pstore_type_id type, unsigned int part,
	for (i = 0; i < DUMP_NAME_LEN; i++)
		efi_name[i] = name[i];

	efivars->ops->set_variable(efi_name, &vendor,
				   EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
	efivars->ops->set_variable(efi_name, &vendor, PSTORE_EFI_ATTRIBUTES,
				   size, psi->buf);

	spin_unlock(&efivars->lock);