Re: SOLVED! Re: Issues with reiser4 patch for Linux 4.12.0.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Resource was used right after its release - a kind of sleeping bug..

Edward.

On 08/18/2017 07:35 AM, Jose R Rodriguez wrote:
Your included patch worked, Edward. Thank you.

Hello.
Does the attached patch help?
Thanks,
Edward.
On 08/17/2017 02:14 AM, Jose R Rodriguez wrote:
Niltze, Ed-

I have applied your latest patch to Debian Linux kernel and packaging 12.4.6-1, itself patched with upstream differential kernel patch 4.12.6-7.

After ironing out some Debian kernel maintainer packaging code issues, i.e.,

Modifying:
debian/rules.d/tools/power/x86/turbostat/Makefile

and replacing directive:
CPPFLAGS += -DMSRHEADER='<asm/msr-index.h>' -DINTEL_FAMILY_HEADER='"$(top_srcdir)/arch/x86/include/asm/intel-family.h"'

with
CPPFLAGS += -DMSRHEADER='"$(top_srcdir)/arch/x86/include/asm/msr-index.h"' -DINTEL_FAMILY_HEADER='"$(top_srcdir)/arch/x86/include/asm/intel-family.h"'

enabled the compiler to complete build procedure where it was failing.

[]

--------------D029B91EB0C5287A303173DF
Content-Type: text/x-patch;
  name="reiser4-done-fs-info-after-exit-ctx.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
  filename="reiser4-done-fs-info-after-exit-ctx.patch"

diff --git a/init_super.c b/init_super.c
index fb37605..f45e42d 100644
--- a/init_super.c
+++ b/init_super.c
@@ -47,14 +47,10 @@ int reiser4_init_fs_info(struct super_block *super)
  void reiser4_done_fs_info(struct super_block *super)
  {
  	assert("zam-990", super->s_fs_info != NULL);
-
-	/* release per-super-block d_cursor resources */
+	/*
+	 * release per-super-block d_cursor resources
+	 */
  	reiser4_done_super_d_info(super);
-
-	/* make sure that there are not jnodes already */
-	assert("", list_empty(&get_super_private(super)->all_jnodes));
-	assert("", get_current_context()->trans->atom == NULL);
-	reiser4_check_block_counters(super);
  	kfree(super->s_fs_info);
  	super->s_fs_info = NULL;
  }
diff --git a/page_cache.c b/page_cache.c
index 099c00a..c566bf9 100644
--- a/page_cache.c
+++ b/page_cache.c
@@ -282,19 +282,16 @@ void reiser4_done_formatted_fake(struct super_block *super)
  	sinfo = get_super_private_nocheck(super);
if (sinfo->fake != NULL) {
-		inode_detach_wb(sinfo->fake);
  		iput(sinfo->fake);
  		sinfo->fake = NULL;
  	}
if (sinfo->bitmap != NULL) {
-		inode_detach_wb(sinfo->bitmap);
  		iput(sinfo->bitmap);
  		sinfo->bitmap = NULL;
  	}
if (sinfo->cc != NULL) {
-		inode_detach_wb(sinfo->cc);
  		iput(sinfo->cc);
  		sinfo->cc = NULL;
  	}
diff --git a/super_ops.c b/super_ops.c
--- a/super_ops.c
index 697580c..2222e86 100644
+++ b/super_ops.c
@@ -257,8 +257,12 @@ static void reiser4_put_super(struct super_block *super)
  	reiser4_done_ktxnmgrd(super);
  	reiser4_done_txnmgr(&sbinfo->tmgr);
- reiser4_done_fs_info(super);
+	assert("edward-1890", list_empty(&get_super_private(super)->all_jnodes));
+	assert("edward-1891", get_current_context()->trans->atom == NULL);
+	reiser4_check_block_counters(super);	
+
  	reiser4_exit_context(ctx);
+	reiser4_done_fs_info(super);
  }
/**

--------------D029B91EB0C5287A303173DF--
--

Obviously it also solved the sudden crash upon powering down and/or rebooting (hence umounting) this Debian development environment on reiser4 root filesystem, too.

Again, much appreciated Mr. Shishkin!


Best Professional Regards.


--
To unsubscribe from this list: send the line "unsubscribe reiserfs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux File System Development]     [Linux BTRFS]     [Linux NFS]     [Linux Filesystems]     [Ext4 Filesystem]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Resources]

  Powered by Linux