[Disksim-users] assertion failed: in disk_buffer_sector_done() (disksim_diskctlr.c:4360): currdisk->fpcheck:
Tiratat Patana-anake
tiratatp at cs.uchicago.edu
Wed Nov 20 10:56:29 EST 2013
Solution!!!
Today I found that the culprit (at least in my case) is that one of
the IO's block count is greater than 6000.
(6000 is the *hardcoded* number of fpcheck)
So I changed to 65537 (disksim_diskctlr.c line 1920) and it was
solved! (at least for now)
Have you ever ran into this problem?
Any comment on my dirty workaround?
--
Tiratat (Knot) Patana-anake
ถิรธัช (น้อต) พัฒนะเอนก
On Tue, Nov 19, 2013 at 11:12 PM, Tiratat Patana-anake
<tiratatp at cs.uchicago.edu> wrote:
> Hi
>
> Have anyone ran into this problem,
> assertion failed: in disk_buffer_sector_done()
> (disksim_diskctlr.c:4360): currdisk->fpcheck:
>
> Apparently, these is this comment in the header (disksim_disk.h),
> // This is a forward progress check. There have been a number of
> // bugs over the years that cause the controller to get into an
> // infinite loop, reading the same sector or track over and over.
> // Every time we do a reposition, this is reset (currently
> // statically, should be set to the track length) and
> // disk_buffer_sector_done() decrements it and asserts that it
> // hasn't gotten to 0.
>
> 2 questions,
> 1. any workaround of this bug?
> 2. does anyone know what is this bug?
>
> Best regards
> Knot
>
> --
> Tiratat (Knot) Patana-anake
> ถิรธัช (น้อต) พัฒนะเอนก
More information about the Disksim-users
mailing list