[PLDWWW] page changed: docs:vserver

"Arkadiusz Miśkiewicz (arekm)" arekm at pld-linux.org
Mon Oct 5 14:38:26 CEST 2015


[XFS filesystem - kernel upgrade causes xfs related oops (xfs_filestream_lookup_ag)] 

--- https://www.pld-linux.org/docs/vserver?rev=1444048021
+++ https://www.pld-linux.org/docs/vserver?rev=1444048706
@@ -734,8 +734,54 @@
  </file>
  
  Vserver stopped adding such xfs xflag in 3.13 BUT your existing filesystem can still have XFS_XFLAG_BARRIER (0x00004000) set
  causing oops in newer kernels.
+ 
+ How to find out if I'm affected?
+ 
+ Modify http://oss.sgi.com/cgi-bin/gitweb.cgi?p=xfs/cmds/xfstests.git;a=blob_plain;f=src/bstat.c;hb=HEAD to show only files containing XFS_XFLAG_FILESTREAM
+ 
+ <file>
+ diff --git a/src/bstat.c b/src/bstat.c
+ index 4e22ecd..887512f 100644
+ --- a/src/bstat.c
+ +++ b/src/bstat.c
+ @@ -34,19 +34,21 @@ dotime(void *ti, char *s)
+  void
+  printbstat(xfs_bstat_t *sp)
+  {
+ -       printf("ino %lld mode %#o nlink %d uid %d gid %d rdev %#x\n",
+ -               (long long)sp->bs_ino, sp->bs_mode, sp->bs_nlink,
+ -               sp->bs_uid, sp->bs_gid, sp->bs_rdev);
+ -       printf("\tblksize %d size %lld blocks %lld xflags %#x extsize %d\n",
+ -               sp->bs_blksize, (long long)sp->bs_size, (long long)sp->bs_blocks,
+ -               sp->bs_xflags, sp->bs_extsize);
+ -       dotime(&sp->bs_atime, "atime");
+ -       dotime(&sp->bs_mtime, "mtime");
+ -       dotime(&sp->bs_ctime, "ctime");
+ -       printf( "\textents %d %d gen %d\n",
+ -               sp->bs_extents, sp->bs_aextents, sp->bs_gen);
+ -       printf( "\tDMI: event mask 0x%08x state 0x%04x\n",
+ -               sp->bs_dmevmask, sp->bs_dmstate);
+ +       if (sp->bs_xflags & XFS_XFLAG_FILESTREAM) {
+ +               printf("ino %lld mode %#o nlink %d uid %d gid %d rdev %#x\n",
+ +                               (long long)sp->bs_ino, sp->bs_mode, sp->bs_nlink,
+ +                               sp->bs_uid, sp->bs_gid, sp->bs_rdev);
+ +               printf("\tblksize %d size %lld blocks %lld xflags %#x extsize %d\n",
+ +                               sp->bs_blksize, (long long)sp->bs_size, (long long)sp->bs_blocks,
+ +                               sp->bs_xflags, sp->bs_extsize);
+ +               dotime(&sp->bs_atime, "atime");
+ +               dotime(&sp->bs_mtime, "mtime");
+ +               dotime(&sp->bs_ctime, "ctime");
+ +               printf( "\textents %d %d gen %d\n",
+ +                               sp->bs_extents, sp->bs_aextents, sp->bs_gen);
+ +               printf( "\tDMI: event mask 0x%08x state 0x%04x\n",
+ +                               sp->bs_dmevmask, sp->bs_dmstate);
+ +       }
+  }
+ </file>
+ 
+ and then run it with mounted directory of each filesystem (bstat /; bstat /home etc). It will print "ino ..." information for filestream files.
  
  ===== Debian or Ubuntu guest installation =====
  Install ''binutils'' package and optionally ''debootstrap'' (vserver will install it on it's own if you don't install it yourself): 
  


Diff URL:
  https://www.pld-linux.org/docs/vserver?do=diff&r1=1444048021&r2=1444048706
-- 
This mail was generated by DokuWiki at
https://www.pld-linux.org/


More information about the pld-cvs-commit mailing list