From 6e18d90b218dfa3d6ecdea8cb4f8a7ce56bde74a Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Wed, 26 Oct 2016 06:51:18 +0530 Subject: afr,ec: Heal device files with correct major, minor numbers Thanks a lot to xiaoping.wu@nokia.com from Nokia for the bug and the fix. >BUG: 1384297 >Change-Id: Ie443237e85d34633b5dd30f85eaa2ac34e45754c >Signed-off-by: Pranith Kumar K >Reviewed-on: http://review.gluster.org/15728 >Smoke: Gluster Build System >NetBSD-regression: NetBSD Build System >Reviewed-by: Xavier Hernandez >CentOS-regression: Gluster Build System Change-Id: I7646adc3771ff76cdf9c979b575bbcd0b3bc1b9a BUG: 1388948 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/15735 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System Reviewed-by: Xavier Hernandez --- xlators/cluster/afr/src/afr-self-heal-entry.c | 3 ++- xlators/cluster/ec/src/ec-heal.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'xlators') diff --git a/xlators/cluster/afr/src/afr-self-heal-entry.c b/xlators/cluster/afr/src/afr-self-heal-entry.c index 985cebe76b9..573b5435eae 100644 --- a/xlators/cluster/afr/src/afr-self-heal-entry.c +++ b/xlators/cluster/afr/src/afr-self-heal-entry.c @@ -144,7 +144,8 @@ afr_selfheal_recreate_entry (xlator_t *this, int dst, int source, inode_t *dir, if (ret) goto out; ret = syncop_mknod (priv->children[dst], &loc, mode, - iatt->ia_rdev, &newent, xdata, NULL); + makedev (ia_major(iatt->ia_rdev), ia_minor (iatt->ia_rdev)), + &newent, xdata, NULL); if (ret == 0 && newent.ia_nlink == 1) { /* New entry created. Mark @dst pending on all sources */ newentry[dst] = 1; diff --git a/xlators/cluster/ec/src/ec-heal.c b/xlators/cluster/ec/src/ec-heal.c index 94ff4757b4d..051d218331a 100644 --- a/xlators/cluster/ec/src/ec-heal.c +++ b/xlators/cluster/ec/src/ec-heal.c @@ -1148,7 +1148,8 @@ ec_create_name (call_frame_t *frame, ec_t *ec, inode_t *parent, char *name, replies, output, frame, ec->xl, &loc, st_mode_from_ia (ia->ia_prot, ia->ia_type), - ia->ia_rdev, 0, xdata); + makedev(ia_major(ia->ia_rdev), ia_minor(ia->ia_rdev)), + 0, xdata); break; } -- cgit