Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-05 Thread jens thys
Le jeu. 5 avr. 2018 à 07:47, Bruce Dubbs  a écrit :

> 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
>    __u16e_value_offs;/* offset in disk block of value */
>    __u32e_value_inum;/* inode in which the value is
>  stored */
>    __u32e_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
>
Nice job. Thanks.
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread Bruce Dubbs

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


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread Bruce Dubbs

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

  -- Bruce

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


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread Ken Moffat
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
> 
>   -- Bruce

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.

ĸen
-- 
Before the universe began, there was a sound. It went: "One, two, ONE,
two, three, four" [...] The cataclysmic power chord that followed was
the creation of time and space and matter and it does Not Fade Away.
 - wiki.lspace.org/mediawiki/Music_With_Rocks_In


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


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread Bruce Dubbs

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 _u32
     __u32    h_magic;    /* magic number for identification */
     __u32    h_refcount;    /* reference count */
     __u32    h_blocks;    /* number of disk blocks used */
     __u32    h_hash;        /* hash value of all attributes */
     __u32    h_checksum;    /* crc32c(uuid+id+xattrs) */
     __u32    h_reserved[3];    /* zero right now */
     __u32    e_value_inum;    /* inode in which the value is stored */
     __u32    e_value_size;    /* size of attribute value */
     __u32    e_hash;        /* hash value of name and value */

  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

  -- Bruce

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


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread jens thys
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 _u32
__u32h_magic;/* magic number for identification */
__u32h_refcount;/* reference count */
__u32h_blocks;/* number of disk blocks used */
__u32h_hash;/* hash value of all attributes */
__u32h_checksum;/* crc32c(uuid+id+xattrs) */
__u32h_reserved[3];/* zero right now */
__u32e_value_inum;/* inode in which the value is stored */
__u32e_value_size;/* size of attribute value */
__u32e_hash;/* hash value of name and value */

 cat /usr/include/ext2fs/ext2_ext_attr.h | grep e_value
__u16e_value_offs;/* offset in disk block of value */
__u32e_value_inum;/* inode in which the value is stored */
__u32e_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 ?







Le jeu. 5 avr. 2018 à 00:14, Bruce Dubbs  a écrit :

> On 04/04/2018 04:42 PM, jens thys wrote:
> > Hi,
> >
> > Compilation error during make after std ./configure values dictated in
> > the blfs book.
> >
> > convert/source-ext2.c:425:13: error: ‘struct ext2_ext_attr_entry’ has no
> > member named ‘e_value_block’; did you mean ‘e_value_offs’?
> >if (entry->e_value_block != 0 || value_size > size ||
> >   ^
> >   e_value_offs
> > make: *** [Makefile:282: convert/source-ext2.o] Error 1
> >
> >
> > 1- most correct solution:
> > Change the line 425 column 13 value of the source file
> > convert/source-ext2.c from  e_value_block to e_value_offs. In this case
> > compilation runs
> > off correctly and the final btrfs-convert function is available in the
> > system.
> >
> > 2- otherwise add in the .configure step the option  -- disable-convert.
> > In this case obviously the btrfs-convert function is absent .
>
>
> struct ext2_ext_attr_entry is defined in
> /usr/include/ext2fs/ext2_ext_attr.h
>
> My version of that does have
>
>   __u32 e_value_block; /* disk block attribute is stored on (n/i) */
>
> what version of e2fsprogs do you have?  It should be 1.43.9.
>
> Also, using e_value_offs may satisfy the compiler, but does not do the
> right thing for the logic of the program.
>
>-- Bruce
> --
> http://lists.linuxfromscratch.org/listinfo/blfs-support
> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
> Unsubscribe: See the above information page
>
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page


Re: [blfs-support] btrfs-progs-4.15.1 compiling error : 2 solutions available

2018-04-04 Thread Bruce Dubbs

On 04/04/2018 04:42 PM, jens thys wrote:

Hi,

Compilation error during make after std ./configure values dictated in 
the blfs book.


convert/source-ext2.c:425:13: error: ‘struct ext2_ext_attr_entry’ has no 
member named ‘e_value_block’; did you mean ‘e_value_offs’?

   if (entry->e_value_block != 0 || value_size > size ||
  ^
  e_value_offs
make: *** [Makefile:282: convert/source-ext2.o] Error 1


1- most correct solution:
Change the line 425 column 13 value of the source file  
convert/source-ext2.c from  e_value_block to e_value_offs. In this case 
compilation runs
off correctly and the final btrfs-convert function is available in the 
system.


2- otherwise add in the .configure step the option  -- disable-convert. 
In this case obviously the btrfs-convert function is absent .



struct ext2_ext_attr_entry is defined in /usr/include/ext2fs/ext2_ext_attr.h

My version of that does have

 __u32 e_value_block; /* disk block attribute is stored on (n/i) */

what version of e2fsprogs do you have?  It should be 1.43.9.

Also, using e_value_offs may satisfy the compiler, but does not do the 
right thing for the logic of the program.


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