RPC: rpciod waiting on sync task!

From: Dima Brodsky (dima@cs.ubc.ca)
Date: Tue Jul 03 2001 - 18:44:36 EST


I modified the linux NFS client, kernel 2.4.5 and 2.4.6-pre7, to send
an extra SETATTR, with special values, within nfs_open and nfs_release
so that I would be able to track file open and close. For the server I
am using a slightly modified linux user level nfs server.

What I noticed is that after this change I get:

RPC: rpciod waiting on sync task!

coming from the kernel under heavy read load, especially with
larger chunks of data 8k, 16, and 64k.

The code introduced into nfs_open and nfs_release is:

        memset( &fattr, 0, sizeof(struct nfs_fattr) );
        memset( &attr, 0, sizeof(struct iattr) );

        attr.ia_valid = ATTR_MODE | ATTR_UID | ATTR_GID | ATTR_SIZE;
        attr.ia_mode = inode->i_mode;
        attr.ia_uid = -10;
        attr.ia_gid = -10;
        attr.ia_size = -10;
        attr.ia_atime = -1;
        attr.ia_mtime = -1;
        attr.ia_ctime = -1;
        attr.ia_attr_flags = -1;

        error = NFS_PROTO(inode)->setattr(inode, &fattr, &attr);
        if ( error ) {
                printk( "nfs_network_openclose: error=%d\n", error );

Does anybody see any problems with this code? The unmodified nfs client
works fine with the unmodified nfs server.


Dima Brodsky                                   dima@cs.ubc.ca
201-2366 Main Mall                             (604) 822-6179 (Office)
Department of Computer Science                 (604) 822-2895 (DSG Lab)
University of British Columbia, Canada         (604) 822-5485 (FAX)

Computers are like Old Testament gods; lots of rules and no mercy. (Joseph Campbell)

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

This archive was generated by hypermail 2b29 : Sat Jul 07 2001 - 21:00:13 EST