aboutsummaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2007-09-21 19:35:21 +0300
committerDavid Woodhouse <dwmw2@infradead.org>2007-09-23 19:58:52 +0100
commit49dc08eeda707f59019814fe07a2b17979348002 (patch)
tree8d7a38e54d6f07e42b953478437fa6a535f4e723 /init
parent0bac5111cc00b70460dd8ba8340522e1f0d79f05 (diff)
[MTD] [OneNAND] fix numerous races
This patch make the OneNAND driver much less racy. It fixes our "onenand_wait: read timeout!" heisenbugs. The reason of these bugs was that the driver did not lock the chip when accessing OTP, and it screwed up OneNAND state when the OTP was read while JFFS2 was doing FS checking. This patch also fixes other races I spotted: 1. BBT was not protected 2. Access to ecc_stats was not protected Now the chip is locked when BBT is accessed. To fix all of these I basically split all interface functions on 'function()' and 'function_nolock()' parts. I tested this patch on N800 hardware - it fixes our problems. But I tested a little different version because our OneNAND codebase is slightly out-of-date. But it should be OK. This patch also includes the prin fixes I posted before. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions