0, false, true);
        err = ceph_osdc_start_request(&fsc->client->osdc, rd_req, false);
  
-       wr_req->r_mtime = ci->vfs_inode.i_mtime;
+       wr_req->r_mtime = timespec64_to_timespec(ci->vfs_inode.i_mtime);
 -      wr_req->r_abort_on_full = true;
        err2 = ceph_osdc_start_request(&fsc->client->osdc, wr_req, false);
  
        if (!err)
 
  
        inode->i_ino = ino;
        inode->i_blocks = 0;
-       inode->i_mtime = inode->i_atime = inode->i_ctime =
-                       F2FS_I(inode)->i_crtime = current_time(inode);
+       inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
+       F2FS_I(inode)->i_crtime = timespec64_to_timespec(inode->i_mtime);
        inode->i_generation = sbi->s_next_generation++;
  
 +      if (S_ISDIR(inode->i_mode))
 +              F2FS_I(inode)->i_current_depth = 1;
 +
        err = insert_inode_locked(inode);
        if (err) {
                err = -EINVAL;
 
  ssize_t ovl_listxattr(struct dentry *dentry, char *list, size_t size);
  struct posix_acl *ovl_get_acl(struct inode *inode, int type);
  int ovl_open_maybe_copy_up(struct dentry *dentry, unsigned int file_flags);
- int ovl_update_time(struct inode *inode, struct timespec *ts, int flags);
+ int ovl_update_time(struct inode *inode, struct timespec64 *ts, int flags);
  bool ovl_is_private_xattr(const char *name);
  
 +struct ovl_inode_params {
 +      struct inode *newinode;
 +      struct dentry *upperdentry;
 +      struct ovl_path *lowerpath;
 +      struct dentry *index;
 +      unsigned int numlower;
 +};
  struct inode *ovl_new_inode(struct super_block *sb, umode_t mode, dev_t rdev);
  struct inode *ovl_lookup_inode(struct super_block *sb, struct dentry *real,
                               bool is_upper);
 
  
        pvoldesc = (struct primaryVolDesc *)bh->b_data;
  
-       if (udf_disk_stamp_to_time(&UDF_SB(sb)->s_record_time,
-                             pvoldesc->recordingDateAndTime)) {
+       udf_disk_stamp_to_time(&UDF_SB(sb)->s_record_time,
+                             pvoldesc->recordingDateAndTime);
  #ifdef UDFFS_DEBUG
-               struct timestamp *ts = &pvoldesc->recordingDateAndTime;
-               udf_debug("recording time %04u/%02u/%02u %02u:%02u (%x)\n",
-                         le16_to_cpu(ts->year), ts->month, ts->day, ts->hour,
-                         ts->minute, le16_to_cpu(ts->typeAndTimezone));
+       ts = &pvoldesc->recordingDateAndTime;
+       udf_debug("recording time %04u/%02u/%02u %02u:%02u (%x)\n",
+                 le16_to_cpu(ts->year), ts->month, ts->day, ts->hour,
+                 ts->minute, le16_to_cpu(ts->typeAndTimezone));
  #endif
-       }
+ 
  
 -      ret = udf_dstrCS0toUTF8(outstr, 31, pvoldesc->volIdent, 32);
 +      ret = udf_dstrCS0toChar(sb, outstr, 31, pvoldesc->volIdent, 32);
        if (ret < 0)
                goto out_bh;