Quotaon livelock

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

 



Hi lkml,

Enabling FS quotas can take up to several minutes to finish and
depends on other users disk activity. This makes it a livelock (as it
can be finished anyway).

The problem described at:
http://bugzilla.kernel.org/show_bug.cgi?id=9520

Yes, if we need to enable quotas once in the system start - no problem.
But if we have to disable/enable it periodically - this become a nightmare.

Please don't advice to use edquota or so (quotactl(Q_SETQUOTA...) based things).
What if it's really needed to use quotactl(Q_QUOTAOFF...)/quotactl(Q_QUOTAON...)

The problem is at fs/dquot.c:add_dquot_ref()
It's restarting to loop over the inodes list once it inits quota on an inode.
And this happens over and over if something is modifying inodes list
during quotas enabling.

It looks like the action must take some time depending on FS size, but
not on other users
disk activity...
Any advices how the algorithm at fs/dquot.c:add_dquot_ref() can be enhanced?

Thanks
Nick
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux