On Tue, 2012-05-15 at 09:53 +0200, Joel Reardon wrote: > I want the caller of erase_worker() to be aware if the erase block became > bad. Here is the relevant code at the end of erase_worker(): > > /* at this time, the erase has failed. err == -EIO */ > ubi_msg("mark PEB %d as bad", pnum); > err = ubi_io_mark_bad(ubi, pnum); > if (err) > goto out_ro; > > /* does other stuff, not touching err */ > > /* err == 0 here, because of above goto */ > return err; > > out_ro: > ubi_ro_mode(ubi); > return err; > > > So, if this function should return zero when the erase block fails, then I > will add a "result" field to ubi_work that will store the result of the > work function. But I figured I'd check first if the return err that always > returns 0 is not an oversight and this function should return -EIO if it > fails. Why do you need the results? -- Best Regards, Artem Bityutskiy