From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jia-Ju Bai Subject: Re: [PATCH 1/2] hp100: Fix a possible sleep-in-atomic bug in hp100_login_to_vg_hub Date: Thu, 14 Dec 2017 11:31:06 +0800 Message-ID: <4d287eef-76ad-3379-af6b-858bf497e515@gmail.com> References: <1513158468-14382-1-git-send-email-baijiaju1990@gmail.com> <20171213.162032.129766742729458957.davem@davemloft.net> <18472c42-4eaf-7189-a16f-489a706cba3e@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: perex@perex.cz, floeff@mathematik.uni-stuttgart.de, acme@conectiva.com.br, netdev@vger.kernel.org, linux-kernel@vger.kernel.org To: David Miller Return-path: In-Reply-To: <18472c42-4eaf-7189-a16f-489a706cba3e@gmail.com> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org Sorry, I made a mistake in last e-mail. Maybe "mdelay(1000/HZ)" or "udelay(1000000/HZ)" . Which one do you think is right? Thanks, Jia-Ju Bai On 2017/12/14 11:13, Jia-Ju Bai wrote: > Thanks for reply :) > I think I should use "udelay(100000/HZ)" instead, do you think it is > right? > > > Thanks, > Jia-Ju Bai > > > On 2017/12/14 5:20, David Miller wrote: >> I want you to review all of your patches and resend them after you >> have checked them carefully. >> >> The first patch I even looked at, this one, is buggy. >> >> You changed a schedule_timeout_interruptible(1) into a udelay(10) >> >> That's not right. >> >> schedule_timeout_interruptible() takes a "jiffies" argument, which >> is a completely different unit than udelay() takes. You would have >> to scale the argument to udelay() in some way using HZ. >> >> Furthermore, the udelay argument you would come up with would >> be way too long to be appropirate in this atomic context. >> >> That's why the code tries to use a sleeping timeout, a long wait is >> necessary here. >