aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/laptops
diff options
context:
space:
mode:
authorPavel Machek <pavel@ucw.cz>2014-08-06 02:32:41 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-08-09 12:13:40 -0400
commitd74aae4ea0257f3d6e94ef7a0420ef5074d6eb1e (patch)
tree63fc66293d491d13053bf59573eb200063f9a11c /Documentation/laptops
parentefe4a772215869e780e69d0037dca50e34aee6a7 (diff)
Documentation: freefall: simplify pathnames
Copying to local variable is actually not neccessary, if all we need to do is snprintf(). This also removes problem where devname could be missing zero termination. Reported-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se> Signed-off-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation/laptops')
-rw-r--r--Documentation/laptops/freefall.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/Documentation/laptops/freefall.c b/Documentation/laptops/freefall.c
index d4173186555c..5e44b20b1848 100644
--- a/Documentation/laptops/freefall.c
+++ b/Documentation/laptops/freefall.c
@@ -29,16 +29,12 @@ static const char app_name[] = "FREE FALL";
29 29
30static int set_unload_heads_path(char *device) 30static int set_unload_heads_path(char *device)
31{ 31{
32 char devname[64];
33
34 if (strlen(device) <= 5 || strncmp(device, "/dev/", 5) != 0) 32 if (strlen(device) <= 5 || strncmp(device, "/dev/", 5) != 0)
35 return -EINVAL; 33 return -EINVAL;
36 strncpy(devname, device + 5, sizeof(devname) - 1);
37 devname[sizeof(devname) - 1] = '\0';
38 strncpy(device_path, device, sizeof(device_path) - 1); 34 strncpy(device_path, device, sizeof(device_path) - 1);
39 35
40 snprintf(unload_heads_path, sizeof(unload_heads_path) - 1, 36 snprintf(unload_heads_path, sizeof(unload_heads_path) - 1,
41 "/sys/block/%s/device/unload_heads", devname); 37 "/sys/block/%s/device/unload_heads", device+5);
42 return 0; 38 return 0;
43} 39}
44 40