On 01/26/2014 05:34 PM, Ren Qiaowei wrote: >> > I agree with you and we should suppress all the warnings as possible. If > I use (unsgined long) to cast like the following code, what do you think > about it? sizeof(long) will be 4 for 32-bit. > > info->si_lower = (void __user *)(unsigned long) > (xsave_buf->bndregs.bndregs[2*bndregno]); > info->si_upper = (void __user *)(unsigned long) > (~xsave_buf->bndregs.bndregs[2*bndregno+1]); >
That is the way it is usually done, yes. Add a comment saying something like: /* Note: the upper 32 bits are ignored in 32-bit mode. */ It is worth watching out a bit here, though, because you could be running a 32-bit process on top of a 64-bit kernel. -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/