Lines Matching full:free
68 * This function runs garbage collector to make some more free space. Returns
69 * zero if a free LEB has been produced, %-EAGAIN if commit is required, and a
76 /* Make some free space by garbage-collecting dirty space */ in run_gc()
109 * make_free_space - make more free space on the file-system.
113 * is supposedly no free space. But in most cases there is some free space:
115 * needed, so shrinking the liability is one way to make free space - the
117 * o GC may turn some dark space into free space (budgeting treats dark space
119 * o commit may free some LEB, i.e., turn freeable LEBs into free LEBs.
121 * So this function tries to do the above. Returns %-EAGAIN if some free space
123 * Returns %-ENOSPC if it couldn't do more free space, and other negative error
281 * This function makes sure UBIFS has enough free LEBs for index growth and
289 * and makes sure this does not exceed the amount of free LEBs.
294 * there is free space. IOW, the index may take a lot of LEBs, but the LEBs
323 * @c->freeable_cnt are available because they contain only free and in do_budget_space()
431 * %-ENOSPC if there is no free space and other negative error codes in case of
513 * ubifs_release_budget - release budgeted free space.
615 * ubifs_reported_space - calculate reported free space.
617 * @free: amount of free space
619 * This function calculates amount of free space which will be reported to
624 * overhead, and UBIFS has to report slightly less free space to meet the above
627 * This function assumes free space is made up of uncompressed data nodes and
634 long long ubifs_reported_space(const struct ubifs_info *c, long long free) in ubifs_reported_space() argument
639 * Reported space size is @free * X, where X is UBIFS block size in ubifs_reported_space()
655 free *= factor; in ubifs_reported_space()
656 return div_u64(free, divisor); in ubifs_reported_space()
661 * ubifs_get_free_space_nolock - return amount of free space.
664 * This function calculates amount of free space to report to user-space.
668 * free flash space it has (well, because not all dirty space is reclaimable,
670 * bread user expectations about what free space is. Users seem to accustomed
671 * to assume that if the file-system reports N bytes of free space, they would
679 long long available, outstanding, free; in ubifs_get_free_space_nolock() local
686 * When reporting free space to user-space, UBIFS guarantees that it is in ubifs_get_free_space_nolock()
687 * possible to write a file of free space size. This means that for in ubifs_get_free_space_nolock()
706 free = ubifs_reported_space(c, available - outstanding); in ubifs_get_free_space_nolock()
708 free = 0; in ubifs_get_free_space_nolock()
709 return free; in ubifs_get_free_space_nolock()
713 * ubifs_get_free_space - return amount of free space.
716 * This function calculates and returns amount of free space to report to
721 long long free; in ubifs_get_free_space() local
724 free = ubifs_get_free_space_nolock(c); in ubifs_get_free_space()
727 return free; in ubifs_get_free_space()