Re: [pnfs] [PATCH] SQUASHME: pnfsd-exofs: Change layoutget return codes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 10, 2010 at 12:45:12PM +0200, Boaz Harrosh wrote:
> On 02/10/2010 10:24 AM, Boaz Harrosh wrote:
> > 
> > Dependent on patch from Andy:
> > 	[PATCH 1/6] pnfsd: fix file system API layout_get error codes
> > 
> > Change codes to nfs4.1 codes
> > 
> > Signed-off-by: Boaz Harrosh <bharrosh@xxxxxxxxxxx>
> 
> Rrrr I spoke to soon.
> 
> Andy, Benny
> This will not work, currently. All the nfserr_xxx constants are defined
> if fs/nfsd/nfsd.h. 
> (Why do they exist at all, why can't we use the client's definitions for these?)
> 
> At the minimum they need to move to include/linux/nfsd/export.h. But I say kill them
> and use these from include/linux/nfs4.h. Added bonus these are enums, so prototype
> of .layout_get() can change to return enum nfsstat4 and the compiler fixes all our
> bugs.
> 
> I'm posting a second patch that uses "enum nfsstat4" constants in exofs which will
> work just fine, but is really ugly on the documentation aspect of Andy's patch.
> 
> Bruce may I submit a patch that globally gets rid of all nfserr_* defines and uses
> NFS4ERR_* in their place?

And ditto for v2/v3 errors?

Note you'll also need to track down all the function return types and
the variables that hold errors, and change them from __be32 to something
else.  (Hopefully not int, as the distinction between nfs errors and
-ERRNO errors is useful.)

I agree that it would be better not to have two entirely separate sets
of errors defines.

It's a large change that will conflict with everything, but as it's
currently Benny that will probably have the most fixing-up to do I guess
I'd defer to him to weigh the pain caused by that.

--b.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux