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

Commit 0286c67e authored by Rasmus Villemoes's avatar Rasmus Villemoes Committed by Jeff Kirsher
Browse files

intel: i40e: fix confused code



This code is pretty confused. The variable name 'bytes_not_copied'
clearly indicates that the programmer knew the semantics of
copy_{to,from}_user, but then the return value is checked for being
negative and used as a -Exxx return value.

I'm not sure this is the proper fix, but at least we get rid of the
dead code which pretended to check for access faults.

Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
Acked-by: default avatarShannon Nelson <shannon.nelson@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent 465fc643
Loading
Loading
Loading
Loading
+10 −14
Original line number Original line Diff line number Diff line
@@ -103,8 +103,8 @@ static ssize_t i40e_dbg_dump_read(struct file *filp, char __user *buffer,
	len = min_t(int, count, (i40e_dbg_dump_data_len - *ppos));
	len = min_t(int, count, (i40e_dbg_dump_data_len - *ppos));


	bytes_not_copied = copy_to_user(buffer, &i40e_dbg_dump_buf[*ppos], len);
	bytes_not_copied = copy_to_user(buffer, &i40e_dbg_dump_buf[*ppos], len);
	if (bytes_not_copied < 0)
	if (bytes_not_copied)
		return bytes_not_copied;
		return -EFAULT;


	*ppos += len;
	*ppos += len;
	return len;
	return len;
@@ -353,8 +353,8 @@ static ssize_t i40e_dbg_command_read(struct file *filp, char __user *buffer,
	bytes_not_copied = copy_to_user(buffer, buf, len);
	bytes_not_copied = copy_to_user(buffer, buf, len);
	kfree(buf);
	kfree(buf);


	if (bytes_not_copied < 0)
	if (bytes_not_copied)
		return bytes_not_copied;
		return -EFAULT;


	*ppos = len;
	*ppos = len;
	return len;
	return len;
@@ -981,12 +981,10 @@ static ssize_t i40e_dbg_command_write(struct file *filp,
	if (!cmd_buf)
	if (!cmd_buf)
		return count;
		return count;
	bytes_not_copied = copy_from_user(cmd_buf, buffer, count);
	bytes_not_copied = copy_from_user(cmd_buf, buffer, count);
	if (bytes_not_copied < 0) {
	if (bytes_not_copied) {
		kfree(cmd_buf);
		kfree(cmd_buf);
		return bytes_not_copied;
		return -EFAULT;
	}
	}
	if (bytes_not_copied > 0)
		count -= bytes_not_copied;
	cmd_buf[count] = '\0';
	cmd_buf[count] = '\0';


	cmd_buf_tmp = strchr(cmd_buf, '\n');
	cmd_buf_tmp = strchr(cmd_buf, '\n');
@@ -2034,8 +2032,8 @@ static ssize_t i40e_dbg_netdev_ops_read(struct file *filp, char __user *buffer,
	bytes_not_copied = copy_to_user(buffer, buf, len);
	bytes_not_copied = copy_to_user(buffer, buf, len);
	kfree(buf);
	kfree(buf);


	if (bytes_not_copied < 0)
	if (bytes_not_copied)
		return bytes_not_copied;
		return -EFAULT;


	*ppos = len;
	*ppos = len;
	return len;
	return len;
@@ -2068,10 +2066,8 @@ static ssize_t i40e_dbg_netdev_ops_write(struct file *filp,
	memset(i40e_dbg_netdev_ops_buf, 0, sizeof(i40e_dbg_netdev_ops_buf));
	memset(i40e_dbg_netdev_ops_buf, 0, sizeof(i40e_dbg_netdev_ops_buf));
	bytes_not_copied = copy_from_user(i40e_dbg_netdev_ops_buf,
	bytes_not_copied = copy_from_user(i40e_dbg_netdev_ops_buf,
					  buffer, count);
					  buffer, count);
	if (bytes_not_copied < 0)
	if (bytes_not_copied)
		return bytes_not_copied;
		return -EFAULT;
	else if (bytes_not_copied > 0)
		count -= bytes_not_copied;
	i40e_dbg_netdev_ops_buf[count] = '\0';
	i40e_dbg_netdev_ops_buf[count] = '\0';


	buf_tmp = strchr(i40e_dbg_netdev_ops_buf, '\n');
	buf_tmp = strchr(i40e_dbg_netdev_ops_buf, '\n');