[PATCH 1/1] booke/wdt: fix incorrect WDIOC_GETSUPPORT return path
tiejun.chen
tiejun.chen at windriver.com
Tue Aug 7 11:56:03 EST 2012
On 08/07/2012 09:19 AM, Tabi Timur-B04825 wrote:
> On Mon, Aug 6, 2012 at 2:12 PM, Tabi Timur-B04825 <b04825 at freescale.com> wrote:
>> On Mon, Jul 30, 2012 at 3:15 AM, Tiejun Chen <tiejun.chen at windriver.com> wrote:
>>> We miss that correct WDIOC_GETSUPPORT return path when perform
>>> copy_to_user() properly.
>>
>> Thanks for catching this. I'm amazed that this driver still has bugs like this.
>
> While you're at it, I found a few related bugs. Can you fix these, also?
>
> 1. case WDIOC_SETOPTIONS:
> if (get_user(tmp, p))
> return -EINVAL;
>
> This should return -EFAULT.
>
> 2. case WDIOC_GETBOOTSTATUS:
> /* XXX: something is clearing TSR */
> tmp = mfspr(SPRN_TSR) & TSR_WRS(3);
> /* returns CARDRESET if last reset was caused by the WDT */
> return (tmp ? WDIOF_CARDRESET : 0);
>
> This should use put_user() to return the value, instead of returning
> it as a return code.
>
> You can title the new patch something like, "booke/wdt: some ioctls do
> not return values properly"
Will regenerate this patch including these error as v2.
Thanks
Tiejun
More information about the Linuxppc-dev
mailing list