[Pvfs2-developers] Bug fix for small_io.sm
Sam Lang
slang at mcs.anl.gov
Tue May 23 14:14:39 EDT 2006
Hi Avery,
Nice catch. Looks like the job_trove_bstream_read_list call sets
parameters and returns, so the result.bytes field is actually out of
scope later (as part of the one element array passed in). It doesn't
always segfault because the value remains unchanged, even though its
unallocated at the point where its accessed.
For safety's sake, I probably shouldn't even define a local result,
even though its convenient, as I end up forgetting what needs to be
kept around past the scope of the state action.
In any case, I'll clean this up and commit a fix. Thanks again!
-sam
On May 23, 2006, at 10:12 AM, Murali Vilayannur wrote:
> Hi Avery,
> Yup.. Your fix is correct, but let's wait for Sam's comments..
> Why exactly is result.bytes different from s_op-
> >u.small_io.result_bytes?
> I wonder how this did not get triggered in the normal scenarios
> (perhaps
> it needed a sparse data file or something?)
> Thanks,
> Murali
>
>
> On Mon, 22 May 2006, Avery Ching wrote:
>
>> I kept getting segmentation faults with the read case in the small
>> I/O
>> state machine. I think there's a problem with the parameter
>> passed in
>> to job_trove_bstream_read_list() around line 194 of small-io.sm.
>>
>> instead of:
>> &result.bytes,
>>
>> I think it should be:
>> &s_op->u.small_io.result_bytes,
>>
>>
>> Avery
>>
>> _______________________________________________
>> Pvfs2-developers mailing list
>> Pvfs2-developers at beowulf-underground.org
>> http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
>>
>>
> _______________________________________________
> Pvfs2-developers mailing list
> Pvfs2-developers at beowulf-underground.org
> http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
>
More information about the Pvfs2-developers
mailing list