int (*sb_mount)(const char *dev_name, const struct path *path,
                        const char *type, unsigned long flags, void *data);
        int (*sb_umount)(struct vfsmount *mnt, int flags);
-       int (*sb_pivotroot)(struct path *old_path, struct path *new_path);
+       int (*sb_pivotroot)(const struct path *old_path, const struct path *new_path);
        int (*sb_set_mnt_opts)(struct super_block *sb,
                                struct security_mnt_opts *opts,
                                unsigned long kern_flags,
 
 int security_sb_mount(const char *dev_name, const struct path *path,
                      const char *type, unsigned long flags, void *data);
 int security_sb_umount(struct vfsmount *mnt, int flags);
-int security_sb_pivotroot(struct path *old_path, struct path *new_path);
+int security_sb_pivotroot(const struct path *old_path, const struct path *new_path);
 int security_sb_set_mnt_opts(struct super_block *sb,
                                struct security_mnt_opts *opts,
                                unsigned long kern_flags,
        return 0;
 }
 
-static inline int security_sb_pivotroot(struct path *old_path,
-                                       struct path *new_path)
+static inline int security_sb_pivotroot(const struct path *old_path,
+                                       const struct path *new_path)
 {
        return 0;
 }
 
        return call_int_hook(sb_umount, 0, mnt, flags);
 }
 
-int security_sb_pivotroot(struct path *old_path, struct path *new_path)
+int security_sb_pivotroot(const struct path *old_path, const struct path *new_path)
 {
        return call_int_hook(sb_pivotroot, 0, old_path, new_path);
 }
 
  *
  * Returns 0 on success, negative value otherwise.
  */
-static int tomoyo_sb_pivotroot(struct path *old_path, struct path *new_path)
+static int tomoyo_sb_pivotroot(const struct path *old_path, const struct path *new_path)
 {
        return tomoyo_path2_perm(TOMOYO_TYPE_PIVOT_ROOT, new_path, old_path);
 }