Re: [GIT] Please pull the NFS client update for 2.6.19

2006-12-07 Thread Trond Myklebust
On Wed, 2006-12-06 at 20:34 -0500, Trond Myklebust wrote:
> On Wed, 2006-12-06 at 17:16 -0800, Linus Torvalds wrote:
> > 
> > On Wed, 6 Dec 2006, Trond Myklebust wrote:
> > > 
> > >git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git
> > > 
> > > This will update the following files through the appended changesets.
> > 
> > Well, right now it conflicts with the workqueue cleanups. Can you fix up 
> > the conflicts and push again? Quite frankly, I could try, but since I 
> > don't even run NFS, I _really_ don't think you want me to do so.
> 
> OK. I'll fix it up and resend.

I've fixed up the conflicts with the workqueue stuff. It both compiles
and works for me. Please could you try pulling again.

Cheers,
  Trond

--
Hi Linus,

Please pull from the repository at

   git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git

This will update the following files through the appended changesets.

  Cheers,
Trond


 fs/lockd/clntproc.c|2 
 fs/lockd/svc4proc.c|2 
 fs/lockd/svcproc.c |2 
 fs/nfs/direct.c|6 
 fs/nfs/file.c  |   28 +
 fs/nfs/inode.c |2 
 fs/nfs/internal.h  |   18 +
 fs/nfs/nfs3proc.c  |   52 --
 fs/nfs/nfs4proc.c  |   99 
 fs/nfs/pagelist.c  |   67 ++-
 fs/nfs/proc.c  |   31 -
 fs/nfs/read.c  |  179 
 fs/nfs/symlink.c   |2 
 fs/nfs/write.c |  598 +--
 include/linux/nfs_fs.h |   37 --
 include/linux/nfs_page.h   |7 
 include/linux/nfs_xdr.h|2 
 include/linux/sunrpc/auth_gss.h|2 
 include/linux/sunrpc/clnt.h|1 
 include/linux/sunrpc/debug.h   |6 
 include/linux/sunrpc/gss_krb5.h|6 
 include/linux/sunrpc/gss_spkm3.h   |   34 +-
 include/linux/sunrpc/sched.h   |   11 
 include/linux/sunrpc/xdr.h |   23 +
 include/linux/sunrpc/xprt.h|   37 --
 net/sunrpc/auth_gss/auth_gss.c |   42 --
 net/sunrpc/auth_gss/gss_krb5_crypto.c  |  101 -
 net/sunrpc/auth_gss/gss_krb5_mech.c|   18 +
 net/sunrpc/auth_gss/gss_krb5_seal.c|   55 +-
 net/sunrpc/auth_gss/gss_krb5_unseal.c  |   87 +---
 net/sunrpc/auth_gss/gss_krb5_wrap.c|  153 ++-
 net/sunrpc/auth_gss/gss_spkm3_mech.c   |  131 ++
 net/sunrpc/auth_gss/gss_spkm3_seal.c   |  101 -
 net/sunrpc/auth_gss/gss_spkm3_token.c  |6 
 net/sunrpc/auth_gss/gss_spkm3_unseal.c |   92 ++--
 net/sunrpc/clnt.c  |   70 ++-
 net/sunrpc/pmap_clnt.c |   13 -
 net/sunrpc/sched.c |  137 --
 net/sunrpc/socklib.c   |   18 -
 net/sunrpc/sunrpc_syms.c   |5 
 net/sunrpc/sysctl.c|   50 --
 net/sunrpc/xdr.c   |  255 +++
 net/sunrpc/xprt.c  |   33 -
 net/sunrpc/xprtsock.c  |  716 
 44 files changed, 1557 insertions(+), 1780 deletions(-)

commit 5847e1f4d058677c5e46dc6c3e3c70e8855ea3ba
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:36:14 2006 -0500

SUNRPC: Remove pprintk() from net/sunrpc/xprt.c

These appear to be deprecated.  Removing them also gets rid of some sparse
noise.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit c041b5ff8d50c432698d9bfbd68cc4b76c2ea5bc
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:36:03 2006 -0500

NLM: fix print format for tk_pid

The tk_pid field is an unsigned short.  The proper print format specifier 
for
that type is %5u, not %4d.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit fbf76683ff9d1462ec0b2f90ec6ea4793652318c
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:54 2006 -0500

SUNRPC: relocate the creation of socket-specific tunables

Clean-up:

The RPC client currently creates some sysctls that are specific to the
socket transport.  Move those entirely into xprtsock.c.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit 282b32e17f64be2204f1ac96d7f40f92cb768cd7
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:51 2006 -0500

SUNRPC: create stubs for xprtsock init and cleanup

Over time we will want to add some specific init and cleanup logic for the
xprtsock implementation.  Add stub routines for initialization and exit
processing.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: 

Re: [GIT] Please pull the NFS client update for 2.6.19

2006-12-06 Thread Linus Torvalds


On Wed, 6 Dec 2006, Trond Myklebust wrote:
> 
> Hmm... Have the workqueue updates been pushed out yet? I can't seem to
> pull them from git.kernel.org.

The kernel.org mirroring has been really flaky lately.

If you have an account, you can use master.kernel.org to get things 
without mirroring delays.

And if not, I'd be happy to push to other places too, but the reason 
kernel.org tends to occasionally get slow at mirroring is probably because 
it does get a lot of traffic. So..

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT] Please pull the NFS client update for 2.6.19

2006-12-06 Thread Trond Myklebust
On Wed, 2006-12-06 at 20:34 -0500, Trond Myklebust wrote:
> On Wed, 2006-12-06 at 17:16 -0800, Linus Torvalds wrote:
> > 
> > On Wed, 6 Dec 2006, Trond Myklebust wrote:
> > > 
> > >git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git
> > > 
> > > This will update the following files through the appended changesets.
> > 
> > Well, right now it conflicts with the workqueue cleanups. Can you fix up 
> > the conflicts and push again? Quite frankly, I could try, but since I 
> > don't even run NFS, I _really_ don't think you want me to do so.
> 
> OK. I'll fix it up and resend.

Hmm... Have the workqueue updates been pushed out yet? I can't seem to
pull them from git.kernel.org.

Trond

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT] Please pull the NFS client update for 2.6.19

2006-12-06 Thread Trond Myklebust
On Wed, 2006-12-06 at 17:16 -0800, Linus Torvalds wrote:
> 
> On Wed, 6 Dec 2006, Trond Myklebust wrote:
> > 
> >git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git
> > 
> > This will update the following files through the appended changesets.
> 
> Well, right now it conflicts with the workqueue cleanups. Can you fix up 
> the conflicts and push again? Quite frankly, I could try, but since I 
> don't even run NFS, I _really_ don't think you want me to do so.

OK. I'll fix it up and resend.

Trond

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT] Please pull the NFS client update for 2.6.19

2006-12-06 Thread Linus Torvalds


On Wed, 6 Dec 2006, Trond Myklebust wrote:
> 
>git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git
> 
> This will update the following files through the appended changesets.

Well, right now it conflicts with the workqueue cleanups. Can you fix up 
the conflicts and push again? Quite frankly, I could try, but since I 
don't even run NFS, I _really_ don't think you want me to do so.

Did you see the explanation of the split? Appended here just in case.

Linus
---
From: David Howells <[EMAIL PROTECTED]>

 (1) Any work_struct struct that has one of the following called upon it:

queue_delayed_work()
queue_delayed_work_on()
schedule_delayed_work()
schedule_delayed_work_on()
cancel_rearming_delayed_work()
cancel_rearming_delayed_workqueue()
cancel_delayed_work()

 needs changing into a delayed_work struct.

 Note that cancel_delayed_work() is often called where it'll be ineffective
 - I think people misunderstand what it does.

 (2) A delayed_work struct must be initialised with:

__DELAYED_WORK_INITIALIZER
DECLARE_DELAYED_WORK
INIT_DELAYED_WORK

 Rather than:

__WORK_INITIALIZER
DECLARE_WORK
INIT_WORK

 Those only apply to work_struct (non-delayable work).

 (3) The initialisation functions no longer take a data argument, and this
 should be deleted.

 (4) Anywhere one of the following is called on a delayed_work struct:

queue_work()
queue_work_on()
schedule_work()
schedule_work_on()

 it must be converted to the equivalent one of:

queue_delayed_work()
queue_delayed_work_on()
schedule_delayed_work()
schedule_delayed_work_on()

 and given a 0 timeout argument as an additional argument.  This just
 queues the work item and doesn't set the timer.

 (5) Anywhere the work item's pending flag is examined directly with:

test_bit(0, &work->pending)

 This should be replaced with the appropriate one of:

work_pending(work)
delayed_work_pending(work)

 (6) The work function _must_ be changed to conform to the following prototype:

void foo_work_func(struct work_struct *work)
{
...
}

 This applies to both work_struct and delayed_work handlers.

 (a) If the arbitary datum previously passed to the initialiser was NULL,
 then the work argument should just be ignored.

 (b) If the datum was the address of the structure containing the
 work_struct, then something like the following should be used:

struct foo {
struct work_struct worker;
...
};

void foo_work_func(struct work_struct *work)
{
struct foo *foo = container_of(work, struct foo, worker);
...
}

 If the work_struct can be placed at the beginning of the containing
 structure this will eliminate the subtraction instruction
 container_of() might otherwise require.

 (c) If the datum was the address of the structure containing the
 delayed_work, then something like the following should be used:

struct foo {
struct delayed_work worker;
...
};

void foo_work_func(struct work_struct *work)
{
struct foo *foo = container_of(work, struct foo, worker.work);
...
}

 NOTE!  There's an extra ".work" in the container_of() because the
 work_struct pointed to is embedded within the delayed_work.

 (d) If the datum is not a pointer to the container, but the container is
 guaranteed to exist whilst the work handler runs, then the datum can
 be stored in an extra variable in the container.

 The handler would then be formed as for (b) or (c), and the extra
 variable accessed after the container_of() line.

 Quite often there's a linked pair of structures, with a work_struct in
 one being initialised with the address of the other as its datum.  The
 typical case is struct net_device and the private data.  In this case
 just adding a back pointer from the private data to the net_device
 struct seems to work.

 (e) If the auxiliary datum is totally unrelated and can't be stored in an
 extra variable because the container might go away, then the
 work_struct or delayed_work should be initialised with one of these
 instead:

DECLARE_WORK_NAR
DECLARE_DELAYED_WORK_NAR
INIT_WORK_NAR
INIT_DELAYED_WORK_NAR
__WORK_INITIALIZER_NAR
__DELAYED_WORK_INITIALIZER_NAR

 These take the same arguments as the normal initialisers, but set a
 flag in the work_struct to indicate that the pending flag is not to be
 cleared before the work function is called.


[GIT] Please pull the NFS client update for 2.6.19

2006-12-06 Thread Trond Myklebust
Hi Linus,

Please pull from the repository at

   git pull git://git.linux-nfs.org/pub/linux/nfs-2.6.git

This will update the following files through the appended changesets.

The individual patches can also be viewed on the web at
http://client.linux-nfs.org/Linux-2.6.x/2.6.19/

  Cheers,
Trond


 fs/lockd/clntproc.c|2 
 fs/lockd/svc4proc.c|2 
 fs/lockd/svcproc.c |2 
 fs/nfs/direct.c|6 
 fs/nfs/file.c  |   28 +
 fs/nfs/inode.c |2 
 fs/nfs/internal.h  |   18 +
 fs/nfs/nfs3proc.c  |   52 --
 fs/nfs/nfs4proc.c  |   99 
 fs/nfs/pagelist.c  |   67 ++-
 fs/nfs/proc.c  |   31 -
 fs/nfs/read.c  |  179 
 fs/nfs/symlink.c   |2 
 fs/nfs/write.c |  598 ++-
 include/linux/nfs_fs.h |   37 --
 include/linux/nfs_page.h   |7 
 include/linux/nfs_xdr.h|2 
 include/linux/sunrpc/auth_gss.h|2 
 include/linux/sunrpc/clnt.h|1 
 include/linux/sunrpc/debug.h   |6 
 include/linux/sunrpc/gss_krb5.h|6 
 include/linux/sunrpc/gss_spkm3.h   |   34 +-
 include/linux/sunrpc/sched.h   |   11 
 include/linux/sunrpc/xdr.h |   23 +
 include/linux/sunrpc/xprt.h|   37 --
 net/sunrpc/auth_gss/auth_gss.c |   42 --
 net/sunrpc/auth_gss/gss_krb5_crypto.c  |  101 -
 net/sunrpc/auth_gss/gss_krb5_mech.c|   18 +
 net/sunrpc/auth_gss/gss_krb5_seal.c|   55 +-
 net/sunrpc/auth_gss/gss_krb5_unseal.c  |   87 +---
 net/sunrpc/auth_gss/gss_krb5_wrap.c|  153 ++-
 net/sunrpc/auth_gss/gss_spkm3_mech.c   |  131 ++
 net/sunrpc/auth_gss/gss_spkm3_seal.c   |  101 -
 net/sunrpc/auth_gss/gss_spkm3_token.c  |6 
 net/sunrpc/auth_gss/gss_spkm3_unseal.c |   92 ++--
 net/sunrpc/clnt.c  |   70 ++-
 net/sunrpc/pmap_clnt.c |   13 -
 net/sunrpc/sched.c |  137 --
 net/sunrpc/socklib.c   |   18 -
 net/sunrpc/sunrpc_syms.c   |5 
 net/sunrpc/sysctl.c|   50 --
 net/sunrpc/xdr.c   |  255 +++
 net/sunrpc/xprt.c  |   33 -
 net/sunrpc/xprtsock.c  |  712 
 44 files changed, 1555 insertions(+), 1778 deletions(-)

commit 5847e1f4d058677c5e46dc6c3e3c70e8855ea3ba
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:36:14 2006 -0500

SUNRPC: Remove pprintk() from net/sunrpc/xprt.c

These appear to be deprecated.  Removing them also gets rid of some sparse
noise.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit c041b5ff8d50c432698d9bfbd68cc4b76c2ea5bc
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:36:03 2006 -0500

NLM: fix print format for tk_pid

The tk_pid field is an unsigned short.  The proper print format specifier 
for
that type is %5u, not %4d.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit fbf76683ff9d1462ec0b2f90ec6ea4793652318c
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:54 2006 -0500

SUNRPC: relocate the creation of socket-specific tunables

Clean-up:

The RPC client currently creates some sysctls that are specific to the
socket transport.  Move those entirely into xprtsock.c.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit 282b32e17f64be2204f1ac96d7f40f92cb768cd7
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:51 2006 -0500

SUNRPC: create stubs for xprtsock init and cleanup

Over time we will want to add some specific init and cleanup logic for the
xprtsock implementation.  Add stub routines for initialization and exit
processing.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit dd4564715eae2c4136f278da9ae1c3bb5af3e509
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:44 2006 -0500

SUNRPC: Rename skb_reader_t and friends

Clean-up:  hch suggested that the RPC client shouldn't pollute the name
space used by the generic skb manipulation routines in net/core/skbuff.c.

Rename a couple of types in xdr.h to adhere to this convention.

Signed-off-by: Chuck Lever <[EMAIL PROTECTED]>
Signed-off-by: Trond Myklebust <[EMAIL PROTECTED]>

commit 9d29231690925915015c21c1fff73c7118099843
Author: Chuck Lever <[EMAIL PROTECTED]>
Date:   Tue Dec 5 16:35:41 2006 -0500

SUNRPC: skb_r