| [2401] | 1 | From 5a21be491adc6acd3cc01990910c5675393be953 Mon Sep 17 00:00:00 2001 | 
|---|
 | 2 | From: Andrew Deason <adeason@sinenomine.net> | 
|---|
 | 3 | Date: Wed, 29 Aug 2012 11:34:06 -0500 | 
|---|
 | 4 | Subject: [PATCH] LINUX: Indent osi_machdep.h maze | 
|---|
 | 5 |  | 
|---|
 | 6 | This one isn't so bad, actually, but it still benefits from some | 
|---|
 | 7 | indentation. | 
|---|
 | 8 |  | 
|---|
 | 9 | Reviewed-on: http://gerrit.openafs.org/8018 | 
|---|
 | 10 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 11 | Reviewed-by: Derrick Brashear <shadow@dementix.org> | 
|---|
 | 12 | (cherry picked from commit 579048cb1ec24b09a869928ceb521c8db4201a43) | 
|---|
 | 13 |  | 
|---|
 | 14 | Change-Id: I91bddcafe4141c5e6789b01cc4be1a879b6464d1 | 
|---|
 | 15 | Reviewed-on: http://gerrit.openafs.org/9330 | 
|---|
 | 16 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 17 | Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com> | 
|---|
 | 18 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 19 | --- | 
|---|
 | 20 |  src/afs/LINUX/osi_machdep.h |  240 +++++++++++++++++++++---------------------- | 
|---|
 | 21 |  1 file changed, 120 insertions(+), 120 deletions(-) | 
|---|
 | 22 |  | 
|---|
 | 23 | diff --git a/src/afs/LINUX/osi_machdep.h b/src/afs/LINUX/osi_machdep.h | 
|---|
 | 24 | index a2c16f5..9260733 100644 | 
|---|
 | 25 | --- a/src/afs/LINUX/osi_machdep.h | 
|---|
 | 26 | +++ b/src/afs/LINUX/osi_machdep.h | 
|---|
 | 27 | @@ -17,60 +17,60 @@ | 
|---|
 | 28 |   | 
|---|
 | 29 |  #include <linux/version.h> | 
|---|
 | 30 |  #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,4) | 
|---|
 | 31 | -#define AFS_LINUX26_ONEGROUP_ENV 1 | 
|---|
 | 32 | +# define AFS_LINUX26_ONEGROUP_ENV 1 | 
|---|
 | 33 |  #endif | 
|---|
 | 34 |   | 
|---|
 | 35 |  /* Only needed for xdr.h in glibc 2.1.x */ | 
|---|
 | 36 |  #ifndef quad_t | 
|---|
 | 37 | -#define quad_t __quad_t | 
|---|
 | 38 | -#define u_quad_t __u_quad_t | 
|---|
 | 39 | +# define quad_t __quad_t | 
|---|
 | 40 | +# define u_quad_t __u_quad_t | 
|---|
 | 41 |  #endif | 
|---|
 | 42 |   | 
|---|
 | 43 |  #undef getuerror | 
|---|
 | 44 |   | 
|---|
 | 45 |  #ifdef STRUCT_TASK_STRUCT_HAS_TGID | 
|---|
 | 46 | -#define getpid() current->tgid | 
|---|
 | 47 | -#ifdef STRUCT_TASK_STRUCT_HAS_REAL_PARENT | 
|---|
 | 48 | -#define getppid() current->real_parent->tgid | 
|---|
 | 49 | -#elif defined(STRUCT_TASK_STRUCT_HAS_PARENT) | 
|---|
 | 50 | -#define getppid() current->parent->tgid | 
|---|
 | 51 | -#else | 
|---|
 | 52 | -#define getppid() current->p_opptr->tgid | 
|---|
 | 53 | -#endif | 
|---|
 | 54 | +# define getpid() current->tgid | 
|---|
 | 55 | +# ifdef STRUCT_TASK_STRUCT_HAS_REAL_PARENT | 
|---|
 | 56 | +#  define getppid() current->real_parent->tgid | 
|---|
 | 57 | +# elif defined(STRUCT_TASK_STRUCT_HAS_PARENT) | 
|---|
 | 58 | +#  define getppid() current->parent->tgid | 
|---|
 | 59 | +# else | 
|---|
 | 60 | +#  define getppid() current->p_opptr->tgid | 
|---|
 | 61 | +# endif | 
|---|
 | 62 |  #else /* !STRUCT_TASK_STRUCT_HAS_TGID */ | 
|---|
 | 63 | -#define getpid() current->pid | 
|---|
 | 64 | -#ifdef STRUCT_TASK_STRUCT_HAS_REAL_PARENT | 
|---|
 | 65 | -#define getppid() current->real_parent->pid | 
|---|
 | 66 | -#elif defined(STRUCT_TASK_STRUCT_HAS_PARENT) | 
|---|
 | 67 | -#define getppid() current->parent->pid | 
|---|
 | 68 | -#else | 
|---|
 | 69 | -#define getppid() current->p_opptr->pid | 
|---|
 | 70 | -#endif | 
|---|
 | 71 | +# define getpid() current->pid | 
|---|
 | 72 | +# ifdef STRUCT_TASK_STRUCT_HAS_REAL_PARENT | 
|---|
 | 73 | +#  define getppid() current->real_parent->pid | 
|---|
 | 74 | +# elif defined(STRUCT_TASK_STRUCT_HAS_PARENT) | 
|---|
 | 75 | +#  define getppid() current->parent->pid | 
|---|
 | 76 | +# else | 
|---|
 | 77 | +#  define getppid() current->p_opptr->pid | 
|---|
 | 78 | +# endif | 
|---|
 | 79 |  #endif /* STRUCT_TASK_STRUCT_HAS_TGID */ | 
|---|
 | 80 |   | 
|---|
 | 81 |  #ifdef RECALC_SIGPENDING_TAKES_VOID | 
|---|
 | 82 | -#define RECALC_SIGPENDING(X) recalc_sigpending() | 
|---|
 | 83 | +# define RECALC_SIGPENDING(X) recalc_sigpending() | 
|---|
 | 84 |  #else | 
|---|
 | 85 | -#define RECALC_SIGPENDING(X) recalc_sigpending(X) | 
|---|
 | 86 | +# define RECALC_SIGPENDING(X) recalc_sigpending(X) | 
|---|
 | 87 |  #endif | 
|---|
 | 88 |   | 
|---|
 | 89 |  #if defined (STRUCT_TASK_STRUCT_HAS_SIGMASK_LOCK) | 
|---|
 | 90 | -#define SIG_LOCK(X) spin_lock_irq(&X->sigmask_lock) | 
|---|
 | 91 | -#define SIG_UNLOCK(X) spin_unlock_irq(&X->sigmask_lock) | 
|---|
 | 92 | +# define SIG_LOCK(X) spin_lock_irq(&X->sigmask_lock) | 
|---|
 | 93 | +# define SIG_UNLOCK(X) spin_unlock_irq(&X->sigmask_lock) | 
|---|
 | 94 |  #elif defined (STRUCT_TASK_STRUCT_HAS_SIGHAND) | 
|---|
 | 95 | -#define SIG_LOCK(X) spin_lock_irq(&X->sighand->siglock) | 
|---|
 | 96 | -#define SIG_UNLOCK(X) spin_unlock_irq(&X->sighand->siglock) | 
|---|
 | 97 | +# define SIG_LOCK(X) spin_lock_irq(&X->sighand->siglock) | 
|---|
 | 98 | +# define SIG_UNLOCK(X) spin_unlock_irq(&X->sighand->siglock) | 
|---|
 | 99 |  #else | 
|---|
 | 100 | -#define SIG_LOCK(X) spin_lock_irq(&X->sig->siglock) | 
|---|
 | 101 | -#define SIG_UNLOCK(X) spin_unlock_irq(&X->sig->siglock) | 
|---|
 | 102 | +# define SIG_LOCK(X) spin_lock_irq(&X->sig->siglock) | 
|---|
 | 103 | +# define SIG_UNLOCK(X) spin_unlock_irq(&X->sig->siglock) | 
|---|
 | 104 |  #endif | 
|---|
 | 105 |   | 
|---|
 | 106 |  #if defined (STRUCT_TASK_STRUCT_HAS_RLIM) | 
|---|
 | 107 | -#define TASK_STRUCT_RLIM rlim | 
|---|
 | 108 | +# define TASK_STRUCT_RLIM rlim | 
|---|
 | 109 |  #elif defined (STRUCT_TASK_STRUCT_HAS_SIGNAL_RLIM) | 
|---|
 | 110 | -#define TASK_STRUCT_RLIM signal->rlim | 
|---|
 | 111 | +# define TASK_STRUCT_RLIM signal->rlim | 
|---|
 | 112 |  #else | 
|---|
 | 113 | -#error Not sure what to do about rlim (should be in the Linux task struct somewhere....) | 
|---|
 | 114 | +# error Not sure what to do about rlim (should be in the Linux task struct somewhere....) | 
|---|
 | 115 |  #endif | 
|---|
 | 116 |   | 
|---|
 | 117 |   | 
|---|
 | 118 | @@ -83,13 +83,13 @@ static inline time_t osi_Time(void) { | 
|---|
 | 119 |      return xtime.tv_sec; | 
|---|
 | 120 |  } | 
|---|
 | 121 |  #else | 
|---|
 | 122 | -#define osi_Time() (xtime.tv_sec) | 
|---|
 | 123 | +# define osi_Time() (xtime.tv_sec) | 
|---|
 | 124 |  #endif | 
|---|
 | 125 |   | 
|---|
 | 126 |   | 
|---|
 | 127 |   | 
|---|
 | 128 |  #ifdef AFS_LINUX_64BIT_KERNEL | 
|---|
 | 129 | -#define osi_GetTime(V)                                 \ | 
|---|
 | 130 | +# define osi_GetTime(V)                                 \ | 
|---|
 | 131 |      do {                                               \ | 
|---|
 | 132 |         struct timeval __afs_tv;                              \ | 
|---|
 | 133 |         do_gettimeofday(&__afs_tv);                           \ | 
|---|
 | 134 | @@ -97,7 +97,7 @@ static inline time_t osi_Time(void) { | 
|---|
 | 135 |         (V)->tv_usec = (afs_int32)__afs_tv.tv_usec;           \ | 
|---|
 | 136 |      } while (0) | 
|---|
 | 137 |  #else | 
|---|
 | 138 | -#define osi_GetTime(V) do_gettimeofday((V)) | 
|---|
 | 139 | +# define osi_GetTime(V) do_gettimeofday((V)) | 
|---|
 | 140 |  #endif | 
|---|
 | 141 |   | 
|---|
 | 142 |  #undef gop_lookupname | 
|---|
 | 143 | @@ -149,12 +149,12 @@ typedef struct task_struct afs_proc_t; | 
|---|
 | 144 |  typedef struct cred afs_ucred_t; | 
|---|
 | 145 |  typedef struct cred cred_t; | 
|---|
 | 146 |   | 
|---|
 | 147 | -#define afs_cr_uid(cred) ((cred)->fsuid) | 
|---|
 | 148 | -#define afs_cr_gid(cred) ((cred)->fsgid) | 
|---|
 | 149 | -#define afs_cr_ruid(cred) ((cred)->uid) | 
|---|
 | 150 | -#define afs_cr_rgid(cred) ((cred)->gid) | 
|---|
 | 151 | -#define afs_cr_group_info(cred) ((cred)->group_info) | 
|---|
 | 152 | -#define crhold(c) (get_cred(c)) | 
|---|
 | 153 | +# define afs_cr_uid(cred) ((cred)->fsuid) | 
|---|
 | 154 | +# define afs_cr_gid(cred) ((cred)->fsgid) | 
|---|
 | 155 | +# define afs_cr_ruid(cred) ((cred)->uid) | 
|---|
 | 156 | +# define afs_cr_rgid(cred) ((cred)->gid) | 
|---|
 | 157 | +# define afs_cr_group_info(cred) ((cred)->group_info) | 
|---|
 | 158 | +# define crhold(c) (get_cred(c)) | 
|---|
 | 159 |  static inline void | 
|---|
 | 160 |  afs_set_cr_uid(cred_t *cred, uid_t uid) { | 
|---|
 | 161 |      cred->fsuid = uid; | 
|---|
 | 162 | @@ -176,11 +176,11 @@ afs_set_cr_group_info(cred_t *cred, struct group_info *group_info) { | 
|---|
 | 163 |      cred->group_info = group_info; | 
|---|
 | 164 |  } | 
|---|
 | 165 |   | 
|---|
 | 166 | -#define current_group_info() (current->cred->group_info) | 
|---|
 | 167 | -#define task_gid(task) (task->cred->gid) | 
|---|
 | 168 | -#define task_user(task) (task->cred->user) | 
|---|
 | 169 | -#define task_session_keyring(task) (task->cred->tgcred->session_keyring) | 
|---|
 | 170 | -#define current_session_keyring() (current->cred->tgcred->session_keyring) | 
|---|
 | 171 | +# define current_group_info() (current->cred->group_info) | 
|---|
 | 172 | +# define task_gid(task) (task->cred->gid) | 
|---|
 | 173 | +# define task_user(task) (task->cred->user) | 
|---|
 | 174 | +# define task_session_keyring(task) (task->cred->tgcred->session_keyring) | 
|---|
 | 175 | +# define current_session_keyring() (current->cred->tgcred->session_keyring) | 
|---|
 | 176 |   | 
|---|
 | 177 |  #else | 
|---|
 | 178 |   | 
|---|
 | 179 | @@ -194,31 +194,31 @@ typedef struct afs_cred { | 
|---|
 | 180 |  } cred_t; | 
|---|
 | 181 |   | 
|---|
 | 182 |  typedef struct afs_cred afs_ucred_t; | 
|---|
 | 183 | -#define afs_cr_group_info(cred) ((cred)->cr_group_info) | 
|---|
 | 184 | +# define afs_cr_group_info(cred) ((cred)->cr_group_info) | 
|---|
 | 185 |  static inline void | 
|---|
 | 186 |  afs_set_cr_group_info(cred_t *cred, struct group_info *group_info) { | 
|---|
 | 187 |      cred->cr_group_info = group_info; | 
|---|
 | 188 |  } | 
|---|
 | 189 |   | 
|---|
 | 190 | -#define current_group_info() (current->group_info) | 
|---|
 | 191 | -#if !defined(task_gid) | 
|---|
 | 192 | -#define task_gid(task) (task->gid) | 
|---|
 | 193 | -#endif | 
|---|
 | 194 | -#if !defined(task_uid) | 
|---|
 | 195 | -#define task_uid(task) (task->uid) | 
|---|
 | 196 | -#endif | 
|---|
 | 197 | -#define task_user(task) (task->user) | 
|---|
 | 198 | -#define task_session_keyring(task) (task->signal->session_keyring) | 
|---|
 | 199 | -#define current_session_keyring() (current->signal->session_keyring) | 
|---|
 | 200 | -#define crhold(c) atomic_inc(&(c)->cr_ref) | 
|---|
 | 201 | +# define current_group_info() (current->group_info) | 
|---|
 | 202 | +# if !defined(task_gid) | 
|---|
 | 203 | +#  define task_gid(task) (task->gid) | 
|---|
 | 204 | +# endif | 
|---|
 | 205 | +# if !defined(task_uid) | 
|---|
 | 206 | +#  define task_uid(task) (task->uid) | 
|---|
 | 207 | +# endif | 
|---|
 | 208 | +# define task_user(task) (task->user) | 
|---|
 | 209 | +# define task_session_keyring(task) (task->signal->session_keyring) | 
|---|
 | 210 | +# define current_session_keyring() (current->signal->session_keyring) | 
|---|
 | 211 | +# define crhold(c) atomic_inc(&(c)->cr_ref) | 
|---|
 | 212 |   | 
|---|
 | 213 |  #endif /* defined(STRUCT_TASK_STRUCT_HAS_CRED) */ | 
|---|
 | 214 |   | 
|---|
 | 215 |  #if !defined(current_cred) | 
|---|
 | 216 | -#define current_gid() (current->gid) | 
|---|
 | 217 | -#define current_uid() (current->uid) | 
|---|
 | 218 | -#define current_fsgid() (current->fsgid) | 
|---|
 | 219 | -#define current_fsuid() (current->fsuid) | 
|---|
 | 220 | +# define current_gid() (current->gid) | 
|---|
 | 221 | +# define current_uid() (current->uid) | 
|---|
 | 222 | +# define current_fsgid() (current->fsgid) | 
|---|
 | 223 | +# define current_fsuid() (current->fsuid) | 
|---|
 | 224 |  #endif | 
|---|
 | 225 |   | 
|---|
 | 226 |  /* UIO manipulation */ | 
|---|
 | 227 | @@ -245,7 +245,7 @@ struct uio { | 
|---|
 | 228 |  #define OSIFILE_INODE(a) FILE_INODE((a)->filp) | 
|---|
 | 229 |   | 
|---|
 | 230 |  #if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) && !defined(AFS_IA64_LINUX20_ENV) | 
|---|
 | 231 | -#define NEED_IOCTL32 | 
|---|
 | 232 | +# define NEED_IOCTL32 | 
|---|
 | 233 |  #endif | 
|---|
 | 234 |   | 
|---|
 | 235 |  #include <linux/version.h> | 
|---|
 | 236 | @@ -256,8 +256,8 @@ struct uio { | 
|---|
 | 237 |  extern struct mutex afs_global_lock; | 
|---|
 | 238 |  #else | 
|---|
 | 239 |  extern struct semaphore afs_global_lock; | 
|---|
 | 240 | -#define mutex_lock(lock) down(lock) | 
|---|
 | 241 | -#define mutex_unlock(lock) up(lock) | 
|---|
 | 242 | +# define mutex_lock(lock) down(lock) | 
|---|
 | 243 | +# define mutex_unlock(lock) up(lock) | 
|---|
 | 244 |  #endif | 
|---|
 | 245 |  extern int afs_global_owner; | 
|---|
 | 246 |   | 
|---|
 | 247 | @@ -285,63 +285,63 @@ do { \ | 
|---|
 | 248 |  #ifdef AFS_AMD64_LINUX20_ENV | 
|---|
 | 249 |  /* RHEL5 beta's kernel doesn't define these. They aren't gonna change, so... */ | 
|---|
 | 250 |   | 
|---|
 | 251 | -#ifndef __NR_ia32_afs_syscall | 
|---|
 | 252 | -#define __NR_ia32_afs_syscall 137 | 
|---|
 | 253 | -#endif | 
|---|
 | 254 | -#ifndef __NR_ia32_setgroups | 
|---|
 | 255 | -#define __NR_ia32_setgroups 81 | 
|---|
 | 256 | -#endif | 
|---|
 | 257 | -#ifndef __NR_ia32_setgroups32 | 
|---|
 | 258 | -#define __NR_ia32_setgroups32 206 | 
|---|
 | 259 | -#endif | 
|---|
 | 260 | -#ifndef __NR_ia32_close | 
|---|
 | 261 | -#define __NR_ia32_close 6 | 
|---|
 | 262 | -#endif | 
|---|
 | 263 | -#ifndef __NR_ia32_chdir | 
|---|
 | 264 | -#define __NR_ia32_chdir 12 | 
|---|
 | 265 | -#endif | 
|---|
 | 266 | -#ifndef __NR_ia32_break | 
|---|
 | 267 | -#define __NR_ia32_break 17 | 
|---|
 | 268 | -#endif | 
|---|
 | 269 | -#ifndef __NR_ia32_stty | 
|---|
 | 270 | -#define __NR_ia32_stty 31 | 
|---|
 | 271 | -#endif | 
|---|
 | 272 | -#ifndef __NR_ia32_gtty | 
|---|
 | 273 | -#define __NR_ia32_gtty 32 | 
|---|
 | 274 | -#endif | 
|---|
 | 275 | -#ifndef __NR_ia32_ftime | 
|---|
 | 276 | -#define __NR_ia32_ftime 35 | 
|---|
 | 277 | -#endif | 
|---|
 | 278 | -#ifndef __NR_ia32_prof | 
|---|
 | 279 | -#define __NR_ia32_prof 44 | 
|---|
 | 280 | -#endif | 
|---|
 | 281 | -#ifndef __NR_ia32_lock | 
|---|
 | 282 | -#define __NR_ia32_lock 53 | 
|---|
 | 283 | -#endif | 
|---|
 | 284 | -#ifndef __NR_ia32_mpx | 
|---|
 | 285 | -#define __NR_ia32_mpx 56 | 
|---|
 | 286 | -#endif | 
|---|
 | 287 | -#ifndef __NR_ia32_exit | 
|---|
 | 288 | -#define __NR_ia32_exit 1 | 
|---|
 | 289 | -#endif | 
|---|
 | 290 | -#ifndef __NR_ia32_mount | 
|---|
 | 291 | -#define __NR_ia32_mount 21 | 
|---|
 | 292 | -#endif | 
|---|
 | 293 | -#ifndef __NR_ia32_read | 
|---|
 | 294 | -#define __NR_ia32_read 3 | 
|---|
 | 295 | -#endif | 
|---|
 | 296 | -#ifndef __NR_ia32_write | 
|---|
 | 297 | -#define __NR_ia32_write 4 | 
|---|
 | 298 | -#endif | 
|---|
 | 299 | -#ifndef __NR_ia32_open | 
|---|
 | 300 | -#define __NR_ia32_open 5 | 
|---|
 | 301 | -#endif | 
|---|
 | 302 | -#ifndef __NR_ia32_close | 
|---|
 | 303 | -#define __NR_ia32_close 6 | 
|---|
 | 304 | -#endif | 
|---|
 | 305 | -#ifndef __NR_ia32_unlink | 
|---|
 | 306 | -#define __NR_ia32_unlink 10 | 
|---|
 | 307 | -#endif | 
|---|
 | 308 | +# ifndef __NR_ia32_afs_syscall | 
|---|
 | 309 | +#  define __NR_ia32_afs_syscall 137 | 
|---|
 | 310 | +# endif | 
|---|
 | 311 | +# ifndef __NR_ia32_setgroups | 
|---|
 | 312 | +#  define __NR_ia32_setgroups 81 | 
|---|
 | 313 | +# endif | 
|---|
 | 314 | +# ifndef __NR_ia32_setgroups32 | 
|---|
 | 315 | +#  define __NR_ia32_setgroups32 206 | 
|---|
 | 316 | +# endif | 
|---|
 | 317 | +# ifndef __NR_ia32_close | 
|---|
 | 318 | +#  define __NR_ia32_close 6 | 
|---|
 | 319 | +# endif | 
|---|
 | 320 | +# ifndef __NR_ia32_chdir | 
|---|
 | 321 | +#  define __NR_ia32_chdir 12 | 
|---|
 | 322 | +# endif | 
|---|
 | 323 | +# ifndef __NR_ia32_break | 
|---|
 | 324 | +#  define __NR_ia32_break 17 | 
|---|
 | 325 | +# endif | 
|---|
 | 326 | +# ifndef __NR_ia32_stty | 
|---|
 | 327 | +#  define __NR_ia32_stty 31 | 
|---|
 | 328 | +# endif | 
|---|
 | 329 | +# ifndef __NR_ia32_gtty | 
|---|
 | 330 | +#  define __NR_ia32_gtty 32 | 
|---|
 | 331 | +# endif | 
|---|
 | 332 | +# ifndef __NR_ia32_ftime | 
|---|
 | 333 | +#  define __NR_ia32_ftime 35 | 
|---|
 | 334 | +# endif | 
|---|
 | 335 | +# ifndef __NR_ia32_prof | 
|---|
 | 336 | +#  define __NR_ia32_prof 44 | 
|---|
 | 337 | +# endif | 
|---|
 | 338 | +# ifndef __NR_ia32_lock | 
|---|
 | 339 | +#  define __NR_ia32_lock 53 | 
|---|
 | 340 | +# endif | 
|---|
 | 341 | +# ifndef __NR_ia32_mpx | 
|---|
 | 342 | +#  define __NR_ia32_mpx 56 | 
|---|
 | 343 | +# endif | 
|---|
 | 344 | +# ifndef __NR_ia32_exit | 
|---|
 | 345 | +#  define __NR_ia32_exit 1 | 
|---|
 | 346 | +# endif | 
|---|
 | 347 | +# ifndef __NR_ia32_mount | 
|---|
 | 348 | +#  define __NR_ia32_mount 21 | 
|---|
 | 349 | +# endif | 
|---|
 | 350 | +# ifndef __NR_ia32_read | 
|---|
 | 351 | +#  define __NR_ia32_read 3 | 
|---|
 | 352 | +# endif | 
|---|
 | 353 | +# ifndef __NR_ia32_write | 
|---|
 | 354 | +#  define __NR_ia32_write 4 | 
|---|
 | 355 | +# endif | 
|---|
 | 356 | +# ifndef __NR_ia32_open | 
|---|
 | 357 | +#  define __NR_ia32_open 5 | 
|---|
 | 358 | +# endif | 
|---|
 | 359 | +# ifndef __NR_ia32_close | 
|---|
 | 360 | +#  define __NR_ia32_close 6 | 
|---|
 | 361 | +# endif | 
|---|
 | 362 | +# ifndef __NR_ia32_unlink | 
|---|
 | 363 | +#  define __NR_ia32_unlink 10 | 
|---|
 | 364 | +# endif | 
|---|
 | 365 |  #endif | 
|---|
 | 366 |   | 
|---|
 | 367 |  #define osi_procname(procname, size) strncpy(procname, current->comm, size) | 
|---|
 | 368 | --  | 
|---|
 | 369 | 1.7.9.6 (Apple Git-31.1) | 
|---|
 | 370 |  | 
|---|
 | 371 | From 314fcfa35917de0f688374137f0ffa040ea3660d Mon Sep 17 00:00:00 2001 | 
|---|
 | 372 | From: Marc Dionne <marc.c.dionne@gmail.com> | 
|---|
 | 373 | Date: Wed, 9 Jan 2013 19:26:54 -0500 | 
|---|
 | 374 | Subject: [PATCH] Linux 3.8: session_keyring changes | 
|---|
 | 375 |  | 
|---|
 | 376 | The session_keyring is now attached directly to the cred structure | 
|---|
 | 377 | and the thread_group_cred structure (cred->tgcred) no longer exists. | 
|---|
 | 378 |  | 
|---|
 | 379 | Adapt code that makes use of tgcred, and use the standard rcu based | 
|---|
 | 380 | mechanism to update session_keyring. | 
|---|
 | 381 |  | 
|---|
 | 382 | Reviewed-on: http://gerrit.openafs.org/8905 | 
|---|
 | 383 | Reviewed-by: Andrew Deason <adeason@sinenomine.net> | 
|---|
 | 384 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 385 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 386 | (cherry picked from commit c6d27e322a8d3b352554650473a048235a9c763a) | 
|---|
 | 387 |  | 
|---|
 | 388 | Change-Id: If0998ee777ab0d196e19162499eb3ee60c5ff85d | 
|---|
 | 389 | Reviewed-on: http://gerrit.openafs.org/8941 | 
|---|
 | 390 | Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com> | 
|---|
 | 391 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 392 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 393 | Reviewed-by: Andrew Deason <adeason@sinenomine.net> | 
|---|
 | 394 | Reviewed-by: Paul Smeddle <paul.smeddle@gmail.com> | 
|---|
 | 395 | Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de> | 
|---|
 | 396 | --- | 
|---|
 | 397 |  acinclude.m4                |    1 + | 
|---|
 | 398 |  src/afs/LINUX/osi_compat.h  |   34 ++++++++++++++++++++++++++++++++-- | 
|---|
 | 399 |  src/afs/LINUX/osi_groups.c  |    9 ++------- | 
|---|
 | 400 |  src/afs/LINUX/osi_machdep.h |    9 +++++++-- | 
|---|
 | 401 |  4 files changed, 42 insertions(+), 11 deletions(-) | 
|---|
 | 402 |  | 
|---|
 | 403 | diff --git a/acinclude.m4 b/acinclude.m4 | 
|---|
 | 404 | index 8c57779..0a05caa 100644 | 
|---|
 | 405 | --- a/acinclude.m4 | 
|---|
 | 406 | +++ b/acinclude.m4 | 
|---|
 | 407 | @@ -812,6 +812,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) | 
|---|
 | 408 |                                        [write_begin], [fs.h]) | 
|---|
 | 409 |                  AC_CHECK_LINUX_STRUCT([backing_dev_info], [name], | 
|---|
 | 410 |                                        [backing-dev.h]) | 
|---|
 | 411 | +                AC_CHECK_LINUX_STRUCT([cred], [session_keyring], [cred.h]) | 
|---|
 | 412 |                  AC_CHECK_LINUX_STRUCT([ctl_table], [ctl_name], [sysctl.h]) | 
|---|
 | 413 |                  AC_CHECK_LINUX_STRUCT([dentry_operations], [d_automount], [dcache.h]) | 
|---|
 | 414 |                  AC_CHECK_LINUX_STRUCT([inode], [i_alloc_sem], [fs.h]) | 
|---|
 | 415 | diff --git a/src/afs/LINUX/osi_compat.h b/src/afs/LINUX/osi_compat.h | 
|---|
 | 416 | index 2dda136..a777542 100644 | 
|---|
 | 417 | --- a/src/afs/LINUX/osi_compat.h | 
|---|
 | 418 | +++ b/src/afs/LINUX/osi_compat.h | 
|---|
 | 419 | @@ -186,14 +186,24 @@ afs_linux_key_alloc(struct key_type *type, const char *desc, uid_t uid, | 
|---|
 | 420 |  } | 
|---|
 | 421 |   | 
|---|
 | 422 |  # if defined(STRUCT_TASK_STRUCT_HAS_CRED) | 
|---|
 | 423 | +static inline struct key * | 
|---|
 | 424 | +afs_session_keyring(afs_ucred_t *cred) | 
|---|
 | 425 | +{ | 
|---|
 | 426 | +#  if defined(STRUCT_CRED_HAS_SESSION_KEYRING) | 
|---|
 | 427 | +    return cred->session_keyring; | 
|---|
 | 428 | +#  else | 
|---|
 | 429 | +    return cred->tgcred->session_keyring; | 
|---|
 | 430 | +#  endif | 
|---|
 | 431 | +} | 
|---|
 | 432 | + | 
|---|
 | 433 |  static inline struct key* | 
|---|
 | 434 |  afs_linux_search_keyring(afs_ucred_t *cred, struct key_type *type) | 
|---|
 | 435 |  { | 
|---|
 | 436 |      key_ref_t key_ref; | 
|---|
 | 437 |   | 
|---|
 | 438 | -    if (cred->tgcred->session_keyring) { | 
|---|
 | 439 | +    if (afs_session_keyring(cred)) { | 
|---|
 | 440 |         key_ref = keyring_search( | 
|---|
 | 441 | -                     make_key_ref(cred->tgcred->session_keyring, 1), | 
|---|
 | 442 | +                     make_key_ref(afs_session_keyring(cred), 1), | 
|---|
 | 443 |                       type, "_pag"); | 
|---|
 | 444 |         if (IS_ERR(key_ref)) | 
|---|
 | 445 |             return ERR_CAST(key_ref); | 
|---|
 | 446 | @@ -507,4 +517,24 @@ afs_set_name(afs_name_t aname, char *string) { | 
|---|
 | 447 |  } | 
|---|
 | 448 |  #endif | 
|---|
 | 449 |   | 
|---|
 | 450 | +static_inline struct key * | 
|---|
 | 451 | +afs_set_session_keyring(struct key *keyring) | 
|---|
 | 452 | +{ | 
|---|
 | 453 | +    struct key *old; | 
|---|
 | 454 | +#if defined(STRUCT_CRED_HAS_SESSION_KEYRING) | 
|---|
 | 455 | +    struct cred *new_creds; | 
|---|
 | 456 | +    old = current_session_keyring(); | 
|---|
 | 457 | +    new_creds = prepare_creds(); | 
|---|
 | 458 | +    rcu_assign_pointer(new_creds->session_keyring, keyring); | 
|---|
 | 459 | +    commit_creds(new_creds); | 
|---|
 | 460 | +#else | 
|---|
 | 461 | +    spin_lock_irq(¤t->sighand->siglock); | 
|---|
 | 462 | +    old = task_session_keyring(current); | 
|---|
 | 463 | +    smp_wmb(); | 
|---|
 | 464 | +    task_session_keyring(current) = keyring; | 
|---|
 | 465 | +    spin_unlock_irq(¤t->sighand->siglock); | 
|---|
 | 466 | +#endif | 
|---|
 | 467 | +    return old; | 
|---|
 | 468 | +} | 
|---|
 | 469 | + | 
|---|
 | 470 |  #endif /* AFS_LINUX_OSI_COMPAT_H */ | 
|---|
 | 471 | diff --git a/src/afs/LINUX/osi_groups.c b/src/afs/LINUX/osi_groups.c | 
|---|
 | 472 | index c2a0308..e351344 100644 | 
|---|
 | 473 | --- a/src/afs/LINUX/osi_groups.c | 
|---|
 | 474 | +++ b/src/afs/LINUX/osi_groups.c | 
|---|
 | 475 | @@ -214,14 +214,9 @@ install_session_keyring(struct key *keyring) | 
|---|
 | 476 |      } | 
|---|
 | 477 |   | 
|---|
 | 478 |      /* install the keyring */ | 
|---|
 | 479 | -    spin_lock_irq(¤t->sighand->siglock); | 
|---|
 | 480 | -    old = task_session_keyring(current); | 
|---|
 | 481 | -    smp_wmb(); | 
|---|
 | 482 | -    task_session_keyring(current) = keyring; | 
|---|
 | 483 | -    spin_unlock_irq(¤t->sighand->siglock); | 
|---|
 | 484 | - | 
|---|
 | 485 | +    old = afs_set_session_keyring(keyring); | 
|---|
 | 486 |      if (old) | 
|---|
 | 487 | -           key_put(old); | 
|---|
 | 488 | +       key_put(old); | 
|---|
 | 489 |   | 
|---|
 | 490 |  out: | 
|---|
 | 491 |      return code; | 
|---|
 | 492 | diff --git a/src/afs/LINUX/osi_machdep.h b/src/afs/LINUX/osi_machdep.h | 
|---|
 | 493 | index 9260733..0202d0d 100644 | 
|---|
 | 494 | --- a/src/afs/LINUX/osi_machdep.h | 
|---|
 | 495 | +++ b/src/afs/LINUX/osi_machdep.h | 
|---|
 | 496 | @@ -179,8 +179,13 @@ afs_set_cr_group_info(cred_t *cred, struct group_info *group_info) { | 
|---|
 | 497 |  # define current_group_info() (current->cred->group_info) | 
|---|
 | 498 |  # define task_gid(task) (task->cred->gid) | 
|---|
 | 499 |  # define task_user(task) (task->cred->user) | 
|---|
 | 500 | -# define task_session_keyring(task) (task->cred->tgcred->session_keyring) | 
|---|
 | 501 | -# define current_session_keyring() (current->cred->tgcred->session_keyring) | 
|---|
 | 502 | +# if defined(STRUCT_CRED_HAS_SESSION_KEYRING) | 
|---|
 | 503 | +#  define task_session_keyring(task) (task->cred->session_keyring) | 
|---|
 | 504 | +#  define current_session_keyring() (current->cred->session_keyring) | 
|---|
 | 505 | +# else | 
|---|
 | 506 | +#  define task_session_keyring(task) (task->cred->tgcred->session_keyring) | 
|---|
 | 507 | +#  define current_session_keyring() (current->cred->tgcred->session_keyring) | 
|---|
 | 508 | +# endif | 
|---|
 | 509 |   | 
|---|
 | 510 |  #else | 
|---|
 | 511 |   | 
|---|
 | 512 | --  | 
|---|
 | 513 | 1.7.9.6 (Apple Git-31.1) | 
|---|
 | 514 |  | 
|---|
 | 515 | From bf9bcd09e6a54eb40e47c7a6cdc060be43be9495 Mon Sep 17 00:00:00 2001 | 
|---|
 | 516 | From: Marc Dionne <marc.c.dionne@gmail.com> | 
|---|
 | 517 | Date: Wed, 9 Jan 2013 21:22:27 -0500 | 
|---|
 | 518 | Subject: [PATCH] Linux 3.8: vmtruncate removal | 
|---|
 | 519 |  | 
|---|
 | 520 | vmtruncate had been deprecated for a while and has now been | 
|---|
 | 521 | removed.  Do things the new way based on truncate_setsize. | 
|---|
 | 522 |  | 
|---|
 | 523 | Reviewed-on: http://gerrit.openafs.org/8906 | 
|---|
 | 524 | Reviewed-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil> | 
|---|
 | 525 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 526 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 527 | (cherry picked from commit d0479bbaf43900d6733c3f7517926ee9813c9610) | 
|---|
 | 528 |  | 
|---|
 | 529 | Change-Id: Iafc64e19544dec9fcaefad5ad274eac4133f4083 | 
|---|
 | 530 | Reviewed-on: http://gerrit.openafs.org/8942 | 
|---|
 | 531 | Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com> | 
|---|
 | 532 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 533 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 534 | Reviewed-by: Andrew Deason <adeason@sinenomine.net> | 
|---|
 | 535 | Reviewed-by: Paul Smeddle <paul.smeddle@gmail.com> | 
|---|
 | 536 | Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de> | 
|---|
 | 537 | --- | 
|---|
 | 538 |  acinclude.m4               |    1 + | 
|---|
 | 539 |  src/afs/LINUX/osi_compat.h |   14 ++++++++++++++ | 
|---|
 | 540 |  src/afs/LINUX/osi_vm.c     |    5 ++--- | 
|---|
 | 541 |  3 files changed, 17 insertions(+), 3 deletions(-) | 
|---|
 | 542 |  | 
|---|
 | 543 | diff --git a/acinclude.m4 b/acinclude.m4 | 
|---|
 | 544 | index 0a05caa..4223bb1 100644 | 
|---|
 | 545 | --- a/acinclude.m4 | 
|---|
 | 546 | +++ b/acinclude.m4 | 
|---|
 | 547 | @@ -824,6 +824,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) | 
|---|
 | 548 |                  AC_CHECK_LINUX_STRUCT([file_operations], [sendfile], [fs.h]) | 
|---|
 | 549 |                  AC_CHECK_LINUX_STRUCT([file_system_type], [mount], [fs.h]) | 
|---|
 | 550 |                  AC_CHECK_LINUX_STRUCT([filename], [name], [fs.h]) | 
|---|
 | 551 | +                AC_CHECK_LINUX_STRUCT([inode_operations], [truncate], [fs.h]) | 
|---|
 | 552 |                  AC_CHECK_LINUX_STRUCT([key_type], [preparse], [key-type.h]) | 
|---|
 | 553 |                  AC_CHECK_LINUX_STRUCT([nameidata], [path], [namei.h]) | 
|---|
 | 554 |                  AC_CHECK_LINUX_STRUCT([proc_dir_entry], [owner], [proc_fs.h]) | 
|---|
 | 555 | diff --git a/src/afs/LINUX/osi_compat.h b/src/afs/LINUX/osi_compat.h | 
|---|
 | 556 | index a777542..e8bf003 100644 | 
|---|
 | 557 | --- a/src/afs/LINUX/osi_compat.h | 
|---|
 | 558 | +++ b/src/afs/LINUX/osi_compat.h | 
|---|
 | 559 | @@ -537,4 +537,18 @@ afs_set_session_keyring(struct key *keyring) | 
|---|
 | 560 |      return old; | 
|---|
 | 561 |  } | 
|---|
 | 562 |   | 
|---|
 | 563 | +static inline int | 
|---|
 | 564 | +afs_truncate(struct inode *inode, int len) | 
|---|
 | 565 | +{ | 
|---|
 | 566 | +    int code; | 
|---|
 | 567 | +#if defined(STRUCT_INODE_OPERATIONS_HAS_TRUNCATE) | 
|---|
 | 568 | +    code = vmtruncate(inode, len); | 
|---|
 | 569 | +#else | 
|---|
 | 570 | +    code = inode_newsize_ok(inode, len); | 
|---|
 | 571 | +    if (!code) | 
|---|
 | 572 | +        truncate_setsize(inode, len); | 
|---|
 | 573 | +#endif | 
|---|
 | 574 | +    return code; | 
|---|
 | 575 | +} | 
|---|
 | 576 | + | 
|---|
 | 577 |  #endif /* AFS_LINUX_OSI_COMPAT_H */ | 
|---|
 | 578 | diff --git a/src/afs/LINUX/osi_vm.c b/src/afs/LINUX/osi_vm.c | 
|---|
 | 579 | index 2cd34f9..8bc792e 100644 | 
|---|
 | 580 | --- a/src/afs/LINUX/osi_vm.c | 
|---|
 | 581 | +++ b/src/afs/LINUX/osi_vm.c | 
|---|
 | 582 | @@ -51,8 +51,7 @@ osi_VM_FlushVCache(struct vcache *avc, int *slept) | 
|---|
 | 583 |      if (avc->opens != 0) | 
|---|
 | 584 |         return EBUSY; | 
|---|
 | 585 |   | 
|---|
 | 586 | -    return vmtruncate(ip, 0); | 
|---|
 | 587 | -    return 0; | 
|---|
 | 588 | +    return afs_truncate(ip, 0); | 
|---|
 | 589 |  } | 
|---|
 | 590 |   | 
|---|
 | 591 |  /* Try to invalidate pages, for "fs flush" or "fs flushv"; or | 
|---|
 | 592 | @@ -132,5 +131,5 @@ osi_VM_FlushPages(struct vcache *avc, afs_ucred_t *credp) | 
|---|
 | 593 |  void | 
|---|
 | 594 |  osi_VM_Truncate(struct vcache *avc, int alen, afs_ucred_t *acred) | 
|---|
 | 595 |  { | 
|---|
 | 596 | -    vmtruncate(AFSTOV(avc), alen); | 
|---|
 | 597 | +    afs_truncate(AFSTOV(avc), alen); | 
|---|
 | 598 |  } | 
|---|
 | 599 | --  | 
|---|
 | 600 | 1.7.9.6 (Apple Git-31.1) | 
|---|
 | 601 |  | 
|---|
 | 602 | From b0a10607f90c4097206bc38cb9bd16e842dbda10 Mon Sep 17 00:00:00 2001 | 
|---|
 | 603 | From: Marc Dionne <marc.c.dionne@gmail.com> | 
|---|
 | 604 | Date: Fri, 18 Jan 2013 22:40:03 -0500 | 
|---|
 | 605 | Subject: [PATCH] Linux: setpag() may replace credentials | 
|---|
 | 606 |  | 
|---|
 | 607 | For recent Linux. setpag() may replace the current process' cred | 
|---|
 | 608 | structure with a new one.  This is not a problem for most callers, | 
|---|
 | 609 | but in the case of processing a SetTokens2 pioctl with the setpag | 
|---|
 | 610 | option, the new credentials should be used to determine the target | 
|---|
 | 611 | for the token. | 
|---|
 | 612 |  | 
|---|
 | 613 | Reviewed-on: http://gerrit.openafs.org/8924 | 
|---|
 | 614 | Reviewed-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil> | 
|---|
 | 615 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 616 | Reviewed-by: Derrick Brashear <shadow@your-file-system.com> | 
|---|
 | 617 | (cherry picked from commit b61eac783e8c092cd4ba9f53a2b5ca7d43e08b1b) | 
|---|
 | 618 |  | 
|---|
 | 619 | Change-Id: I66b5f171318964ff40fe78be24e75519183c3a82 | 
|---|
 | 620 | Reviewed-on: http://gerrit.openafs.org/8948 | 
|---|
 | 621 | Tested-by: BuildBot <buildbot@rampaginggeek.com> | 
|---|
 | 622 | Reviewed-by: Andrew Deason <adeason@sinenomine.net> | 
|---|
 | 623 | Reviewed-by: Paul Smeddle <paul.smeddle@gmail.com> | 
|---|
 | 624 | Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com> | 
|---|
 | 625 | Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de> | 
|---|
 | 626 | --- | 
|---|
 | 627 |  src/afs/afs_pioctl.c |    8 ++++++++ | 
|---|
 | 628 |  1 file changed, 8 insertions(+) | 
|---|
 | 629 |  | 
|---|
 | 630 | diff --git a/src/afs/afs_pioctl.c b/src/afs/afs_pioctl.c | 
|---|
 | 631 | index 3c01be5..98919a3 100644 | 
|---|
 | 632 | --- a/src/afs/afs_pioctl.c | 
|---|
 | 633 | +++ b/src/afs/afs_pioctl.c | 
|---|
 | 634 | @@ -1859,6 +1859,9 @@ DECL_PIOCTL(PSetTokens) | 
|---|
 | 635 |      afs_PutCell(tcell, READ_LOCK); | 
|---|
 | 636 |      if (set_parent_pag) { | 
|---|
 | 637 |         afs_uint32 pag; | 
|---|
 | 638 | +#if defined(AFS_LINUX26_ENV) | 
|---|
 | 639 | +       afs_ucred_t *old_cred = *acred; | 
|---|
 | 640 | +#endif | 
|---|
 | 641 |  #if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV) | 
|---|
 | 642 |         char procname[256]; | 
|---|
 | 643 |         osi_procname(procname, 256); | 
|---|
 | 644 | @@ -1868,6 +1871,11 @@ DECL_PIOCTL(PSetTokens) | 
|---|
 | 645 |  #else | 
|---|
 | 646 |         if (!setpag(acred, -1, &pag, 1)) { | 
|---|
 | 647 |  #endif | 
|---|
 | 648 | +#if defined(AFS_LINUX26_ENV) | 
|---|
 | 649 | +           /* setpag() may have changed our credentials */ | 
|---|
 | 650 | +           *acred = crref(); | 
|---|
 | 651 | +           crfree(old_cred); | 
|---|
 | 652 | +#endif | 
|---|
 | 653 |             afs_InitReq(&treq, *acred); | 
|---|
 | 654 |             areq = &treq; | 
|---|
 | 655 |         } | 
|---|
 | 656 | --  | 
|---|
 | 657 | 1.7.9.6 (Apple Git-31.1) | 
|---|
 | 658 |  | 
|---|