[sheepdog] [PATCH v2 2/4] sheep: don't allow it to plug new disk for pure gateway

Robin Dong robin.k.dong at gmail.com
Fri Jun 20 10:21:28 CEST 2014


From: Robin Dong <sanbai at taobao.com>

A sheep daemon which is lauched as pure gateway can't (and also don't need)
to add data path.

Signed-off-by: Robin Dong <sanbai at taobao.com>
Cc: Hitoshi Mitake <mitake.hitoshi at gmail.com>
---
v1-->v2:
  1. change result to 'SD_RES_INVALID_PARMS' and add log

 sheep/md.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sheep/md.c b/sheep/md.c
index 29f263f..e213ff6 100644
--- a/sheep/md.c
+++ b/sheep/md.c
@@ -802,6 +802,12 @@ static int do_plug_unplug(char *disks, bool plug)
 	path = strtok(disks, ",");
 	do {
 		if (plug) {
+			/* Not allowed to plug disk for pure gateway */
+			if (md.nr_disks == 0 || sys->this_node.nr_vnodes == 0) {
+				sd_err("Can't plug disk for pure gateway");
+				ret = SD_RES_INVALID_PARMS;
+				goto out;
+			}
 			if (!md_add_disk(path, true))
 				sd_err("failed to add %s", path);
 		} else {
-- 
1.7.12.4




More information about the sheepdog mailing list