mirror of
https://git.openafs.org/openafs.git
synced 2025-01-31 05:27:44 +00:00
Linux: d_delete now takes a const argument
The d_delete dentry operation now takes a const argument. Test for this and define our function accordingly to avoid warnings. Change-Id: I621f54d8e8182b29ccfdf82798773800f5870064 Reviewed-on: http://gerrit.openafs.org/5335 Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk> Reviewed-by: Derrick Brashear <shadow@dementix.org> Tested-by: BuildBot <buildbot@rampaginggeek.com>
This commit is contained in:
parent
3e3400e422
commit
def00ae8ba
@ -916,6 +916,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
|
||||
LINUX_IOP_I_PERMISSION_TAKES_FLAGS
|
||||
LINUX_IOP_I_PERMISSION_TAKES_NAMEIDATA
|
||||
LINUX_IOP_I_PUT_LINK_TAKES_COOKIE
|
||||
LINUX_DOP_D_DELETE_TAKES_CONST
|
||||
LINUX_DOP_D_REVALIDATE_TAKES_NAMEIDATA
|
||||
LINUX_FOP_F_FLUSH_TAKES_FL_OWNER_T
|
||||
LINUX_FOP_F_FSYNC_TAKES_DENTRY
|
||||
|
@ -1061,7 +1061,11 @@ afs_dentry_iput(struct dentry *dp, struct inode *ip)
|
||||
}
|
||||
|
||||
static int
|
||||
#if defined(DOP_D_DELETE_TAKES_CONST)
|
||||
afs_dentry_delete(const struct dentry *dp)
|
||||
#else
|
||||
afs_dentry_delete(struct dentry *dp)
|
||||
#endif
|
||||
{
|
||||
if (dp->d_inode && (VTOAFS(dp->d_inode)->f.states & CUnlinked))
|
||||
return 1; /* bad inode? */
|
||||
|
@ -610,3 +610,17 @@ AC_DEFUN([LINUX_D_COUNT_IS_INT], [
|
||||
[define if dentry->d_count is an int],
|
||||
[-Werror])
|
||||
])
|
||||
|
||||
|
||||
AC_DEFUN([LINUX_DOP_D_DELETE_TAKES_CONST], [
|
||||
AC_CHECK_LINUX_BUILD([whether dentry.d_op->d_delete takes a const argument],
|
||||
[ac_cv_linux_dop_d_delete_takes_const],
|
||||
[#include <linux/fs.h>
|
||||
#include <linux/dcache.h>],
|
||||
[struct dentry_operations _d_ops;
|
||||
int _d_del(const struct dentry *de) {return 0;};
|
||||
_d_ops.d_delete = _d_del;],
|
||||
[DOP_D_DELETE_TAKES_CONST],
|
||||
[define if dentry.d_op->d_delete takes a const argument],
|
||||
[-Werror])
|
||||
])
|
||||
|
Loading…
x
Reference in New Issue
Block a user