The purpose of yaffs_hold_space() is to support the write_begin VFS method.
write_begin asks the file system to commit enough space to do the actual write in write_end.
Strictly speaking this should really be handled with counter of committed space that is incremented on every write_begin and decremented on every write_end.
However, it is workable to just not expect there to be more than n writes in progress at a time. n=20 seems rather conservative.