bug-coreutils
[Top][All Lists]
Advanced

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

Re: ia64 GNU/Linux pwd-long test failure in CVS coreutils


From: Jim Meyering
Subject: Re: ia64 GNU/Linux pwd-long test failure in CVS coreutils
Date: Sun, 18 Jun 2006 19:31:19 +0200

address@hidden (Bob Proulx) wrote:
> Done.  It "works".

Thanks for the quick test.

>> I expect it to abort and leave behind the deep tree.
>> If that's what it does, then I'll change all exit calls to
>> always exit 0, and just let the abort trigger the test failure.
>
> Nope.  Sitting in /tmp/rwp I run the program and the desired_depth is
> computed to be 1091.
>
>>   initial_cwd_len = strlen (cwd);
>>   desired_depth = ((buf_len - 1 - initial_cwd_len) / (1 + strlen 
>> (dir_name)));
>
>   (gdb) p initial_cwd_len
>   $4 = 8
>   (gdb) p desired_depth
>   $5 = 1091
>
>>   for (d = 0; d < desired_depth; d++)
>>     {
>>       if (mkdir (dir_name, S_IRWXU) < 0 || chdir (dir_name) < 0)
>>      {
>>        fail = 3; /* Unable to construct deep hierarchy.  */
>>        break;
>>      }
>>     }
>>
>>   cwd = getcwd (buf, buf_len);
>
>   (gdb) p cwd
>   $6 = 0x6000000000004010 
> "/tmp/rwp/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B"...
>
>   (gdb) p d
>   $7 = 1091

I should have created a directory whose abs. name length
is a little *larger* than 16K, not just smaller.

Does it provoke the failed assertion if you change this line

  size_t buf_len = 16 * 1024;

to e.g., this:

  size_t buf_len = 20 * 1024;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]