Module Name: src Committed By: tkusumi Date: Fri Dec 20 16:16:36 UTC 2019
Modified Files: src/sys/dev/dm: dm.h dm_pdev.c dm_target_linear.c dm_target_stripe.c Log Message: dm: Fix "table" output format of dm-linear and dm-stripe The existing "table" output showing device file path of pdev is not compatible with dm in Linux kernel (and also DragonFlyBSD). It should be showing "major:minor" instead. taken-from: DragonFlyBSD To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.49 src/sys/dev/dm/dm.h cvs rdiff -u -r1.21 -r1.22 src/sys/dev/dm/dm_pdev.c cvs rdiff -u -r1.33 -r1.34 src/sys/dev/dm/dm_target_linear.c cvs rdiff -u -r1.40 -r1.41 src/sys/dev/dm/dm_target_stripe.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/dm/dm.h diff -u src/sys/dev/dm/dm.h:1.48 src/sys/dev/dm/dm.h:1.49 --- src/sys/dev/dm/dm.h:1.48 Mon Dec 16 15:59:04 2019 +++ src/sys/dev/dm/dm.h Fri Dec 20 16:16:36 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: dm.h,v 1.48 2019/12/16 15:59:04 tkusumi Exp $ */ +/* $NetBSD: dm.h,v 1.49 2019/12/20 16:16:36 tkusumi Exp $ */ /* * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -103,6 +103,7 @@ typedef struct dm_table_head { */ typedef struct dm_pdev { char name[MAX_DEV_NAME]; + char udev_name[MAX_DEV_NAME]; struct vnode *pdev_vnode; uint64_t pdev_numsec; Index: src/sys/dev/dm/dm_pdev.c diff -u src/sys/dev/dm/dm_pdev.c:1.21 src/sys/dev/dm/dm_pdev.c:1.22 --- src/sys/dev/dm/dm_pdev.c:1.21 Sun Dec 15 14:39:42 2019 +++ src/sys/dev/dm/dm_pdev.c Fri Dec 20 16:16:36 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: dm_pdev.c,v 1.21 2019/12/15 14:39:42 tkusumi Exp $ */ +/* $NetBSD: dm_pdev.c,v 1.22 2019/12/20 16:16:36 tkusumi Exp $ */ /* * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: dm_pdev.c,v 1.21 2019/12/15 14:39:42 tkusumi Exp $"); +__KERNEL_RCSID(0, "$NetBSD: dm_pdev.c,v 1.22 2019/12/20 16:16:36 tkusumi Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -127,6 +127,10 @@ dm_pdev_insert(const char *dev_name) getdisksize(dmp->pdev_vnode, &dmp->pdev_numsec, &dmp->pdev_secsize); dmp->ref_cnt = 1; + snprintf(dmp->udev_name, sizeof(dmp->udev_name), "%d:%d", + major(dmp->pdev_vnode->v_rdev), minor(dmp->pdev_vnode->v_rdev)); + aprint_debug("%s: %s %s\n", __func__, dev_name, dmp->udev_name); + SLIST_INSERT_HEAD(&dm_pdev_list, dmp, next_pdev); mutex_exit(&dm_pdev_mutex); Index: src/sys/dev/dm/dm_target_linear.c diff -u src/sys/dev/dm/dm_target_linear.c:1.33 src/sys/dev/dm/dm_target_linear.c:1.34 --- src/sys/dev/dm/dm_target_linear.c:1.33 Wed Dec 18 14:31:35 2019 +++ src/sys/dev/dm/dm_target_linear.c Fri Dec 20 16:16:36 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: dm_target_linear.c,v 1.33 2019/12/18 14:31:35 tkusumi Exp $ */ +/* $NetBSD: dm_target_linear.c,v 1.34 2019/12/20 16:16:36 tkusumi Exp $ */ /* * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: dm_target_linear.c,v 1.33 2019/12/18 14:31:35 tkusumi Exp $"); +__KERNEL_RCSID(0, "$NetBSD: dm_target_linear.c,v 1.34 2019/12/20 16:16:36 tkusumi Exp $"); /* * This file implements initial version of device-mapper dklinear target. @@ -96,7 +96,7 @@ dm_target_linear_table(void *target_conf params = kmem_alloc(DM_MAX_PARAMS_SIZE, KM_SLEEP); snprintf(params, DM_MAX_PARAMS_SIZE, "%s %" PRIu64, - tlc->pdev->name, tlc->offset); + tlc->pdev->udev_name, tlc->offset); return params; } Index: src/sys/dev/dm/dm_target_stripe.c diff -u src/sys/dev/dm/dm_target_stripe.c:1.40 src/sys/dev/dm/dm_target_stripe.c:1.41 --- src/sys/dev/dm/dm_target_stripe.c:1.40 Wed Dec 18 14:31:35 2019 +++ src/sys/dev/dm/dm_target_stripe.c Fri Dec 20 16:16:36 2019 @@ -1,4 +1,4 @@ -/*$NetBSD: dm_target_stripe.c,v 1.40 2019/12/18 14:31:35 tkusumi Exp $*/ +/*$NetBSD: dm_target_stripe.c,v 1.41 2019/12/20 16:16:36 tkusumi Exp $*/ /* * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: dm_target_stripe.c,v 1.40 2019/12/18 14:31:35 tkusumi Exp $"); +__KERNEL_RCSID(0, "$NetBSD: dm_target_stripe.c,v 1.41 2019/12/20 16:16:36 tkusumi Exp $"); /* * This file implements initial version of device-mapper stripe target. @@ -197,7 +197,7 @@ dm_target_stripe_table(void *target_conf TAILQ_FOREACH(tlc, &tsc->stripe_devs, entries) { snprintf(tmp, DM_MAX_PARAMS_SIZE, " %s %" PRIu64, - tlc->pdev->name, tlc->offset); + tlc->pdev->udev_name, tlc->offset); strcat(params, tmp); }