lkml.org 
[lkml]   [2020]   [Jul]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 06/13] fs/kernel_read_file: Remove redundant size argument
From
Date
Hi Kees,

On 2020-07-17 10:43 a.m., Kees Cook wrote:
> In preparation for refactoring kernel_read_file*(), remove the redundant
> "size" argument which is not needed: it can be included in the return
> code, with callers adjusted. (VFS reads already cannot be larger than
> INT_MAX.)
>
> Signed-off-by: Kees Cook <keescook@chromium.org>
> ---
> drivers/base/firmware_loader/main.c | 8 ++++----
> fs/kernel_read_file.c | 20 +++++++++-----------
> include/linux/kernel_read_file.h | 8 ++++----
> kernel/kexec_file.c | 13 ++++++-------
> kernel/module.c | 7 +++----
> security/integrity/digsig.c | 5 +++--
> security/integrity/ima/ima_fs.c | 5 +++--
> 7 files changed, 32 insertions(+), 34 deletions(-)
>
> diff --git a/drivers/base/firmware_loader/main.c b/drivers/base/firmware_loader/main.c
> index d4a413ea48ce..ea419c7d3d34 100644
> --- a/drivers/base/firmware_loader/main.c
> +++ b/drivers/base/firmware_loader/main.c
> @@ -462,7 +462,7 @@ fw_get_filesystem_firmware(struct device *device, struct fw_priv *fw_priv,
> size_t in_size,
> const void *in_buffer))
> {
> - loff_t size;
> + size_t size;
> int i, len;
> int rc = -ENOENT;
> char *path;
> @@ -494,10 +494,9 @@ fw_get_filesystem_firmware(struct device *device, struct fw_priv *fw_priv,
> fw_priv->size = 0;
>
> /* load firmware files from the mount namespace of init */
> - rc = kernel_read_file_from_path_initns(path, &buffer,
> - &size, msize,
> + rc = kernel_read_file_from_path_initns(path, &buffer, msize,
> READING_FIRMWARE);
> - if (rc) {
> + if (rc < 0) {
> if (rc != -ENOENT)
> dev_warn(device, "loading %s failed with error %d\n",
> path, rc);
> @@ -506,6 +505,7 @@ fw_get_filesystem_firmware(struct device *device, struct fw_priv *fw_priv,
> path);
> continue;
> }
> + size = rc;
Change fails to return 0.  Need rc = 0; here.
> dev_dbg(device, "Loading firmware from %s\n", path);
> if (decompress) {
> dev_dbg(device, "f/w decompressing %s\n",
>

\
 
 \ /
  Last update: 2020-07-21 23:45    [W:0.184 / U:0.724 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site