1. A memory system comprising: a non-volatile memory arranged in blocks, each block containing a plurality of sectors of memory cell locations; and a controller coupled to the non-volatile memory, the controller configured to permit a maximum number of obsolete blocks for each of one or more write pointers used to define physical locations for writing data received from an external device, and in response to a write operation that would result in a number of obsolete blocks exceeding the maximum number for one of the one or more write pointers, performing a block erase operation on one of a plurality of existing obsolete blocks of the one of the one or more write pointers; wherein the maximum number of obsolete blocks for the one of the one or more write pointers is two or more blocks.