[BACK]Return to ffs_vfsops.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / ufs / ffs

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/ufs/ffs/ffs_vfsops.c between version 1.339 and 1.339.2.5

version 1.339, 2016/06/19 22:41:31 version 1.339.2.5, 2017/01/07 08:56:53
Line 409  ffs_mount(struct mount *mp, const char *
Line 409  ffs_mount(struct mount *mp, const char *
         struct fs *fs;          struct fs *fs;
         int error = 0, flags, update;          int error = 0, flags, update;
         mode_t accessmode;          mode_t accessmode;
           const struct bdevsw *bdev = NULL;
   
         if (args == NULL) {          if (args == NULL) {
                 DPRINTF("NULL args");                  DPRINTF("NULL args");
Line 451  ffs_mount(struct mount *mp, const char *
Line 452  ffs_mount(struct mount *mp, const char *
                         if (devvp->v_type != VBLK) {                          if (devvp->v_type != VBLK) {
                                 DPRINTF("non block device %d", devvp->v_type);                                  DPRINTF("non block device %d", devvp->v_type);
                                 error = ENOTBLK;                                  error = ENOTBLK;
                         } else if (bdevsw_lookup(devvp->v_rdev) == NULL) {                          } else {
                                 DPRINTF("can't find block device 0x%jx",                                  bdev = bdevsw_lookup_acquire(devvp->v_rdev);
                                     devvp->v_rdev);                                  if (bdev == NULL) {
                                 error = ENXIO;                                          DPRINTF("can't find block device 0x%jx",
                                               devvp->v_rdev);
                                           error = ENXIO;
                                   }
                         }                          }
                 } else {                  } else {
                         /*                          /*
Line 512  ffs_mount(struct mount *mp, const char *
Line 516  ffs_mount(struct mount *mp, const char *
                 VOP_UNLOCK(devvp);                  VOP_UNLOCK(devvp);
         }          }
   
         if (error) {          if (error)
                 vrele(devvp);                  goto fail;
                 return (error);  
         }  
   
 #ifdef WAPBL  #ifdef WAPBL
         /* WAPBL can only be enabled on a r/w mount. */          /* WAPBL can only be enabled on a r/w mount. */
Line 718  ffs_mount(struct mount *mp, const char *
Line 720  ffs_mount(struct mount *mp, const char *
                 mp->mnt_flag &= ~MNT_SOFTDEP;                  mp->mnt_flag &= ~MNT_SOFTDEP;
         }          }
   
           if (bdev != NULL)
                   bdevsw_release(bdev);
         return (error);          return (error);
   
 fail:  fail:
           if (bdev != NULL)
                   bdevsw_release(bdev);
         vrele(devvp);          vrele(devvp);
         return (error);          return (error);
 }  }
Line 1605  ffs_oldfscompat_read(struct fs *fs, stru
Line 1611  ffs_oldfscompat_read(struct fs *fs, stru
                 fs->fs_old_trackskew = 0;                  fs->fs_old_trackskew = 0;
         }          }
   
         if (fs->fs_old_inodefmt < FS_44INODEFMT) {          if (fs->fs_magic == FS_UFS1_MAGIC &&
               fs->fs_old_inodefmt < FS_44INODEFMT) {
                 fs->fs_maxfilesize = (u_quad_t) 1LL << 39;                  fs->fs_maxfilesize = (u_quad_t) 1LL << 39;
                 fs->fs_qbmask = ~fs->fs_bmask;                  fs->fs_qbmask = ~fs->fs_bmask;
                 fs->fs_qfmask = ~fs->fs_fmask;                  fs->fs_qfmask = ~fs->fs_fmask;
Line 1916  ffs_sync(struct mount *mp, int waitfor, 
Line 1923  ffs_sync(struct mount *mp, int waitfor, 
         ctx.is_suspending = is_suspending;          ctx.is_suspending = is_suspending;
         while ((vp = vfs_vnode_iterator_next(marker, ffs_sync_selector, &ctx)))          while ((vp = vfs_vnode_iterator_next(marker, ffs_sync_selector, &ctx)))
         {          {
                 error = vn_lock(vp, LK_EXCLUSIVE);                  error = vn_lock(vp,
                       LK_EXCLUSIVE | (waitfor == MNT_LAZY ? LK_NOWAIT : 0));
                 if (error) {                  if (error) {
                         vrele(vp);                          vrele(vp);
                         continue;                          continue;
Line 2092  ffs_loadvnode(struct mount *mp, struct v
Line 2100  ffs_loadvnode(struct mount *mp, struct v
          * fix until fsck has been changed to do the update.           * fix until fsck has been changed to do the update.
          */           */
   
         if (fs->fs_old_inodefmt < FS_44INODEFMT) {              /* XXX */          if (fs->fs_magic == FS_UFS1_MAGIC &&                    /* XXX */
               fs->fs_old_inodefmt < FS_44INODEFMT) {              /* XXX */
                 ip->i_uid = ip->i_ffs1_ouid;                    /* XXX */                  ip->i_uid = ip->i_ffs1_ouid;                    /* XXX */
                 ip->i_gid = ip->i_ffs1_ogid;                    /* XXX */                  ip->i_gid = ip->i_ffs1_ogid;                    /* XXX */
         }                                                       /* XXX */          }                                                       /* XXX */
Line 2349  ffs_cgupdate(struct ufsmount *mp, int wa
Line 2358  ffs_cgupdate(struct ufsmount *mp, int wa
         void *space;          void *space;
         int i, size, error = 0, allerror = 0;          int i, size, error = 0, allerror = 0;
   
           UFS_WAPBL_JLOCK_ASSERT(mp);
   
         allerror = ffs_sbupdate(mp, waitfor);          allerror = ffs_sbupdate(mp, waitfor);
         blks = howmany(fs->fs_cssize, fs->fs_fsize);          blks = howmany(fs->fs_cssize, fs->fs_fsize);
         space = fs->fs_csp;          space = fs->fs_csp;

Legend:
Removed from v.1.339  
changed lines
  Added in v.1.339.2.5

CVSweb <webmaster@jp.NetBSD.org>