How to mark suspicious code?
Ivan Safonov
insafonov at gmail.com
Fri Nov 6 09:38:18 EST 2015
On 11/06/2015 12:02 PM, Greg KH wrote:
> On Fri, Nov 06, 2015 at 10:28:31AM +0700, Ivan Safonov wrote:
>> On 11/06/2015 08:58 AM, Greg KH wrote:
>>> On Fri, Nov 06, 2015 at 08:45:46AM +0700, Ivan Safonov wrote:
>>>> Hi all!
>>>>
>>>> How can I mark suspicious code, if I can not fix it?
>>> What do you mean by "mark"?
>> Leave a comment in the code, write a letter to maintainer, etc.
>> What to do?
>>> And also what do you mean by "suspicious"?
>> This is the wrong code that needs to be corrected.
>>> And why can't you fix it?
>>>
>>> we need more details.
>>>
>>> thanks,
>>>
>>> greg k-h
>> Correction of the code will change the behavior of the program.
>> For example:
>>
>> while (1) {
>> if (down_interruptible(&pcmdpriv->cmd_queue_sema))
>> break;
>>
>> if (padapter->bDriverStopped || padapter->bSurpriseRemoved) {
>> ...
>> break;
>> }
>> _next:
>> if (padapter->bDriverStopped || padapter->bSurpriseRemoved) {
>> ...
>> break;
>> }
>> ...
>> if (!pcmd)
>> continue;
>> ...
>> goto _next;
>> }
>> ...
>> up(&pcmdpriv->terminate_cmdthread_sema);
>>
>> Here down_interruptible(sem) in the loop but up(sem) only after the loop.
>> Corrected example below:
>>
>> if (down_interruptible(&pcmdpriv->cmd_queue_sema)) {
>> ...
>> }
>> while (1) {
>> if (padapter->bDriverStopped || padapter->bSurpriseRemoved) {
>> ...
>> break;
>> }
>> _next:
>> if (padapter->bDriverStopped || padapter->bSurpriseRemoved) {
>> ...
>> break;
>> }
>> ...
>> if (!pcmd)
>> continue;
>> ...
>> goto _next;
>> }
>> ...
>> }
>> up(&pcmdpriv->terminate_cmdthread_sema);
>>
>> I can not test the corrected code on the device.
> Make a patch, send it to the people and mailing list that
> get_maintainer.pl shows and the developers will take it from there.
>
Thanks!
More information about the Kernelnewbies
mailing list