浏览代码

blktrace: use BLKTRACE_BDEV_SIZE as the name size for setup structure

Define as 32, which is is what BDEVNAME_SIZE is/was as well. This keeps
the user interface the same and gets rid of the difference between
kernel and user api here.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jens Axboe 16 年之前
父节点
当前提交
0497b345e7
共有 2 个文件被更改,包括 5 次插入6 次删除
  1. 2 1
      block/blktrace.c
  2. 3 5
      include/linux/blktrace_api.h

+ 2 - 1
block/blktrace.c

@@ -369,7 +369,8 @@ int do_blk_trace_setup(struct request_queue *q, char *name, dev_t dev,
 	if (!buts->buf_size || !buts->buf_nr)
 		return -EINVAL;
 
-	strcpy(buts->name, name);
+	strncpy(buts->name, name, BLKTRACE_BDEV_SIZE);
+	buts->name[BLKTRACE_BDEV_SIZE - 1] = '\0';
 
 	/*
 	 * some device names have larger paths - convert the slashes

+ 3 - 5
include/linux/blktrace_api.h

@@ -122,15 +122,13 @@ enum {
 	Blktrace_stopped,
 };
 
+#define BLKTRACE_BDEV_SIZE	32
+
 /*
  * User setup structure passed with BLKTRACESTART
  */
 struct blk_user_trace_setup {
-#ifdef __KERNEL__
-	char name[BDEVNAME_SIZE];	/* output */
-#else
-	char name[32];			/* output */
-#endif
+	char name[BLKTRACE_BDEV_SIZE];	/* output */
 	__u16 act_mask;			/* input */
 	__u32 buf_size;			/* input */
 	__u32 buf_nr;			/* input */