rpms/kernel/F-13 linux-2.6.33-inline.patch, NONE, 1.1.10.2 pnfs-all-2.6.33-2010-06-01.patch, NONE, 1.1.2.1 config-generic, 1.365, 1.365.2.1 kernel.spec, 1.2049, 1.2049.2.1
Steve Dickson
steved at fedoraproject.org
Tue Jun 1 12:19:30 UTC 2010
- Previous message: rpms/bugzilla/devel bugzilla-graphs-dir.patch, NONE, 1.1 .cvsignore, 1.18, 1.19 bugzilla.spec, 1.34, 1.35 sources, 1.18, 1.19
- Next message: rpms/tar/devel tar-1.23-oldarchive.patch, NONE, 1.1 tar.spec, 1.101, 1.102
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: steved
Update of /cvs/pkgs/rpms/kernel/F-13
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv20911
Modified Files:
Tag: private-pnfs-all-2_6_33-2010-06-01
config-generic kernel.spec
Added Files:
Tag: private-pnfs-all-2_6_33-2010-06-01
linux-2.6.33-inline.patch pnfs-all-2.6.33-2010-06-01.patch
Log Message:
Update pNFS code to latest release: pnfs-all-2.6.33-2010-06-01
linux-2.6.33-inline.patch:
Makefile | 1 +
1 file changed, 1 insertion(+)
--- NEW FILE linux-2.6.33-inline.patch ---
diff -up linux-2.6.33.noarch/arch/x86/Makefile.orig linux-2.6.33.noarch/arch/x86/Makefile
--- linux-2.6.33.noarch/arch/x86/Makefile.orig 2010-04-19 08:28:51.969330000 -0400
+++ linux-2.6.33.noarch/arch/x86/Makefile 2010-04-19 08:38:55.372138000 -0400
@@ -81,6 +81,7 @@ ifdef CONFIG_CC_STACKPROTECTOR
$(warning stack protector enabled but no compiler support)
endif
endif
+KBUILD_CFLAGS += -fno-inline-functions-called-once
# Don't unroll struct assignments with kmemcheck enabled
ifeq ($(CONFIG_KMEMCHECK),y)
pnfs-all-2.6.33-2010-06-01.patch:
Documentation/filesystems/spnfs.txt | 211 +++
drivers/md/dm-ioctl.c | 24
drivers/scsi/hosts.c | 3
drivers/scsi/osd/osd_initiator.c | 4
fs/Kconfig | 22
fs/exofs/Kbuild | 1
fs/exofs/Kconfig | 1
fs/exofs/common.h | 39
fs/exofs/exofs.h | 79 +
fs/exofs/export.c | 413 ++++++
fs/exofs/inode.c | 197 +--
fs/exofs/ios.c | 577 +++++++--
fs/exofs/super.c | 122 +
fs/exportfs/Makefile | 5
fs/exportfs/expfs.c | 7
fs/exportfs/nfs4blocklayoutxdr.c | 158 ++
fs/exportfs/nfs4filelayoutxdr.c | 218 +++
fs/exportfs/pnfs_osd_xdr_srv.c | 289 ++++
fs/gfs2/ops_fstype.c | 4
fs/nfs/Kconfig | 38
fs/nfs/Makefile | 7
fs/nfs/blocklayout/Makefile | 6
fs/nfs/blocklayout/blocklayout.c | 1202 ++++++++++++++++++
fs/nfs/blocklayout/blocklayout.h | 282 ++++
fs/nfs/blocklayout/blocklayoutdev.c | 738 +++++++++++
fs/nfs/blocklayout/blocklayoutdm.c | 337 +++++
fs/nfs/blocklayout/extents.c | 946 ++++++++++++++
fs/nfs/callback.h | 39
fs/nfs/callback_proc.c | 278 ++++
fs/nfs/callback_xdr.c | 170 ++
fs/nfs/client.c | 60
fs/nfs/direct.c | 229 ++-
fs/nfs/file.c | 48
fs/nfs/inode.c | 77 +
fs/nfs/internal.h | 34
fs/nfs/nfs3proc.c | 1
fs/nfs/nfs4_fs.h | 4
fs/nfs/nfs4filelayout.c | 859 +++++++++++++
fs/nfs/nfs4filelayout.h | 131 ++
fs/nfs/nfs4filelayoutdev.c | 896 ++++++++++++++
fs/nfs/nfs4proc.c | 688 ++++++++++
fs/nfs/nfs4renewd.c | 26
fs/nfs/nfs4state.c | 26
fs/nfs/nfs4xdr.c | 982 ++++++++++++++-
fs/nfs/objlayout/Kbuild | 11
fs/nfs/objlayout/objio_osd.c | 1098 +++++++++++++++++
fs/nfs/objlayout/objlayout.c | 792 ++++++++++++
fs/nfs/objlayout/objlayout.h | 163 ++
fs/nfs/objlayout/panfs_shim.c | 721 +++++++++++
fs/nfs/objlayout/panfs_shim.h | 482 +++++++
fs/nfs/objlayout/pnfs_osd_xdr_cli.c | 431 ++++++
fs/nfs/pagelist.c | 13
fs/nfs/pnfs.c | 2300 ++++++++++++++++++++++++++++++++++++
fs/nfs/pnfs.h | 376 +++++
fs/nfs/proc.c | 1
fs/nfs/read.c | 101 +
fs/nfs/super.c | 67 +
fs/nfs/write.c | 227 ++-
fs/nfsd/Kconfig | 49
fs/nfsd/Makefile | 4
fs/nfsd/bl_com.c | 290 ++++
fs/nfsd/bl_ops.c | 1672 ++++++++++++++++++++++++++
fs/nfsd/export.c | 106 +
fs/nfsd/nfs4callback.c | 399 ++++++
fs/nfsd/nfs4pnfsd.c | 1688 ++++++++++++++++++++++++++
fs/nfsd/nfs4pnfsdlm.c | 405 ++++++
fs/nfsd/nfs4pnfsds.c | 620 +++++++++
fs/nfsd/nfs4proc.c | 426 ++++++
fs/nfsd/nfs4state.c | 200 ++-
fs/nfsd/nfs4xdr.c | 538 ++++++++
fs/nfsd/nfsctl.c | 105 +
fs/nfsd/nfsd.h | 8
fs/nfsd/nfsfh.c | 7
fs/nfsd/nfsfh.h | 39
fs/nfsd/nfssvc.c | 2
fs/nfsd/pnfsd.h | 141 ++
fs/nfsd/pnfsd_lexp.c | 225 +++
fs/nfsd/spnfs_com.c | 535 ++++++++
fs/nfsd/spnfs_ops.c | 878 +++++++++++++
fs/nfsd/state.h | 76 +
fs/nfsd/vfs.c | 74 +
fs/nfsd/xdr4.h | 54
include/linux/exp_xdr.h | 141 ++
include/linux/exportfs.h | 59
include/linux/fs.h | 2
include/linux/nfs4.h | 60
include/linux/nfs4_pnfs.h | 318 ++++
include/linux/nfs_fs.h | 40
include/linux/nfs_fs_sb.h | 32
include/linux/nfs_iostat.h | 3
include/linux/nfs_page.h | 10
include/linux/nfs_xdr.h | 48
include/linux/nfsd/const.h | 1
include/linux/nfsd/debug.h | 2
include/linux/nfsd/export.h | 1
include/linux/nfsd/nfs4layoutxdr.h | 132 ++
include/linux/nfsd/nfs4pnfsdlm.h | 52
include/linux/nfsd/nfsd4_pnfs.h | 269 ++++
include/linux/nfsd/syscall.h | 8
include/linux/nfsd4_block.h | 101 +
include/linux/nfsd4_spnfs.h | 345 +++++
include/linux/panfs_shim_api.h | 57
include/linux/pnfs_osd_xdr.h | 433 ++++++
include/linux/pnfs_xdr.h | 139 ++
include/linux/posix_acl.h | 1
include/linux/sunrpc/msg_prot.h | 2
include/linux/sunrpc/rpc_pipe_fs.h | 1
include/linux/sunrpc/svc_xprt.h | 37
include/linux/sunrpc/xdr.h | 8
net/sunrpc/backchannel_rqst.c | 2
net/sunrpc/xdr.c | 35
111 files changed, 27594 insertions(+), 547 deletions(-)
--- NEW FILE pnfs-all-2.6.33-2010-06-01.patch ---
diff -up linux-2.6.33.noarch/Documentation/filesystems/spnfs.txt.orig linux-2.6.33.noarch/Documentation/filesystems/spnfs.txt
--- linux-2.6.33.noarch/Documentation/filesystems/spnfs.txt.orig 2010-06-01 08:05:25.559793574 -0400
+++ linux-2.6.33.noarch/Documentation/filesystems/spnfs.txt 2010-06-01 08:05:25.559793574 -0400
@@ -0,0 +1,211 @@
+(c) 2007 Network Appliance Inc.
+
+spNFS
+-----
+
+An spNFS system consists of a Meta Data Server (MDS), a number of Client machines (C) and a number of Data Servers (DS).
+
+A file system is mounted by the clients from the MDS, and all file data
+is striped across the DSs.
+
+Identify the machines that will be filling each of these roles.
+
+The spnfs kernel will be installed on all machines: clients, the MDS and DSs.
+
+
+Building and installing the spNFS kernel
+----------------------------------------
+
+Get the spNFS kernel from:
+
+ git://linux-nfs.org/~bhalevy/linux-pnfs.git
+
+Use the pnfs-all-latest branch and add these options to your .config file
+
+ CONFIG_NETWORK_FILESYSTEMS=y
+ CONFIG_NFS_FS=m
+ CONFIG_NFS_V4=y
+ CONFIG_NFS_V4_1=y
+ CONFIG_PNFS=y
+ CONFIG_NFSD=m
+ CONFIG_PNFSD=y
+ # CONFIG_PNFSD_LOCAL_EXPORT is not set
+ CONFIG_SPNFS=y
+
+By default, spNFS uses whole-file layouts. Layout segments can be enabled
+by adding:
+
+ CONFIG_SPNFS_LAYOUTSEGMENTS=y
+
+to your .config file.
+
+Building and installation of kernel+modules is as usual.
+This kernel should be installed and booted on the client, MDS and DSs.
+
+Note that CONFIG_PNFSD_LOCAL_EXPORT must be disabled for spnfs as it
+takes over the pnfs export interface.
+
+Building nfs-utils
+------------------
+
+Get the nfs-utils package containing spnfsd from:
+
+ git://linux-nfs.org/~bhalevy/pnfs-nfs-utils.git
+
+Follow the standard instructions for building nfs-utils.
+
+After building, the spnfsd daemon will be located in utils/spnfsd. The spnfsd
+daemon will only be needed on the MDS.
+
+
+Installation
+------------
+
+The nfs-utils package contains a default spnfsd.conf file in
+utils/spnfsd/spnfsd.conf. Copy this file to /etc/spnfsd.conf.
+
+By default, the DS-Mount-Directory is set to /spnfs (see spnfsd.conf). Under
+this directory, mount points must be created for each DS to
+be used for pNFS data stripes. These mount points are named by the ip address
+of the corresponding DS. In the sample spnfsd.conf, there are two
+DSs defined (172.16.28.134 and 172.16.28.141).
+
+Following the sample spnfsd.conf,
+
+ mkdir /spnfs
+
+on the MDS (corresponding to DS-Mount-Directory). Then
+
+ mkdir /spnfs/172.16.28.134
+ mkdir /spnfs/172.16.28.141
+
+to create the mount points for the DSs.
+
+On the DSs, chose a directory where data stripes will be created by the MDS.
+For the sample file, this directory is /pnfs, so on each DS execute:
+
+ mkdir /pnfs
+
+This directory is specified in the spnfsd.conf file by the DS*_ROOT option
+(where * is replaced by the DS number). DS_ROOT is specified relative to
+the directory being exported by the DSs. In our example, our DSs are exporting
+the root directory (/) and therefore our DS_ROOT is /pnfs. On the DSs, we have
+the following entry in /etc/exports:
+
+ / *(rw,fsid=0,insecure,no_root_squash,sync,no_subtree_check)
+
+N.B. If we had created a /exports directory and a /pnfs directory under
+/exports, and if we were exporting /exports, then DS_ROOT would still be /pnfs
+(not /exports/pnfs).
+
+It may be useful to add entries to /etc/fstab on the MDS to automatically
+mount the DS_ROOT file systems. For this example, our MDS fstab would
+contain:
+
+ 172.17.84.128:/pnfs /spnfs/172.17.84.128 nfs defaults 1 2
+ 172.17.84.122:/pnfs /spnfs/172.17.84.122 nfs defaults 1 2
+
+The DS mounts must be performed manually or via fstab at this time (automatic
+mounting, directory creation, etc. are on the todo list). To perform I/O
+through the MDS, the DS mounts MUST use NFSv3 at this time (this restriction
+will eventually be removed).
+
+
+On the MDS, choose a file system to use with spNFS and export it, e.g.:
+
+ / *(rw,fsid=0,insecure,no_root_squash,sync,no_subtree_check,pnfs)
+
+Make sure nfsd and all supporting processes are running on the MDS and DSs.
+
+
+Running
+-------
+
+If rpc_pipefs is not already mounted (if you're running idmapd it probably is),
+you may want to add the following line to /etc/fstab:
+
+ rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs defaults 0 0
+
+to automatically mount rpc_pipefs.
+
+With spnfsd.conf configured for your environment and the mounts mounted as
+described above, spnfsd can now be started.
+
+On the MDS, execute spnfsd:
+
+ spnfsd
+
+The executable is located in the directory where it was built, and
+may also have been installed elsewhere depending on how you built nfs-utils.
+It will run in the foreground by default, and in fact will do so despite
+any options suggesting the contrary (it's still a debugging build).
+
+On the client, make sure the nfslayoutdriver module is loaded:
+
+ modprobe nfslayoutdriver
+
+Then mount the file system from the MDS:
+
+ mount -t nfs4 -o minorversion=1 mds:/ /mnt
+
+I/O through the MDS is now supported. To use it, do not load the
+nfslayoutdriver on the client, and mount the MDS using NFSv4 or 4.1
+(NFSv2 and v3 are not yet supported).
+
+You may now use spNFS by performing file system activities in /mnt.
+If you create files in /mnt, you should see stripe files corresponding to
+new files being created on the DSs. The current implementation names the
+stripe files based on the inode number of the file on the MDS. For example,
+if you create a file foo in /mnt and do an 'ls -li /mnt/foo':
+
+ # ls -li foo
+ 1233 -rw-r--r-- 1 root root 0 Nov 29 15:54 foo
+
+You should see stripe files on each under /pnfs (per the sample) named
+1233. The file /pnfs/1233 on DS1 will contain the first <stripe size> bytes
+of data written to foo, DS2 will contain the next <stripe size> bytes, etc.
+Removing /mnt/foo will remove the corresponding stripe files on the DSs.
+Other file system operations should behave (mostly :-) as expected.
+
+
+Layout Segments
+---------------
+
+If the kernel is compiled to support layout segments, there will
+be two files created under /proc/fs/spnfs for controlling layout
+segment functionality.
+
+To enable layout segments, write a '1' to /proc/fs/spnfs/layoutseg, e.g.:
+
+ echo 1 > /proc/fs/spnfs/layoutseg
+
+Layout segments can be disabled (returning to whole-file layouts) by
+writing a '0' to /proc/fs/spnfs/layoutseg:
+
+ echo 0 > /proc/fs/spnfs/layoutseg
+
+When layout segments are enabled, the size of the layouts returned can
+be specified by writing a decimal number (ascii representation) to
+/proc/fs/spnfs/layoutsegsize:
+
+ echo 1024 > /proc/fs/spnfs/layoutsegsize
+
+The value'0' has a special meaning--it causes the server to return a
+layout that is exactly the size requested by the client:
+
[...31450 lines suppressed...]
+ struct pnfs_layout_type *lo;
+ struct nfs4_pnfs_layoutreturn_arg args;
+ struct nfs4_pnfs_layoutreturn_res res;
+ struct rpc_cred *cred;
+ int rpc_status;
+};
+
+struct nfs4_pnfs_getdevicelist_arg {
+ const struct nfs_fh *fh;
+ u32 layoutclass;
+ struct nfs4_sequence_args seq_args;
+};
+
+struct nfs4_pnfs_getdevicelist_res {
+ struct pnfs_devicelist *devlist;
+ struct nfs4_sequence_res seq_res;
+};
+
+struct nfs4_pnfs_getdeviceinfo_arg {
+ struct pnfs_device *pdev;
+ struct nfs4_sequence_args seq_args;
+};
+
+struct nfs4_pnfs_getdeviceinfo_res {
+ struct pnfs_device *pdev;
+ struct nfs4_sequence_res seq_res;
+};
+
+#endif /* LINUX_PNFS_XDR_H */
diff -up linux-2.6.33.noarch/include/linux/posix_acl.h.orig linux-2.6.33.noarch/include/linux/posix_acl.h
--- linux-2.6.33.noarch/include/linux/posix_acl.h.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/include/linux/posix_acl.h 2010-06-01 08:05:25.678855988 -0400
@@ -8,6 +8,7 @@
#ifndef __LINUX_POSIX_ACL_H
#define __LINUX_POSIX_ACL_H
+#include <linux/fs.h>
#include <linux/slab.h>
#define ACL_UNDEFINED_ID (-1)
diff -up linux-2.6.33.noarch/include/linux/sunrpc/msg_prot.h.orig linux-2.6.33.noarch/include/linux/sunrpc/msg_prot.h
--- linux-2.6.33.noarch/include/linux/sunrpc/msg_prot.h.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/include/linux/sunrpc/msg_prot.h 2010-06-01 08:05:25.679846082 -0400
@@ -14,6 +14,8 @@
/* size of an XDR encoding unit in bytes, i.e. 32bit */
#define XDR_UNIT (4)
+#include <linux/types.h>
+
/* spec defines authentication flavor as an unsigned 32 bit integer */
typedef u32 rpc_authflavor_t;
diff -up linux-2.6.33.noarch/include/linux/sunrpc/rpc_pipe_fs.h.orig linux-2.6.33.noarch/include/linux/sunrpc/rpc_pipe_fs.h
--- linux-2.6.33.noarch/include/linux/sunrpc/rpc_pipe_fs.h.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/include/linux/sunrpc/rpc_pipe_fs.h 2010-06-01 08:05:25.679846082 -0400
@@ -3,6 +3,7 @@
#ifdef __KERNEL__
+#include <linux/fs.h>
#include <linux/workqueue.h>
struct rpc_pipe_msg {
diff -up linux-2.6.33.noarch/include/linux/sunrpc/svc_xprt.h.orig linux-2.6.33.noarch/include/linux/sunrpc/svc_xprt.h
--- linux-2.6.33.noarch/include/linux/sunrpc/svc_xprt.h.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/include/linux/sunrpc/svc_xprt.h 2010-06-01 08:05:25.680876263 -0400
@@ -166,4 +166,41 @@ static inline char *__svc_print_addr(con
return buf;
}
+
+/*
+ * Print a network address in a universal format (see rfc1833 and nfsv4.1)
+ */
+static inline int __svc_print_netaddr(struct sockaddr *addr,
+ struct xdr_netobj *na)
+{
+ u16 port;
+ ssize_t len;
+
+ switch (addr->sa_family) {
+ case AF_INET: {
+ struct sockaddr_in *sin = (struct sockaddr_in *)addr;
+ port = ntohs(sin->sin_port);
+
+ len = snprintf(na->data, na->len, "%pI4.%u.%u",
+ &sin->sin_addr,
+ port >> 8, port & 0xff);
+ break;
+ }
+ case AF_INET6: {
+ struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)addr;
+ port = ntohs(sin6->sin6_port);
+
+ len = snprintf(na->data, na->len, "%pI6.%u.%u",
+ &sin6->sin6_addr,
+ port >> 8, port & 0xff);
+ break;
+ }
+ default:
+ snprintf(na->data, na->len, "unknown address type: %d",
+ addr->sa_family);
+ len = -EINVAL;
+ break;
+ }
+ return len;
+}
#endif /* SUNRPC_SVC_XPRT_H */
diff -up linux-2.6.33.noarch/include/linux/sunrpc/xdr.h.orig linux-2.6.33.noarch/include/linux/sunrpc/xdr.h
--- linux-2.6.33.noarch/include/linux/sunrpc/xdr.h.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/include/linux/sunrpc/xdr.h 2010-06-01 08:05:25.680876263 -0400
@@ -129,6 +129,13 @@ xdr_decode_hyper(__be32 *p, __u64 *valp)
return p + 2;
}
+static inline __be32 *
+xdr_decode_opaque_fixed(__be32 *p, void *ptr, unsigned int len)
+{
+ memcpy(ptr, p, len);
+ return p + XDR_QUADLEN(len);
+}
+
/*
* Adjust kvec to reflect end of xdr'ed data (RPC client XDR)
*/
@@ -195,6 +202,7 @@ struct xdr_stream {
extern void xdr_init_encode(struct xdr_stream *xdr, struct xdr_buf *buf, __be32 *p);
extern __be32 *xdr_reserve_space(struct xdr_stream *xdr, size_t nbytes);
+extern __be32 *xdr_rewind_stream(struct xdr_stream *xdr, __be32 *q);
extern void xdr_write_pages(struct xdr_stream *xdr, struct page **pages,
unsigned int base, unsigned int len);
extern void xdr_init_decode(struct xdr_stream *xdr, struct xdr_buf *buf, __be32 *p);
diff -up linux-2.6.33.noarch/Makefile.orig linux-2.6.33.noarch/Makefile
diff -up linux-2.6.33.noarch/net/sunrpc/backchannel_rqst.c.orig linux-2.6.33.noarch/net/sunrpc/backchannel_rqst.c
--- linux-2.6.33.noarch/net/sunrpc/backchannel_rqst.c.orig 2010-02-24 13:52:17.000000000 -0500
+++ linux-2.6.33.noarch/net/sunrpc/backchannel_rqst.c 2010-06-01 08:05:25.681861036 -0400
@@ -220,6 +220,8 @@ struct rpc_rqst *xprt_alloc_bc_request(s
{
struct rpc_rqst *req;
+ BUG_ON(!in_softirq());
+
dprintk("RPC: allocate a backchannel request\n");
spin_lock(&xprt->bc_pa_lock);
if (!list_empty(&xprt->bc_pa_list)) {
diff -up linux-2.6.33.noarch/net/sunrpc/xdr.c.orig linux-2.6.33.noarch/net/sunrpc/xdr.c
--- linux-2.6.33.noarch/net/sunrpc/xdr.c.orig 2010-06-01 07:46:12.147834054 -0400
+++ linux-2.6.33.noarch/net/sunrpc/xdr.c 2010-06-01 08:05:25.682856354 -0400
@@ -402,16 +402,14 @@ xdr_shrink_pagelen(struct xdr_buf *buf,
/* Shift the tail first */
if (tail->iov_len != 0) {
- p = (char *)tail->iov_base + len;
- if (tail->iov_len > len) {
- copy = tail->iov_len - len;
- memmove(p, tail->iov_base, copy);
- } else
- buf->buflen -= len;
- /* Copy from the inlined pages into the tail */
copy = len;
- if (copy > tail->iov_len)
+ if (tail->iov_len > len) {
+ p = (char *)tail->iov_base + len;
+ memmove(p, tail->iov_base, tail->iov_len - len);
+ } else {
copy = tail->iov_len;
+ }
+ /* Copy from the inlined pages into the tail */
_copy_from_pages((char *)tail->iov_base,
buf->pages, buf->page_base + pglen - len,
copy);
@@ -495,6 +493,27 @@ __be32 * xdr_reserve_space(struct xdr_st
EXPORT_SYMBOL_GPL(xdr_reserve_space);
/**
+ * xdr_rewind_stream - rewind a stream back to some checkpoint
+ * @xdr: pointer to xdr_stream
+ * @q: some checkpoint at historical place of @xdr
+ *
+ * Restors an xdr stream to some historical point. @q must be
+ * a logical xdr point in the past that was sampled by @q = @xdr->p.
+ */
+__be32 *xdr_rewind_stream(struct xdr_stream *xdr, __be32 *q)
+{
+ size_t nbytes = (xdr->p - q) << 2;
+
+ BUG_ON(xdr->p < q);
+ BUG_ON(nbytes > xdr->iov->iov_len || nbytes > xdr->buf->len);
+ xdr->p = q;
+ xdr->iov->iov_len -= nbytes;
+ xdr->buf->len -= nbytes;
+ return q;
+}
+EXPORT_SYMBOL_GPL(xdr_rewind_stream);
+
+/**
* xdr_write_pages - Insert a list of pages into an XDR buffer for sending
* @xdr: pointer to xdr_stream
* @pages: list of pages
Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-13/config-generic,v
retrieving revision 1.365
retrieving revision 1.365.2.1
diff -u -p -r1.365 -r1.365.2.1
--- config-generic 26 May 2010 20:36:49 -0000 1.365
+++ config-generic 1 Jun 2010 12:19:28 -0000 1.365.2.1
@@ -3402,6 +3402,18 @@ CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
CONFIG_NFS_FSCACHE=y
+# Enable pNFS
+CONFIG_PNFS=y
+CONFIG_PNFSD=y
+CONFIG_PNFSD_LOCAL_EXPORT=y
+CONFIG_SPNFS=y
+CONFIG_SPNFS_LAYOUTSEGMENTS=y
+CONFIG_SPNFS_BLOCK=y
+CONFIG_PNFS_OBJLAYOUT=m
+CONFIG_PNFS_BLOCK=m
+CONFIG_PNFS_PANLAYOUT=m
+CONFIG_PNFS_FILE_LAYOUT=y
+#
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-13/kernel.spec,v
retrieving revision 1.2049
retrieving revision 1.2049.2.1
diff -u -p -r1.2049 -r1.2049.2.1
--- kernel.spec 27 May 2010 01:51:57 -0000 1.2049
+++ kernel.spec 1 Jun 2010 12:19:28 -0000 1.2049.2.1
@@ -23,7 +23,7 @@ Summary: The Linux kernel
#
# (Uncomment the '#' and both spaces below to set the buildid.)
#
-# % define buildid .local
+%define buildid .pnfs
###################################################################
# buildid can also be specified on the rpmbuild command line
@@ -850,6 +850,8 @@ Patch12912: iwlwifi-recover_from_tx_stal
# CVE-2010-1437
Patch13000: keys-find-keyring-by-name-can-gain-access-to-the-freed-keyring.patch
+Patch30000: linux-2.6.33-inline.patch
+Patch30001: pnfs-all-2.6.33-2010-06-01.patch
%endif
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
@@ -1544,6 +1546,8 @@ ApplyPatch keys-find-keyring-by-name-can
# END OF PATCH APPLICATIONS
+ApplyPatch linux-2.6.33-inline.patch
+ApplyPatch pnfs-all-2.6.33-2010-06-01.patch
%endif
# Any further pre-build tree manipulations happen here.
@@ -2191,6 +2195,9 @@ fi
# and build.
%changelog
+* Tue Jun 1 2010 Steve Dickson <steved at redhat.com>
+- Update pNFS code to latest release: pnfs-all-2.6.33-2010-06-01
+
* Wed May 27 2010 Chuck Ebbert <cebbert at redhat.com> 2.6.33.5-112
- CVE-2010-1437: keyrings: find_keyring_by_name() can gain the freed keyring
- Previous message: rpms/bugzilla/devel bugzilla-graphs-dir.patch, NONE, 1.1 .cvsignore, 1.18, 1.19 bugzilla.spec, 1.34, 1.35 sources, 1.18, 1.19
- Next message: rpms/tar/devel tar-1.23-oldarchive.patch, NONE, 1.1 tar.spec, 1.101, 1.102
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list