On 04/05/2018 12:31 AM, Bruce Dubbs wrote:
On 04/04/2018 07:20 PM, Ken Moffat wrote:
On Wed, Apr 04, 2018 at 06:17:13PM -0500, Bruce Dubbs wrote:
On 04/04/2018 05:55 PM, jens thys wrote:
Hi Bruce,
Thanks for the quick reply. We are almost of the time working on devel
LFS/BLFS version

Here are the elements:
e2fsprogs version 1.44.0

   cat /usr/include/ext2fs/ext2_ext_attr.h | grep e_value
      __u16    e_value_offs;    /* offset in disk block of value */
      __u32    e_value_inum;    /* inode in which the value is stored */
      __u32    e_value_size;    /* size of attribute value */

i don' t have the file you mentioned __32 e-value_block.
Something wrong with my e2fsprogs version? Should i upgrade to the
1.44.1 version which came in the change log the 23/03/2018 or is it
wiser to stay on the stable lfs 1.43.9 ?

Please do not top post.

I do not know why you are having the problem.

struct ext2_ext_attr_entry {
    __u8  e_name_len; /* length of name */
    __u8  e_name_index;  /* attribute name index */
    __u16 e_value_offs;  /* offset in disk block of value */
    __u32 e_value_block; /* disk block attribute is stored on (n/i) */
    __u32 e_value_size;  /* size of attribute value */
    __u32 e_hash;     /* hash value of name and value */
#if 0
    char  e_name[0];  /* attribute name */
#endif
};

That is from EXT2FS Library version 1.43.8, 1-Jan-2018

Between 1.43.9 and 1.44.1, e_value_block was replaced by
e_value_inum in that structure!

Possibly, s/block/inum/ in that field of btrfs-progs - but probably
best to talk to btrfs upstream.

Good catch ken.  We can add a pretty simple sed to change  e_value_block to e_value_inum, but I raised an issue with btrfs.  Lets see what they do in the next couple of days:

https://github.com/kdave/btrfs-progs/issues/121

Got an immediate answer.

-  if (entry->e_value_block != 0 || value_size > size ||
-     entry->e_value_offs + value_size > size)
+  if (value_size > size || entry->e_value_offs + value_size > size)

So they will just remove 'entry->e_value_block != 0 ||'

For now, use

sed -i '/e_value_block/s/entry->e_value_block != 0 ||//' \
  convert/source-ext2.c

https://github.com/kdave/btrfs-progs/commit/92ffad47b5c78ca119e798505e20f1b5cf7b7dd8

 -- Bruce
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to