* [PATCH v2] staging/lustre: Different prototypes between the declaration and the definition
@ 2014-09-04 18:28 Loïc Pellegrino
0 siblings, 0 replies; only message in thread
From: Loïc Pellegrino @ 2014-09-04 18:28 UTC (permalink / raw)
To: oleg.drokin, andreas.dilger, gregkh; +Cc: linux-kernel, devel, oort10
Align the prototype of lprocfs_wr_uint() in the declaration with the one used
in the definition.
The prototype is:
int lprocfs_wr_uint(struct file *file, const char __user *buffer,
unsigned long count, void *data)
In obdclass/lprocfs_status.c
But in lustre/include/lprocfs_status.h, the __user annotation is missing for
the attribute buffer.
The correct prototype is the first one (the definition) since:
- This function is eventually called by the write() function pointer of an
instance of struct file_operations
- In this function, buffer is a parameter of copy_from_user()
- Before the commit 73bb1da692d0dc3e93b9c9e29084d6a5dcbc37a6, the declaration
and the definition had the same prototype, but only the .c has been updated.
Correcting this will remove a sparse error and add sparse warnings.
This is a task of the Eudyptula challenge.
Signed-off-by: Loïc Pellegrino <oort10@gmail.com>
---
My previous email was not formatted correctly sorry.
drivers/staging/lustre/lustre/include/lprocfs_status.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/include/lprocfs_status.h b/drivers/staging/lustre/lustre/include/lprocfs_status.h
index 05b5285..ccb6cd4 100644
--- a/drivers/staging/lustre/lustre/include/lprocfs_status.h
+++ b/drivers/staging/lustre/lustre/include/lprocfs_status.h
@@ -611,7 +611,7 @@ extern int lprocfs_rd_atomic(struct seq_file *m, void *data);
extern int lprocfs_wr_atomic(struct file *file, const char __user *buffer,
unsigned long count, void *data);
extern int lprocfs_rd_uint(struct seq_file *m, void *data);
-extern int lprocfs_wr_uint(struct file *file, const char *buffer,
+extern int lprocfs_wr_uint(struct file *file, const char __user *buffer,
unsigned long count, void *data);
extern int lprocfs_rd_uuid(struct seq_file *m, void *data);
extern int lprocfs_rd_name(struct seq_file *m, void *data);
--
1.9.3
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2014-09-04 18:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-04 18:28 [PATCH v2] staging/lustre: Different prototypes between the declaration and the definition Loïc Pellegrino
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox