Search Linux Wireless

Re: [PATCH 2/2] compat: fix endless recursion in flush_scheduled_work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 9, 2012 at 2:22 AM, Zefir Kurtisi <zefir.kurtisi@xxxxxxxxxxx> wrote:
> On 08/06/2012 08:52 PM, Luis R. Rodriguez wrote:
>> On Thu, Aug 2, 2012 at 9:28 AM, Hauke Mehrtens <hauke@xxxxxxxxxx> wrote:
>>> The hader file defines flush_scheduled_work(a)
>>> compat_flush_scheduled_work(a), which causes flush_scheduled_work() and
>>> compat_flush_scheduled_work() to be the same function.
>>>
>>> With this patch it calls the actual function in the kernel.
>>>
>>> This fixes problems when unloading mac80211 from compat-wireless.
>>>
>>> Signed-off-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
>>> ---
>>>  compat/compat-2.6.36.c |    1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/compat/compat-2.6.36.c b/compat/compat-2.6.36.c
>>> index 8f25be0..05b41c2 100644
>>> --- a/compat/compat-2.6.36.c
>>> +++ b/compat/compat-2.6.36.c
>>> @@ -133,6 +133,7 @@ int compat_schedule_delayed_work_on(int cpu,
>>>  }
>>>  EXPORT_SYMBOL_GPL(compat_schedule_delayed_work_on);
>>>
>>> +#undef flush_scheduled_work(a)
>>>  void compat_flush_scheduled_work(void)
>>
>> Hah! Nice. I'll add this and push... Zefir can you see if after
>> getting today's compat.git and then by reverting your patch
>> 3da0495cf863288b on compat.git if the unloading issues still happens.
>> Likely this was the *real* cause, although it is odd to me you ended
>> up removing the flush_workqueue() and not the flush_scheduled_work().
>>
>>   Luis
>>
> Yep, works. Thanks Hauke for the proper fix.
>
> As for why I removed the wrong line, I got the macro mapping wrong,
> assuming it ended in calling flush_workqueue() - and chose to remove the
> wrong one.
>
> Still curious why it is not crashing with my quick hack, that remained
> recursion intact...

You tell me! Vodooo!

  Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux