On Mon, 7 Feb 2005 13:21:16 -0500 (EST)
Jurij Smakov <[EMAIL PROTECTED]> wrote:
> 510 size_t len =((ifc32.ifc_len / sizeof (struct ifreq32)) +
> 1) *
> 511 sizeof (struct ifreq);
> 512 uifc = compat_alloc_user_space(sizeof(struct ifconf) +
> len);
> 513 ifc.ifc_len = len;
> 514 ifr = ifc.ifc_req = (void __user *)(uifc + 1);
> 515 ifr32 = compat_ptr(ifc32.ifcbuf);
> 516 for (i = 0; i < ifc32.ifc_len; i += sizeof (struct
> ifreq32)) {
> 517 if (copy_in_user(ifr, ifr32, sizeof(struct
> ifreq32)))
> 518 return -EFAULT;
> 519 ifr++;
> 520 ifr32++;
> 521 }
>
> By inserting some debugging statements, I was able to figure out that
> machine hangs because at some point the call to copy_in_user function does
> not return.
How big are the values "ifc32.ifc_len" and the length passed into the
compat_alloc_user_space() call for the failure case?
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html