diff --git a/master/fsm_slave.c b/master/fsm_slave.c index 29f20e09364e7a917e040b5692a7d3ec3d49e873..9da6c62f4d8c98b040fc1f627bdececd0adb66ff 100644 --- a/master/fsm_slave.c +++ b/master/fsm_slave.c @@ -427,8 +427,9 @@ alloc_eeprom: } if (!(slave->eeprom_data = - (uint8_t *) kmalloc(slave->eeprom_size, GFP_ATOMIC))) { - fsm->slave->error_flag = 1; + (uint8_t *) kmalloc(slave->eeprom_size, GFP_ATOMIC))) { + slave->eeprom_size = 0; + slave->error_flag = 1; fsm->state = ec_fsm_slave_state_error; EC_ERR("Failed to allocate EEPROM data on slave %i.\n", slave->ring_position);