public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
* F20 nfs-utils exportfs patch
@ 2014-09-05 17:02 Henrique Martins
  2014-10-31 18:33 ` Henrique Martins
  0 siblings, 1 reply; 4+ messages in thread
From: Henrique Martins @ 2014-09-05 17:02 UTC (permalink / raw)
  To: linux-nfs

[-- Attachment #1: Type: text/plain, Size: 490 bytes --]


Attaching path to exportfs that:
- in client.c/client_lookup:
    changes the (x)log level for unresolvable entries in
    /etc/exports from L_ERROR to L_WARNING,
- in hostname.c/host_addrinfo:
    changes the (x)log level for unresolvable entries in
    /etc/exports from D_GENERAL to D_PARSE,
- in export.c/export_read:
    counts the number of exported volume entries and
    generates a (x)log L_ERROR if no volumes are exported.

Built and tested on a Fedora 20 system.

-- Henrique


[-- Attachment #2: nfs-utils-1.3.0-exportfs.patch --]
[-- Type: text/x-diff, Size: 1718 bytes --]

--- nfs-utils-1.3.0/support/export/client.c.orig	2014-09-05 08:21:37.568364360 -0700
+++ nfs-utils-1.3.0/support/export/client.c	2014-09-05 08:21:41.709451778 -0700
@@ -277,7 +277,7 @@
 	if (htype == MCL_FQDN && !canonical) {
 		ai = host_addrinfo(hname);
 		if (!ai) {
-			xlog(L_ERROR, "Failed to resolve %s", hname);
+			xlog(L_WARNING, "Failed to resolve %s", hname);
 			goto out;
 		}
 		hname = ai->ai_canonname;
--- nfs-utils-1.3.0/support/export/hostname.c.orig	2014-09-05 08:09:07.387551291 -0700
+++ nfs-utils-1.3.0/support/export/hostname.c	2014-09-05 08:09:13.799573723 -0700
@@ -175,11 +175,11 @@
 	case 0:
 		return ai;
 	case EAI_SYSTEM:
-		xlog(D_GENERAL, "%s: failed to resolve %s: (%d) %m",
+		xlog(D_PARSE, "%s: failed to resolve %s: (%d) %m",
 				__func__, hostname, errno);
 		break;
 	default:
-		xlog(D_GENERAL, "%s: failed to resolve %s: %s",
+		xlog(D_PARSE, "%s: failed to resolve %s: %s",
 				__func__, hostname, gai_strerror(error));
 		break;
 	}
--- nfs-utils-1.3.0/support/export/export.c.orig	2014-03-25 08:12:07.000000000 -0700
+++ nfs-utils-1.3.0/support/export/export.c	2014-09-05 09:23:37.424105125 -0700
@@ -76,15 +76,22 @@
 	struct exportent	*eep;
 	nfs_export		*exp;

+        int volumes = 0;
+
 	setexportent(fname, "r");
 	while ((eep = getexportent(0,1)) != NULL) {
 		exp = export_lookup(eep->e_hostname, eep->e_path, 0);
-		if (!exp)
-			export_create(eep, 0);
+		if (!exp) {
+			exp = export_create(eep, 0);
+                        if (exp)
+                        	volumes++;
+                }
 		else
 			warn_duplicated_exports(exp, eep);
 	}
 	endexportent();
+        if (volumes == 0)
+        	xlog(L_ERROR, "no or all unresolvable export entries");
 }

 /**

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: F20 nfs-utils exportfs patch
  2014-09-05 17:02 F20 nfs-utils exportfs patch Henrique Martins
@ 2014-10-31 18:33 ` Henrique Martins
  2014-11-04 17:57   ` Steve Dickson
  0 siblings, 1 reply; 4+ messages in thread
From: Henrique Martins @ 2014-10-31 18:33 UTC (permalink / raw)
  To: linux-nfs; +Cc: Steve Dickson

[-- Attachment #1: Type: text/plain, Size: 670 bytes --]


Re-sending this patch, at Steve Dickson's request.

-- Henrique

--------------------------------------------------------------

Attaching path to exportfs that:
- in client.c/client_lookup:
    changes the (x)log level for unresolvable entries in
    /etc/exports from L_ERROR to L_WARNING,
- in hostname.c/host_addrinfo:
    changes the (x)log level for unresolvable entries in
    /etc/exports from D_GENERAL to D_PARSE,
- in export.c/export_read:
    counts the number of exported volume entries and
    generates a (x)log L_ERROR if no volumes are exported.

Built and tested on a Fedora 20 system.

--------------------------------------------------------------


[-- Attachment #2: nfs-utils-1.3.0-exportfs.patch --]
[-- Type: text/x-diff, Size: 1718 bytes --]

--- nfs-utils-1.3.0/support/export/client.c.orig	2014-09-05 08:21:37.568364360 -0700
+++ nfs-utils-1.3.0/support/export/client.c	2014-09-05 08:21:41.709451778 -0700
@@ -277,7 +277,7 @@
 	if (htype == MCL_FQDN && !canonical) {
 		ai = host_addrinfo(hname);
 		if (!ai) {
-			xlog(L_ERROR, "Failed to resolve %s", hname);
+			xlog(L_WARNING, "Failed to resolve %s", hname);
 			goto out;
 		}
 		hname = ai->ai_canonname;
--- nfs-utils-1.3.0/support/export/hostname.c.orig	2014-09-05 08:09:07.387551291 -0700
+++ nfs-utils-1.3.0/support/export/hostname.c	2014-09-05 08:09:13.799573723 -0700
@@ -175,11 +175,11 @@
 	case 0:
 		return ai;
 	case EAI_SYSTEM:
-		xlog(D_GENERAL, "%s: failed to resolve %s: (%d) %m",
+		xlog(D_PARSE, "%s: failed to resolve %s: (%d) %m",
 				__func__, hostname, errno);
 		break;
 	default:
-		xlog(D_GENERAL, "%s: failed to resolve %s: %s",
+		xlog(D_PARSE, "%s: failed to resolve %s: %s",
 				__func__, hostname, gai_strerror(error));
 		break;
 	}
--- nfs-utils-1.3.0/support/export/export.c.orig	2014-03-25 08:12:07.000000000 -0700
+++ nfs-utils-1.3.0/support/export/export.c	2014-09-05 09:23:37.424105125 -0700
@@ -76,15 +76,22 @@
 	struct exportent	*eep;
 	nfs_export		*exp;

+        int volumes = 0;
+
 	setexportent(fname, "r");
 	while ((eep = getexportent(0,1)) != NULL) {
 		exp = export_lookup(eep->e_hostname, eep->e_path, 0);
-		if (!exp)
-			export_create(eep, 0);
+		if (!exp) {
+			exp = export_create(eep, 0);
+                        if (exp)
+                        	volumes++;
+                }
 		else
 			warn_duplicated_exports(exp, eep);
 	}
 	endexportent();
+        if (volumes == 0)
+        	xlog(L_ERROR, "no or all unresolvable export entries");
 }

 /**

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: F20 nfs-utils exportfs patch
  2014-10-31 18:33 ` Henrique Martins
@ 2014-11-04 17:57   ` Steve Dickson
  2014-11-05  1:30     ` Henrique Martins
  0 siblings, 1 reply; 4+ messages in thread
From: Steve Dickson @ 2014-11-04 17:57 UTC (permalink / raw)
  To: Henrique Martins; +Cc: linux-nfs

Re-posting with the patch inlined with comments.

On 10/31/2014 02:33 PM, Henrique Martins wrote:
> 
> Re-sending this patch, at Steve Dickson's request.
Thanks... but... :-) 

There is no Signed-off-by: line as described in
  https://www.kernel.org/doc/Documentation/SubmittingPatches

and there is no description section as the above document 
describes 

Also, please in-line the patch in the email instead 
of attaching them... I just makes is easier to review.
 
> 
> -- Henrique
> 
> --------------------------------------------------------------
> 
> Attaching path to exportfs that:
> - in client.c/client_lookup:
>     changes the (x)log level for unresolvable entries in
>     /etc/exports from L_ERROR to L_WARNING,
> - in hostname.c/host_addrinfo:
>     changes the (x)log level for unresolvable entries in
>     /etc/exports from D_GENERAL to D_PARSE,
> - in export.c/export_read:
>     counts the number of exported volume entries and
>     generates a (x)log L_ERROR if no volumes are exported.
> 
> Built and tested on a Fedora 20 system.
> 
> --------------------------------------------------------------
> 
--- nfs-utils-1.3.0/support/export/client.c.orig	2014-09-05 08:21:37.568364360 -0700
+++ nfs-utils-1.3.0/support/export/client.c	2014-09-05 08:21:41.709451778 -0700
@@ -277,7 +277,7 @@
 	if (htype == MCL_FQDN && !canonical) {
 		ai = host_addrinfo(hname);
 		if (!ai) {
-			xlog(L_ERROR, "Failed to resolve %s", hname);
+			xlog(L_WARNING, "Failed to resolve %s", hname);
 			goto out;
 		}
 		hname = ai->ai_canonname;
--- nfs-utils-1.3.0/support/export/hostname.c.orig	2014-09-05 08:09:07.387551291 -0700
+++ nfs-utils-1.3.0/support/export/hostname.c	2014-09-05 08:09:13.799573723 -0700
@@ -175,11 +175,11 @@
 	case 0:
 		return ai;
 	case EAI_SYSTEM:
-		xlog(D_GENERAL, "%s: failed to resolve %s: (%d) %m",
+		xlog(D_PARSE, "%s: failed to resolve %s: (%d) %m",
 				__func__, hostname, errno);
 		break;
 	default:
-		xlog(D_GENERAL, "%s: failed to resolve %s: %s",
+		xlog(D_PARSE, "%s: failed to resolve %s: %s",
 				__func__, hostname, gai_strerror(error));
 		break;
 	}
Just curious as to why these changes... What does  D_PARSE do that
D_GENERAL does not?

--- nfs-utils-1.3.0/support/export/export.c.orig	2014-03-25 08:12:07.000000000 -0700
+++ nfs-utils-1.3.0/support/export/export.c	2014-09-05 09:23:37.424105125 -0700
@@ -76,15 +76,22 @@
 	struct exportent	*eep;
 	nfs_export		*exp;

+        int volumes = 0;
+
 	setexportent(fname, "r");
 	while ((eep = getexportent(0,1)) != NULL) {
 		exp = export_lookup(eep->e_hostname, eep->e_path, 0);
-		if (!exp)
-			export_create(eep, 0);
+		if (!exp) {
+			exp = export_create(eep, 0);
+                        if (exp)
+                        	volumes++;
+                }
 		else
 			warn_duplicated_exports(exp, eep);
 	}
 	endexportent();
+        if (volumes == 0)
+        	xlog(L_ERROR, "no or all unresolvable export entries");
 }

 /**

When testing the patch, I notice two "Failed to resolve" warning messages
are logged for each export... Its not because of this patch but
I wounder how that could be cleaned up a bit....

So please re-post with in correct patch format and we will be good to go! 

steved. 
   

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: F20 nfs-utils exportfs patch
  2014-11-04 17:57   ` Steve Dickson
@ 2014-11-05  1:30     ` Henrique Martins
  0 siblings, 0 replies; 4+ messages in thread
From: Henrique Martins @ 2014-11-05  1:30 UTC (permalink / raw)
  To: Steve Dickson; +Cc: linux-nfs

Missed these comments in the middle of the patch ...

> Just curious as to why these changes... What does  D_PARSE do that
> D_GENERAL does not?

D_PARSE, and L_WARNING, don't cause xlog to return an error,
D_GENERAL and L_ERROR do.  An error from xlog which will
cause nfsd to error out and not start.

I changed L_ERROR with L_WARNING, but there was no
D_WARNING def or similar so I went with D_PARSE instead of
adding that one.

> When testing the patch, I notice two "Failed to resolve" warning messages
> are logged for each export... Its not because of this patch but
> I wounder how that could be cleaned up a bit....

Hopefully you solved that, otherwise I would have to hunt on
which machine I generated those patches, if I didn't wipe
out the rpmbuild environment yet..

-- Henrique

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-11-05  1:30 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-05 17:02 F20 nfs-utils exportfs patch Henrique Martins
2014-10-31 18:33 ` Henrique Martins
2014-11-04 17:57   ` Steve Dickson
2014-11-05  1:30     ` Henrique Martins

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox