[pnfs] Fwd: [PATCH 0/6] 2.6-latest
William A. (Andy) Adamson
andros at citi.umich.edu
Fri Oct 19 15:00:51 EDT 2007
Here are some design decisions that should be reviewed.
1) in the device decode (GETDEVICELIST/INFO) we have static arrays with the
following defines. we may want to do dynamic allocation, or play with the
values.
+#define NFS4_PNFS_MAX_STRIPE_CNT 16
+#define NFS4_PNFS_MAX_MULTI_DS 2
2) a new hlist of data servers, dev_dslist[] hashed by data server u32
ip_addr protected by dev_lock which also protects the list of deviceIDs
(dev_list).
a reference is taken for each deviceID in dev_dslist that refers to a data
server in dev_list.
struct nfs4_pnfs_dev_hlist {
rwlock_t dev_lock;
struct hlist_head dev_list[NFS4_PNFS_DEV_HASH];
struct hlist_head dev_dslist[NFS4_PNFS_DEV_HASH];
};
3) i will have to redo the layoutget decoding logic a bit now that i more
fully understand the stripe index stuff. the code also currently only ever
uses the first data server in a multipath equivalence class.
4) an nfs_page for pNFS i/o used to be marked as belonging to a data server
via the wb_devid field. this has been replace with the wb_devip and
wb_devport fields. these may chage as i code the i/o path.
5) i started with nfs4_proc_create_session() and changed the 'struct
nfs_server' interface to 'struct nfs_client, struct nfs4_sessions' to a
string of functions in nfs41_session_recovery.c (and some in client.c) so
that the data server could get by without a struct nfs_server. we can look
at changing the 'struct nfs_client' to a new structure that only has
session/clientid info at a later time.
the code builds without CONFIG_PNFS defined.
-->Andy
---------- Forwarded message ----------
From: William A. (Andy) Adamson <andros at citi.umich.edu>
Date: Oct 19, 2007 2:16 PM
Subject: [PATCH 0/6] 2.6-latest
To: pnfs at linux-nfs.org
Here are 6 patches against the linux-pnfs-2.6-latest tree that implement
fs_layout_types attribute, EXCHANGE_ID and CREATE_SESSION for data servers.
Please review. I'm open to design suggestions... :)
-->Andy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://linux-nfs.org/pipermail/pnfs/attachments/20071019/e393fcdc/attachment.htm
More information about the pNFS
mailing list