[linux-lvm] Re: Why can't I extend a LV after many times extends?

lepton lepton at mail.goldenhope.com.cn
Wed Mar 3 05:09:01 UTC 2004


Another problem after I change the buf size

1. After some lvextend operations.. when my lv size is about 48G

   my vg is lost suddently...

2. I think perhaps it has some relation about the default size
mempool size of "10*1024" is not big enough, I changed it to "200*1024"

      (lib/config/config.c line 88)

3. Now when I lvextend, it complains :

      VG amd64 metadata too large for circular buffer

      (lib/format_text/format_text.c line 363)

Any advice?

On Wed, Mar 03, 2004 at 03:52:21PM +0800, 吴涛 wrote:
> Package: lvm2
> Version: 2.00.08-4
> 
> Ok , now I found the problem.
> 
> There is a limit in code of lvm2 tools.
> Author has seen it as a problem... but no one has fixed it yet.
> 
> 
> In lib/format_text/format-text.c ...
> 
> around line 309
> 
>   /* FIXME Essential fix! Make dynamic (realloc? pool?) */
>   char buf[65536];
>   int found = 0;
> 
> The buf size of 65536 is too small for me...
> 
> I change it to 655360 then everyting is ok.
> 
> The following is my quick patch, it can make things a little better.
> 
> 
> diff -urN lvm2-2.00.08/lib/format_text/format-text.c
> lvm2-2.00.08-new/lib/format_text/format-text.c
> --- lvm2-2.00.08/lib/format_text/format-text.c  2004-03-03
> 15:29:47.190121864 +0800
> +++ lvm2-2.00.08-new/lib/format_text/format-text.c      2004-03-03
> 15:15:18.720149368 +0800
> @@ -306,7 +306,7 @@
>         uint32_t new_wrap = 0, old_wrap = 0;
> 
>         /* FIXME Essential fix! Make dynamic (realloc? pool?) */
> -       char buf[65536];
> +       char buf[655360];
>         int found = 0;
> 
>         /* Ignore any mda on a PV outside the VG. vgsplit relies on this */
> 
> On Tue, Mar 02, 2004 at 11:34:51PM +0800, lepton wrote:




More information about the linux-lvm mailing list