no files can be opened in a C program

Abhijit Pawar apawar.linux at gmail.com
Tue Jul 26 00:29:19 EDT 2011


Hi Dave,
On 07/25/2011 09:20 PM, Dave Hylands wrote:
> Hi Abhijit,
>
> On Mon, Jul 25, 2011 at 6:35 AM, Abhijit Pawar<apawar.linux at gmail.com>  wrote:
>> On 07/25/2011 05:29 PM, Naveen Kumar wrote:
>>
>> You can use command ulimit -a, there you can check the limit for a process.
>>
>> Thanks,
>> Naveen
>>
>> Ulimit gives 1024 as open file limit. In struct task_struct it has a member
>> called struct files_struct *files;
>>
>> I tried checking for this member and the limit however I am  not able to
>> decide correctly why the limit is 1024.
>>   Also, is there any distinction between 32 bit and 64 bit systems for this
>> limit?
> My 64-bit system reports 1024 as well.
>
> I have no troubles compiling kernels.
>
Thanks. Yes, on my 64 bit Fedora 15 I get same value as yours.

What I am interested in is knowing why the limit is on 1024 File 
Descriptors? That means 1024 Inodes. AFAIK there isnt anything written 
in filesystem code which will put this limit of 1024 inodes for a process.
This means its very specific to the process.
Unfortunately I am know having details on the process front. Is there 
anything which you or anyone aware in process area because of which this 
limit is there?

Thanks again.

Regards,
Abhijit Pawar.



More information about the Kernelnewbies mailing list