On 2015年05月18日 21:34, Brian Foster wrote: > On Mon, May 18, 2015 at 02:33:06PM +0800, Wang Sheng-Hui wrote: >> Hi guys, >> >> >> In maxtrres.c/max_trans_res, it calls xfs_log_calc_minimum_size to compute the >> maximum transaction reservation >> >> But for xfs_log_calc_minimum_size, it's used to calculate the >> minimum valid log size >> >> >> The naming max/minimum seems confusing. >> >> Why are they named in such way? What's the relationship between max trans res >> and minimun log size, (max trans res) <= (minimun log size)? >> >> >> Any explanations are welcomed! >> > >>From the comment in xfs_log_calc_minimum_size(): > > /* > * Two factors should be taken into account for calculating the minimum > * log space. > * 1) The fundamental limitation is that no single transaction can be > * larger than half size of the log. > * > * From mkfs.xfs, this is considered by the XFS_MIN_LOG_FACTOR > * define, which is set to 3. That means we can definitely fit > * maximally sized 2 transactions in the log. We'll use this same > * value here. > ... > */ > > So the log must be at least the size of two single transactions (it > looks like the code is conservative and uses a factor of 3). This is a > limitation on the minimum allowable log size for the fs. Transactions > are of variable size, so to determine what that means in terms of actual > size we must calculate the maximum possible (i.e., worst case) > transaction size for the particular fs geometry and then use that to > calculate the minimum total log size. Thanks, Brian. Regards, Sheng-Hui > > Brian > >> >> Thanks, >> Sheng-Hui >> >> >> _______________________________________________ >> xfs mailing list >> xfs@xxxxxxxxxxx >> http://oss.sgi.com/mailman/listinfo/xfs > > _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs