On Mon, Jan 08, 2007 at 11:49:32PM +0100, Adrian Knoth wrote:
> The attached patch fixes this problem, but perhaps there is
New patch, I've missed the non-NFS case.
--
Cluster and Metacomputing Working Group
Friedrich-Schiller-Universität Jena, Germany
private: http://adi.thur.de
Index: ompi/mca/io/romio/romio/adio/common/ad_open.c
===================================================================
--- ompi/mca/io/romio/romio/adio/common/ad_open.c (revision 1913)
+++ ompi/mca/io/romio/romio/adio/common/ad_open.c (working copy)
@@ -5,6 +5,9 @@
* See COPYRIGHT notice in top-level directory.
*/
+#include <libgen.h>
+#include <unistd.h>
+
#include "adio.h"
#include "adio_extern.h"
#include "adio_cb_config_list.h"
@@ -226,6 +229,17 @@
}
fd->access_mode = access_mode;
+ if ((ADIO_NFS == fd->file_system)) {
+ char *dirc = ADIOI_Strdup(filename);
+ char *dname = dirname (dirc);
+ int my_fd;
+
+ my_fd = open (dname, O_RDONLY);
+ //stat (my_fd, NULL);
+ close (my_fd);
+ ADIOI_Free(dirc);
+ free (dname);
+ }
(*(fd->fns->ADIOI_xxx_Open))(fd, error_code);
/* if error, may be it was due to the change in amode above.