Você está sobrescrevendo um sistema de arquivos montado. Assim que o driver do sistema de arquivos tentar ler qualquer coisa, você acabará com problemas.
Você precisa se certificar de que, assim que estiver gravando o novo firmware, nada mais deverá ler ou gravar essa partição.
O que as pessoas geralmente parecem estar fazendo para contornar esse problema é usar o gerenciador de inicialização para fazer um novo firmware. Ele geralmente reside completamente na RAM e, portanto, não precisa acessar suas partições.
EDIT : Outra maneira seria instalar outro sistema mínimo em sua segunda partição cujo único propósito é fazer com que um arquivo de imagem seja exibido na primeira partição. Quando uma atualização é devida, você só precisa copiar a imagem para o local correto, atualizar o bootloader (para inicializar a partir da segunda partição) e reiniciar. Quando a imagem estiver escrita, reinicie o carregador de inicialização e reinicie novamente.