[Pvfs2-developers] bufmap_copy_iovec errors?
Sam Lang
slang at mcs.anl.gov
Thu Nov 30 18:52:11 EST 2006
Hi Murali,
I think you're on the right track, it looks like its a casting
problem from int to long, but the bug appears to be in the nr_segs
parameter passed to wait_for_io and then copy_iovec_from_user. The
attached patch fixes the error, as well as changes all the unsigned
long variable definitions for the segs of iovecs to unsigned int. It
seems safe to assume that we're never going to have more than 4
billion or so segments, but its not clear to me why some of them were
unsigned long and some were unsigned int. Can you have a look at the
patch and let me know what you think?
Thanks,
-sam
On Nov 30, 2006, at 1:04 PM, Murali Vilayannur wrote:
> Hi guys,
> drat..there have been so many bugs in the bufmap.c code lately.
> This must be some data type overflow or something..
> Can you try the attached patch and see if it helps..
> As an aside,
> how do we make gcc complain if types don't match perfectly?
> I am surprised how a size_t* and a ssize_t * passes type checks even
> with -Wall..
>
> Kyle, if it does not work,
> can you give me access to your machine? I can take a look at this
> tonight.
> If that is not possible, can you uncomment this line in the kernel
> makefile
> #EXTRA_CFLAGS += -DPVFS2_KERNEL_DEBUG
> rebuild the module, rerun everything and send me the logs.
> thanks,
> Murali
>
>
> On 11/30/06, Sam Lang <slang at mcs.anl.gov> wrote:
>>
>> Hi Kyle,
>>
>> I don't have a fix for your problem yet, but I think the message
>> about "Please make sure that the pvfs2-client is running" is
>> erroneous. The real error is the pvfs_bufmap_copy_iovec_from_user
>> error.
>>
>> Also, did you pull from CVS using the pvfs-2-6-0 release tag? If
>> not, the code in trunk (HEAD tag) may not be working for ppc64 at
>> this point.
>>
>> -sam
>>
>>
>> On Nov 30, 2006, at 10:49 AM, Kyle Schochenmaier wrote:
>>
>> > I was able to get the client finally built and mounted this morning
>> > for 2.6.0-cvs, and ran across this
>> > problem whenever trying to write/read through the vfs to the mount:
>> > *I'm running a biarch debian-ppc64 setup on the client, which has
>> > worked in the past on 2.5-cvs.
>> >
>> > pvfs2_bufmap_copy_iovec_from_user: computed total (0) is not equal
>> > to (2862872)
>> > /usr/src/pvfs-2.6.0-cvs/src/kernel/linux-2.6/file.c line 216:
>> > Failed to copy-in buffers. Please make sure that the pvfs2-client
>> > is running. -22
>> >
>> > The client doesnt crash, and is indeed still there, mounted, `ls`
>> > verifies the filesystem is still up?
>> >
>> > I'm able to do regular operations just fine directly to the
>> > filesystem via libpvfs2, however, nothing on the vfs mount. This
>> > error message isnt very helpful to me as the client is still
>> > running, what should I look for to debug this?
>> >
>> > +=Kyle
>> >
>> > --
>> > Kyle Schochenmaier
>> > kschoche at scl.ameslab.gov
>> > Research Assistant, Dr. Brett Bode
>> > AmesLab - US Dept.Energy
>> > Scalable Computing Laboratory
>> > _______________________________________________
>> > 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
>>
>> <ppc64-types.patch>
More information about the Pvfs2-developers
mailing list