[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