Date: Wed, 24 Jul 2013 22:38:37 +0000 (UTC) From: Jim Harris <jimharris@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r253625 - stable/9/sbin/nvmecontrol Message-ID: <201307242238.r6OMcb0S071789@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jimharris Date: Wed Jul 24 22:38:37 2013 New Revision: 253625 URL: http://svnweb.freebsd.org/changeset/base/253625 Log: MFC r253436, r253458: Simplify open_dev() by returning errno values rather than just 0 or 1. Also remove stat() call and just rely on errno from open() call to discern whether dev node exists or not. Approved by: re (kib) Sponsored by: Intel Modified: stable/9/sbin/nvmecontrol/devlist.c stable/9/sbin/nvmecontrol/nvmecontrol.c Directory Properties: stable/9/sbin/nvmecontrol/ (props changed) Modified: stable/9/sbin/nvmecontrol/devlist.c ============================================================================== --- stable/9/sbin/nvmecontrol/devlist.c Wed Jul 24 22:34:06 2013 (r253624) +++ stable/9/sbin/nvmecontrol/devlist.c Wed Jul 24 22:38:37 2013 (r253625) @@ -30,6 +30,7 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> #include <err.h> +#include <errno.h> #include <fcntl.h> #include <stddef.h> #include <stdio.h> @@ -80,7 +81,7 @@ devlist(int argc, char *argv[]) ret = open_dev(name, &fd, 0, 0); if (ret != 0) { - if (fd < 0) { + if (ret == EACCES) { warnx("could not open /dev/%s\n", name); continue; } else Modified: stable/9/sbin/nvmecontrol/nvmecontrol.c ============================================================================== --- stable/9/sbin/nvmecontrol/nvmecontrol.c Wed Jul 24 22:34:06 2013 (r253624) +++ stable/9/sbin/nvmecontrol/nvmecontrol.c Wed Jul 24 22:38:37 2013 (r253625) @@ -163,7 +163,6 @@ read_namespace_data(int fd, int nsid, st int open_dev(const char *str, int *fd, int show_error, int exit_on_error) { - struct stat devstat; char full_path[64]; if (!strnstr(str, NVME_CTRLR_PREFIX, strlen(NVME_CTRLR_PREFIX))) { @@ -173,19 +172,10 @@ open_dev(const char *str, int *fd, int s if (exit_on_error) exit(1); else - return (1); + return (EINVAL); } snprintf(full_path, sizeof(full_path), "/dev/%s", str); - if (stat(full_path, &devstat) != 0) { - if (show_error) - warn("could not stat %s", full_path); - if (exit_on_error) - exit(1); - else - return (1); - } - *fd = open(full_path, O_RDWR); if (*fd < 0) { if (show_error) @@ -193,7 +183,7 @@ open_dev(const char *str, int *fd, int s if (exit_on_error) exit(1); else - return (1); + return (errno); } return (0);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307242238.r6OMcb0S071789>