summaryrefslogtreecommitdiffstats
path: root/misc-utils/lsblk.c
diff options
context:
space:
mode:
authorKarel Zak2018-09-14 15:36:59 +0200
committerKarel Zak2018-09-14 15:36:59 +0200
commit14560b7f5445e84c54122c9a8f6f65124b97ed2a (patch)
tree0a805aae3568a41c6fae9c9088c97de74f003643 /misc-utils/lsblk.c
parentlsblk: add columns FSAVAIL,FSSIZE,FSUSED,FSUSE% (diff)
downloadkernel-qcow2-util-linux-14560b7f5445e84c54122c9a8f6f65124b97ed2a.tar.gz
kernel-qcow2-util-linux-14560b7f5445e84c54122c9a8f6f65124b97ed2a.tar.xz
kernel-qcow2-util-linux-14560b7f5445e84c54122c9a8f6f65124b97ed2a.zip
lsblk: add lsblk.h
* move core struct to the header file * move debug stuff to the header file Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'misc-utils/lsblk.c')
-rw-r--r--misc-utils/lsblk.c84
1 files changed, 3 insertions, 81 deletions
diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c
index 97bddecfa..75ddd70ee 100644
--- a/misc-utils/lsblk.c
+++ b/misc-utils/lsblk.c
@@ -25,24 +25,20 @@
#include <getopt.h>
#include <stdlib.h>
#include <unistd.h>
-#include <stdint.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <fcntl.h>
#include <string.h>
#include <sys/ioctl.h>
-#include <inttypes.h>
#include <stdarg.h>
#include <locale.h>
#include <pwd.h>
#include <grp.h>
#include <ctype.h>
-#include <sys/statvfs.h>
#include <blkid.h>
#include <libmount.h>
-#include <libsmartcols.h>
#ifdef HAVE_LIBUDEV
#include <libudev.h>
@@ -62,23 +58,11 @@
#include "mangle.h"
#include "optutils.h"
-#include "debug.h"
+#include "lsblk.h"
-static UL_DEBUG_DEFINE_MASK(lsblk);
+UL_DEBUG_DEFINE_MASK(lsblk);
UL_DEBUG_DEFINE_MASKNAMES(lsblk) = UL_DEBUG_EMPTY_MASKNAMES;
-#define LSBLK_DEBUG_INIT (1 << 1)
-#define LSBLK_DEBUG_FILTER (1 << 2)
-#define LSBLK_DEBUG_DEV (1 << 3)
-#define LSBLK_DEBUG_CXT (1 << 4)
-#define LSBLK_DEBUG_ALL 0xFFFF
-
-#define DBG(m, x) __UL_DBG(lsblk, LSBLK_DEBUG_, m, x)
-#define ON_DBG(m, x) __UL_DBG_CALL(lsblk, LSBLK_DEBUG_, m, x)
-
-#define UL_DEBUG_CURRENT_MASK UL_DEBUG_MASK(lsblk)
-#include "debugobj.h"
-
#define LSBLK_EXIT_SOMEOK 64
#define LSBLK_EXIT_ALLFAILED 32
@@ -230,25 +214,7 @@ static struct colinfo infos[] = {
[COL_ZONED] = { "ZONED", 0.3, 0, N_("zone model") },
};
-struct lsblk {
- struct libscols_table *table; /* output table */
- struct libscols_column *sort_col;/* sort output by this column */
- int sort_id;
-
- const char *sysroot;
- int flags; /* LSBLK_* */
-
- unsigned int all_devices:1; /* print all devices, including empty */
- unsigned int bytes:1; /* print SIZE in bytes */
- unsigned int inverse:1; /* print inverse dependencies */
- unsigned int nodeps:1; /* don't print slaves/holders */
- unsigned int scsi:1; /* print only device with HCTL (SCSI) */
- unsigned int paths:1; /* print devnames with "/dev" prefix */
- unsigned int sort_hidden:1; /* sort column not between output columns */
- unsigned int force_tree_order:1;/* sort lines by parent->tree relation */
-};
-
-static struct lsblk *lsblk; /* global handler */
+struct lsblk *lsblk; /* global handler */
/* columns[] array specifies all currently wanted output column. The columns
* are defined by infos[] array and you can specify (on command line) each
@@ -286,50 +252,6 @@ static struct libmnt_cache *mntcache;
static struct udev *udev;
#endif
-struct blkdev_cxt {
- struct blkdev_cxt *parent;
-
- struct libscols_line *scols_line;
- struct stat st;
-
- char *name; /* kernel name in /sys/block */
- char *dm_name; /* DM name (dm/block) */
-
- char *filename; /* path to device node */
-
- struct path_cxt *sysfs;
-
- int partition; /* is partition? TRUE/FALSE */
-
- int probed; /* already probed */
- char *fstype; /* detected fs, NULL or "?" if cannot detect */
- char *uuid; /* filesystem UUID (or stack uuid) */
- char *ptuuid; /* partition table UUID */
- char *pttype; /* partition table type */
- char *label; /* filesystem label */
- char *parttype; /* partition type UUID */
- char *partuuid; /* partition UUID */
- char *partlabel; /* partition label */
- char *partflags; /* partition flags */
- char *wwn; /* storage WWN */
- char *serial; /* disk serial number */
- char *model; /* disk model */
-
- char *mountpoint; /* device mountpoint */
- struct statvfs fsstat; /* statvfs() result */
-
- int npartitions; /* # of partitions this device has */
- int nholders; /* # of devices mapped directly to this device
- * /sys/block/.../holders */
- int nslaves; /* # of devices this device maps to */
- int maj, min; /* devno */
- int discard; /* supports discard */
-
- uint64_t size; /* device size */
-
- unsigned int is_mounted : 1;
-};
-
static void lsblk_init_debug(void)
{
__UL_INIT_DEBUG_FROM_ENV(lsblk, LSBLK_DEBUG_, 0, LSBLK_DEBUG);