Jernej Simončič | 22 Aug 21:33 2015
X-Face

jfs_fsck segfaults

My home server crashed yesterday overnight, and when I rebooted it in
the morning, fsck segfaulted when checking my /var partition. My
system is Gentoo Linux ~amd64, jfsutils version 1.1.15, kernel 4.0.7.

Since I wanted the machine back and running as soon as possible, I
mounted /var read-only, copied off whatever I could, and formatted the
partition again, but I saved an image of the partition before doing
that. Here's the jfs_fsck output:

bq

--

-- 
< Jernej Simončič ><><><><><><><><><><><>< http://eternallybored.org/ >

           Because 10 billion years' time is so fragile, so ephemeral...
it arouses such a bittersweet, almost heartbreaking fondness.

------------------------------------------------------------------------------
_______________________________________________
Jfs-discussion mailing list
Jfs-discussion <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jfs-discussion
Daniel Cegiełka | 3 Aug 11:42 2015
Picon

jfsutils: development status and license

Hi,

It seems that jfsutils is not actively developed. The last version was
published in 2011. Is this package will be further developed?

I also have two questions relating to license.

I want to build support for JFS in lua language. This will allow to
interactively work at a low level with JFS (eg. better debugging and
testing). The problem is that lua is released under the MIT license,
and jfsutils under the GPL. Is it possible to write such tool without
breaking the GPL. I'm afraid that GPL will in this case too
restrictive.

I would also build basic support for JFS (mkfs.jsf and fsck.jfs) in
the toybox (http://www.landley.net/toybox/). I am afraid that such
support for JFS can be very difficult to implement, because toybox is
published under the BSD license. Is it necessary to rewrite the whole
JFS functionality from scratch, so as not to violate the GPL?

Is it possible to publish jfsutils on a more liberal license (MIT,
BSD)? Currently, JFS can not compete with XFS, and without good
support for this filesystem JFS will become increasingly marginalized.

Best regards,
Daniel

------------------------------------------------------------------------------
Dave Kleikamp | 16 Jul 15:46 2015
Picon

[GIT PULL] jfs changes for 4.2-rc3

The following changes since commit c65b99f046843d2455aa231747b5a07a999a9f3d:

  Linux 4.1-rc6 (2015-05-31 19:01:07 -0700)

are available in the git repository at:

  git://github.com/kleikamp/linux-shaggy.git tags/jfs-4.2

for you to fetch changes up to 26456955719b79cc4a011b18221aa68f599f6b6c:

  jfs: clean up jfs_rename and fix out of order unlock (2015-07-15 14:11:30 -0500)

----------------------------------------------------------------
A couple trivial fixes and an error path fix

----------------------------------------------------------------
Colin Ian King (1):
      jfs: fix indentation on if statement

Dave Kleikamp (1):
      jfs: clean up jfs_rename and fix out of order unlock

Nan Jia (1):
      jfs: removed a prohibited space after opening parenthesis

 fs/jfs/file.c  |  2 +-
 fs/jfs/inode.c |  4 ++--
 fs/jfs/namei.c | 27 +++++++++++++--------------
 3 files changed, 16 insertions(+), 17 deletions(-)

(Continue reading)

Jan Kara | 15 Jul 14:42 2015

[PATCH 0/6] quota: Propagate errors when creating quota entry

  Hello,

  this patch set makes quota code report errors when quota entry creation fails (upto
now such errors were silently ignored). Filesystems can then properly handle the errors
and report them to userspace. Patch set also includes patches to all filesystems to
properly handle the errors. Review by respective fs maintainers is welcome.

If noone objects, I will queue these patches in my tree for the next merge window.

									Honza

------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
Colin King | 4 Jun 18:57 2015

[PATCH] jfs: fix indentation on if statement

From: Colin Ian King <colin.king <at> canonical.com>

The if statement and closing brace are indented by 1
extra space, so remove this extra spacing.  Cosmetic
change only.

Signed-off-by: Colin Ian King <colin.king <at> canonical.com>
---
 fs/jfs/inode.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/jfs/inode.c b/fs/jfs/inode.c
index 070dc4b..28d69fa 100644
--- a/fs/jfs/inode.c
+++ b/fs/jfs/inode.c
 <at>  <at>  -133,11 +133,11  <at>  <at>  int jfs_write_inode(struct inode *inode, struct writeback_control *wbc)
 	 * It has been committed since the last change, but was still
 	 * on the dirty inode list.
 	 */
-	 if (!test_cflag(COMMIT_Dirty, inode)) {
+	if (!test_cflag(COMMIT_Dirty, inode)) {
 		/* Make sure committed changes hit the disk */
 		jfs_flush_journal(JFS_SBI(inode->i_sb)->log, wait);
 		return 0;
-	 }
+	}

 	if (jfs_commit_inode(inode, wait)) {
 		jfs_err("jfs_write_inode: jfs_commit_inode failed!");
--

-- 
(Continue reading)

Nan Jia | 31 May 11:53 2015
Picon

[PATCH] fs: jfs: file: removed a prohibited space after opening parenthesis

Fixed a coding style issue.

Signed-off-by: Nan Jia <jiananmail <at> gmail.com>
---
 fs/jfs/file.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/jfs/file.c b/fs/jfs/file.c
index e98d39d..b9dc23c 100644
--- a/fs/jfs/file.c
+++ b/fs/jfs/file.c
 <at>  <at>  -76,7 +76,7  <at>  <at>  static int jfs_open(struct inode *inode, struct file *file)
 		if (ji->active_ag == -1) {
 			struct jfs_sb_info *jfs_sb = JFS_SBI(inode->i_sb);
 			ji->active_ag = BLKTOAG(addressPXD(&ji->ixpxd), jfs_sb);
-			atomic_inc( &jfs_sb->bmap->db_active[ji->active_ag]);
+			atomic_inc(&jfs_sb->bmap->db_active[ji->active_ag]);
 		}
 		spin_unlock_irq(&ji->ag_lock);
 	}
--

-- 
2.4.2

------------------------------------------------------------------------------
Felipe Monteiro de Carvalho | 22 Apr 13:09 2015
Picon

Strange dir inode

Hello,

I've been working hard to get jfs read support in my software, and I
try as hard as possible to figure out myself without asking question,
but there is a very strange point where I got stuck =( Its a dir
inode, which has 10.000 files inside it.

inode nr 12291 and offset 0x600460 presents us the following basic
inode information:

http://magnifier.sourceforge.net/tmp/jfs_inode_10k_files.png

di_fileset $10
di_number $303
di_gen $2A
di_size = $14000
di_nblocks = $140
di_nlink = 2
di_uid = 0
di_gid = 0
di_mode = $200041FF
di_next_index = $B0100
di_acltype = 0

dtroot_t
DASD = zeroes
flag = 0x85 = DXD_INDEX | BT_INTERNAL | BT_ROOT
nextindex = 1
freecnt: int8 = 7
freelistt: int8 = 2
(Continue reading)

Felipe Monteiro de Carvalho | 15 Apr 11:27 2015
Picon

Cannot Find the Root Inode of a JFS Disk

Hello,

I am implementing a software to read JFS partitions in Windows/Mac OS
X. Only reading, no writing involved.

It works already for many partitions, but someone sent me a disk, and
this is something wrong with my interpretation of the JFS
documentation or something like that, because for this particular
disk, it doesn't work =(

I read in this order:

1> Aggregate Map -> Always from offset A000

2> Fileset zero inode -> Always from offset D000

Here I read _xtroot: xtpage_t; in this inode to obtain the next
address. See the screenshot:

http://magnifier.sourceforge.net/tmp/jfs_fileset_zero_inode.png

And the data that I read here (data in the comments):

xtpage_t->xtpage_t = packed record
xtpage_t->case Integer of 0: (
// struct xtheader {
xtpage_t->next: le64; //  0
xtpage_t->prev: le64; //  0
xtpage_t->flag: Byte; //  $85
xtpage_t->rsrvd1: Byte; //  0
(Continue reading)

Dave Kleikamp | 14 Apr 17:46 2015
Picon

[GIT PULL] jfs changes for v4.1

Not much this time. Just a one-liner.

The following changes since commit 09d35919b06e8508b51ee8a643a67b56f7bea0dd:

  Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
(2015-03-12 09:50:45 -0700)

are available in the git repository at:

  git://github.com/kleikamp/linux-shaggy.git tags/jfs-4.1

for you to fetch changes up to 7d2ac45611b072a24e5014a56a65e6be31c1f884:

  jfs: %pf is only for function pointers (2015-03-12 12:32:19 -0500)

----------------------------------------------------------------
Just a one-liner format fix

----------------------------------------------------------------
Scott Wood (1):
      jfs: %pf is only for function pointers

 fs/jfs/super.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
(Continue reading)

Andrey Ryabinin | 3 Apr 16:47 2015

[PATCH] mm, mempool: kasan: poison mempool elements

Mempools keep allocated objects in reserved for situations
when ordinary allocation may not be possible to satisfy.
These objects shouldn't be accessed before they leave
the pool.
This patch poison elements when get into the pool
and unpoison when they leave it. This will let KASan
to detect use-after-free of mempool's elements.

Signed-off-by: Andrey Ryabinin <a.ryabinin <at> samsung.com>
---
 include/linux/kasan.h |  2 ++
 mm/kasan/kasan.c      | 13 +++++++++++++
 mm/mempool.c          | 23 +++++++++++++++++++++++
 3 files changed, 38 insertions(+)

diff --git a/include/linux/kasan.h b/include/linux/kasan.h
index 5bb0744..5486d77 100644
--- a/include/linux/kasan.h
+++ b/include/linux/kasan.h
 <at>  <at>  -44,6 +44,7  <at>  <at>  void kasan_poison_object_data(struct kmem_cache *cache, void *object);

 void kasan_kmalloc_large(const void *ptr, size_t size);
 void kasan_kfree_large(const void *ptr);
+void kasan_kfree(void *ptr);
 void kasan_kmalloc(struct kmem_cache *s, const void *object, size_t size);
 void kasan_krealloc(const void *object, size_t new_size);

 <at>  <at>  -71,6 +72,7  <at>  <at>  static inline void kasan_poison_object_data(struct kmem_cache *cache,

 static inline void kasan_kmalloc_large(void *ptr, size_t size) {}
(Continue reading)

David Rientjes | 25 Mar 00:08 2015
Picon

[patch 1/4] fs, jfs: remove slab object constructor

Mempools based on slab caches with object constructors are risky because
element allocation can happen either from the slab cache itself, meaning
the constructor is properly called before returning, or from the mempool
reserve pool, meaning the constructor is not called before returning,
depending on the allocation context.

For this reason, we should disallow creating mempools based on slab
caches that have object constructors.  Callers of mempool_alloc() will
be responsible for properly initializing the returned element.

Then, it doesn't matter if the element came from the slab cache or the
mempool reserved pool.

The only occurrence of a mempool being based on a slab cache with an
object constructor in the tree is in fs/jfs/jfs_metapage.c.  Remove it
and properly initialize the element in alloc_metapage().

At the same time, META_free is never used, so remove it as well.

Signed-off-by: David Rientjes <rientjes <at> google.com>
---
 fs/jfs/jfs_metapage.c | 31 ++++++++++++-------------------
 fs/jfs/jfs_metapage.h |  1 -
 2 files changed, 12 insertions(+), 20 deletions(-)

diff --git a/fs/jfs/jfs_metapage.c b/fs/jfs/jfs_metapage.c
--- a/fs/jfs/jfs_metapage.c
+++ b/fs/jfs/jfs_metapage.c
 <at>  <at>  -183,30 +183,23  <at>  <at>  static inline void remove_metapage(struct page *page, struct metapage *mp)

(Continue reading)


Gmane