From b0d75d0687a3436201411384c570448a49a9db15 Mon Sep 17 00:00:00 2001 From: Christof Hanke Date: Tue, 8 Oct 2013 11:53:17 +0200 Subject: [PATCH 1/1] linux-kernel-module: move keyring-specific function afs_set_session_keyring into if defined(LINUX_KEYRING_SUPPORT) block. Otherwise compilation fails. Change-Id: I44bb015990782793eac9326b983b704b2248b230 Reviewed-on: http://gerrit.openafs.org/10324 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- src/afs/LINUX/osi_compat.h | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/afs/LINUX/osi_compat.h b/src/afs/LINUX/osi_compat.h index fdddf59..15ea8b4 100644 --- a/src/afs/LINUX/osi_compat.h +++ b/src/afs/LINUX/osi_compat.h @@ -220,6 +220,26 @@ afs_linux_search_keyring(afs_ucred_t *cred, struct key_type *type) return request_key(type, "_pag", NULL); } # endif /* STRUCT_TASK_STRUCT_HAS_CRED */ + +static_inline struct key * +afs_set_session_keyring(struct key *keyring) +{ + struct key *old; +#if defined(STRUCT_CRED_HAS_SESSION_KEYRING) + struct cred *new_creds; + old = current_session_keyring(); + new_creds = prepare_creds(); + rcu_assign_pointer(new_creds->session_keyring, keyring); + commit_creds(new_creds); +#else + spin_lock_irq(¤t->sighand->siglock); + old = task_session_keyring(current); + smp_wmb(); + task_session_keyring(current) = keyring; + spin_unlock_irq(¤t->sighand->siglock); +#endif + return old; +} #endif /* LINUX_KEYRING_SUPPORT */ #ifdef STRUCT_TASK_STRUCT_HAS_CRED @@ -561,26 +581,6 @@ afs_putname(afs_name_t name) { } #endif -static_inline struct key * -afs_set_session_keyring(struct key *keyring) -{ - struct key *old; -#if defined(STRUCT_CRED_HAS_SESSION_KEYRING) - struct cred *new_creds; - old = current_session_keyring(); - new_creds = prepare_creds(); - rcu_assign_pointer(new_creds->session_keyring, keyring); - commit_creds(new_creds); -#else - spin_lock_irq(¤t->sighand->siglock); - old = task_session_keyring(current); - smp_wmb(); - task_session_keyring(current) = keyring; - spin_unlock_irq(¤t->sighand->siglock); -#endif - return old; -} - static inline int afs_truncate(struct inode *inode, int len) { -- 1.9.4