On Mon, 2023-02-13 at 16:26 +1100, Michael Ellerman wrote:
Andrew Donnellan [off-list ref] writes:
quoted
On Fri, 2023-02-10 at 16:28 -0500, Stefan Berger wrote:
quoted
quoted
quoted
+err:
+ kfree(var.data);
remove the kfree()
Actually don't remove it but it should probably be
if (var.data != &version)
kfree(var.data);
Argh, thanks for catching this.
I don't think the condition is needed - we can assume the var.data
is
unmodified.
mpe, are you able to fix this up in merge?
Yeah, can you reply here with the delta you want applied.
cheers
diff --git a/arch/powerpc/platforms/pseries/plpks-secvar.c
b/arch/powerpc/platforms/pseries/plpks-secvar.c
index 98d0f2b31e0d..bdfe63bc8705 100644
--- a/arch/powerpc/platforms/pseries/plpks-secvar.c
+++ b/arch/powerpc/platforms/pseries/plpks-secvar.c
@@ -135,7 +135,7 @@ static int plpks_set_variable(const char *key, u64
key_len, u8 *data,
goto err;
var.namelen = rc * 2;
- memcpy(&flags, data, sizeof(flags));
+ flags = cpu_to_be64p((__u64 *)data);
var.datalen = data_size - sizeof(flags);
var.data = data + sizeof(flags);
@@ -184,7 +184,6 @@ static ssize_t plpks_secvar_format(char *buf,
size_t bufsize)
ret = snprintf(buf, bufsize, "ibm,plpks-sb-v%hhu", version);
err:
- kfree(var.data);
return ret;
}
--
Andrew Donnellan OzLabs, ADL Canberra
ajd@linux.ibm.com IBM Australia Limited