1 /* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
2 * vim:expandtab:shiftwidth=8:tabstop=8:
4 * Copyright (c) 2002 Cray Inc.
5 * Copyright (c) 2003 Cluster File Systems, Inc.
7 * This file is part of Portals, http://www.sf.net/projects/sandiaportals/
10 #ifndef _PROCBRIDGE_H_
11 #define _PROCBRIDGE_H_
18 #define NAL_FLAG_RUNNING 1
19 #define NAL_FLAG_STOPPING 2
20 #define NAL_FLAG_STOPPED 4
22 typedef struct procbridge {
23 /* sync between user threads and nal thread */
26 pthread_mutex_t mutex;
30 pthread_mutex_t nal_cb_lock;
33 typedef struct nal_init_args {
34 ptl_pid_t nia_requested_pid;
35 ptl_ni_limits_t *nia_limits;
40 extern void *nal_thread(void *);
43 #define PTL_INIT (LIB_MAX_DISPATCH+1)
44 #define PTL_FINI (LIB_MAX_DISPATCH+2)
49 extern void set_address(bridge t,ptl_pid_t pidrequest);
50 extern nal_t *procbridge_interface(int num_interface,
51 ptl_pt_index_t ptl_size,
52 ptl_ac_index_t acl_size,
53 ptl_pid_t requested_pid);