* [PATCH] pstore: set ecc_notice_size to zero
@ 2016-06-02 5:17 Geliang Tang
2016-06-02 16:03 ` Kees Cook
0 siblings, 1 reply; 2+ messages in thread
From: Geliang Tang @ 2016-06-02 5:17 UTC (permalink / raw)
To: Anton Vorontsov, Colin Cross, Kees Cook, Tony Luck,
Rafael J. Wysocki, Len Brown, Matt Fleming
Cc: Geliang Tang, linux-acpi, linux-kernel, linux-efi
Since a @ecc_notice_size parameter has been added in pstore_info.read(),
this patch sets this parameter to zero in efi_pstore_read() and
erst_reader().
Signed-off-by: Geliang Tang <geliangtang@gmail.com>
---
drivers/acpi/apei/erst.c | 1 +
drivers/firmware/efi/efi-pstore.c | 5 +++++
2 files changed, 6 insertions(+)
diff --git a/drivers/acpi/apei/erst.c b/drivers/acpi/apei/erst.c
index 3024edf..f096ab3 100644
--- a/drivers/acpi/apei/erst.c
+++ b/drivers/acpi/apei/erst.c
@@ -1035,6 +1035,7 @@ skip:
memcpy(*buf, rcd->data, len - sizeof(*rcd));
*id = record_id;
*compressed = false;
+ *ecc_notice_size = 0;
if (uuid_le_cmp(rcd->sec_hdr.section_type,
CPER_SECTION_TYPE_DMESG_Z) == 0) {
*type = PSTORE_TYPE_DMESG;
diff --git a/drivers/firmware/efi/efi-pstore.c b/drivers/firmware/efi/efi-pstore.c
index cd8c35f..d5903ea 100644
--- a/drivers/firmware/efi/efi-pstore.c
+++ b/drivers/firmware/efi/efi-pstore.c
@@ -34,6 +34,7 @@ struct pstore_read_data {
int *count;
struct timespec *timespec;
bool *compressed;
+ ssize_t *ecc_notice_size;
char **buf;
};
@@ -69,6 +70,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
*cb_data->compressed = true;
else
*cb_data->compressed = false;
+ *cb_data->ecc_notice_size = 0;
} else if (sscanf(name, "dump-type%u-%u-%d-%lu",
cb_data->type, &part, &cnt, &time) == 4) {
*cb_data->id = generic_id(time, part, cnt);
@@ -76,6 +78,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
cb_data->timespec->tv_sec = time;
cb_data->timespec->tv_nsec = 0;
*cb_data->compressed = false;
+ *cb_data->ecc_notice_size = 0;
} else if (sscanf(name, "dump-type%u-%u-%lu",
cb_data->type, &part, &time) == 3) {
/*
@@ -88,6 +91,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
cb_data->timespec->tv_sec = time;
cb_data->timespec->tv_nsec = 0;
*cb_data->compressed = false;
+ *cb_data->ecc_notice_size = 0;
} else
return 0;
@@ -221,6 +225,7 @@ static ssize_t efi_pstore_read(u64 *id, enum pstore_type_id *type,
data.count = count;
data.timespec = timespec;
data.compressed = compressed;
+ data.ecc_notice_size = ecc_notice_size;
data.buf = buf;
*data.buf = kzalloc(EFIVARS_DATA_SIZE_MAX, GFP_KERNEL);
--
1.9.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] pstore: set ecc_notice_size to zero
2016-06-02 5:17 [PATCH] pstore: set ecc_notice_size to zero Geliang Tang
@ 2016-06-02 16:03 ` Kees Cook
0 siblings, 0 replies; 2+ messages in thread
From: Kees Cook @ 2016-06-02 16:03 UTC (permalink / raw)
To: Geliang Tang
Cc: Anton Vorontsov, Colin Cross, Tony Luck, Rafael J. Wysocki,
Len Brown, Matt Fleming, linux-acpi, LKML, linux-efi
On Wed, Jun 1, 2016 at 10:17 PM, Geliang Tang <geliangtang@gmail.com> wrote:
> Since a @ecc_notice_size parameter has been added in pstore_info.read(),
> this patch sets this parameter to zero in efi_pstore_read() and
> erst_reader().
>
> Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Thanks! I'll get this added.
-Kees
> ---
> drivers/acpi/apei/erst.c | 1 +
> drivers/firmware/efi/efi-pstore.c | 5 +++++
> 2 files changed, 6 insertions(+)
>
> diff --git a/drivers/acpi/apei/erst.c b/drivers/acpi/apei/erst.c
> index 3024edf..f096ab3 100644
> --- a/drivers/acpi/apei/erst.c
> +++ b/drivers/acpi/apei/erst.c
> @@ -1035,6 +1035,7 @@ skip:
> memcpy(*buf, rcd->data, len - sizeof(*rcd));
> *id = record_id;
> *compressed = false;
> + *ecc_notice_size = 0;
> if (uuid_le_cmp(rcd->sec_hdr.section_type,
> CPER_SECTION_TYPE_DMESG_Z) == 0) {
> *type = PSTORE_TYPE_DMESG;
> diff --git a/drivers/firmware/efi/efi-pstore.c b/drivers/firmware/efi/efi-pstore.c
> index cd8c35f..d5903ea 100644
> --- a/drivers/firmware/efi/efi-pstore.c
> +++ b/drivers/firmware/efi/efi-pstore.c
> @@ -34,6 +34,7 @@ struct pstore_read_data {
> int *count;
> struct timespec *timespec;
> bool *compressed;
> + ssize_t *ecc_notice_size;
> char **buf;
> };
>
> @@ -69,6 +70,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
> *cb_data->compressed = true;
> else
> *cb_data->compressed = false;
> + *cb_data->ecc_notice_size = 0;
> } else if (sscanf(name, "dump-type%u-%u-%d-%lu",
> cb_data->type, &part, &cnt, &time) == 4) {
> *cb_data->id = generic_id(time, part, cnt);
> @@ -76,6 +78,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
> cb_data->timespec->tv_sec = time;
> cb_data->timespec->tv_nsec = 0;
> *cb_data->compressed = false;
> + *cb_data->ecc_notice_size = 0;
> } else if (sscanf(name, "dump-type%u-%u-%lu",
> cb_data->type, &part, &time) == 3) {
> /*
> @@ -88,6 +91,7 @@ static int efi_pstore_read_func(struct efivar_entry *entry, void *data)
> cb_data->timespec->tv_sec = time;
> cb_data->timespec->tv_nsec = 0;
> *cb_data->compressed = false;
> + *cb_data->ecc_notice_size = 0;
> } else
> return 0;
>
> @@ -221,6 +225,7 @@ static ssize_t efi_pstore_read(u64 *id, enum pstore_type_id *type,
> data.count = count;
> data.timespec = timespec;
> data.compressed = compressed;
> + data.ecc_notice_size = ecc_notice_size;
> data.buf = buf;
>
> *data.buf = kzalloc(EFIVARS_DATA_SIZE_MAX, GFP_KERNEL);
> --
> 1.9.1
>
--
Kees Cook
Chrome OS & Brillo Security
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-06-02 16:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-02 5:17 [PATCH] pstore: set ecc_notice_size to zero Geliang Tang
2016-06-02 16:03 ` Kees Cook
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).