[dm-devel] [PATCH 16/29] Correctly print out 'max' for max_fds
Hannes Reinecke
hare at suse.de
Mon Jul 15 13:00:17 UTC 2013
If the value specified for 'max_fds' is the system-wide limit
we should be printing out 'max', and not that value.
Signed-off-by: Hannes Reinecke <hare at suse.de>
---
libmultipath/dict.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/libmultipath/dict.c b/libmultipath/dict.c
index b747fcd..6a58fa2 100644
--- a/libmultipath/dict.c
+++ b/libmultipath/dict.c
@@ -2565,10 +2565,16 @@ snprint_def_rr_min_io_rq (char * buff, int len, void * data)
static int
snprint_max_fds (char * buff, int len, void * data)
{
+ int r = 0, max_fds;
+
if (!conf->max_fds)
return 0;
- return snprintf(buff, len, "%d", conf->max_fds);
+ r = get_sys_max_fds(&max_fds);
+ if (!r && max_fds == conf->max_fds)
+ return snprintf(buff, len, "\"max\"");
+ else
+ return snprintf(buff, len, "%d", conf->max_fds);
}
static int
--
1.7.10.4
More information about the dm-devel
mailing list