Index: Linux-PAM/modules/pam_limits/pam_limits.c
===================================================================
--- Linux-PAM/modules/pam_limits/pam_limits.c	(revision 319)
+++ Linux-PAM/modules/pam_limits/pam_limits.c	(working copy)
@@ -589,6 +589,14 @@
 	    continue;
 	}
 	retval = setrlimit(i, &pl->limits[i].limit);
+	if (retval != 0&& !(i == RLIMIT_NOFILE &&
+			   pl->limits[i].limit.rlim_cur == RLIM_INFINITY)) {
+	            int save_errno = errno;
+	            _pam_log(LOG_DEBUG, "setrlimit limit #%d to soft=%d, hard=%d failed: %s; uid=%d euid=%d",
+                    i,pl->limits[i].limit.rlim_cur, pl->limits[i].limit.rlim_max,
+                    strerror(errno), getuid(), geteuid());
+		    errno = save_errno;
+        }
 	if (retval == -1 && errno==EPERM)
 	  continue;
 	status |= retval;
