lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 3 Feb 2012 18:54:06 +0530
From:	Ashish Jangam <ashish.jangam@...tcummins.com>
To:	<broonie@...nsource.wolfsonmicro.com>
CC:	<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 07/07] ONKEY: OnKey module for DA9052/53 PMIC v1

On Fri, 2012-02-03 at 17:28 +0530, Ashish Jangam wrote:
> 
> On Wed, Feb 01, 2012 at 01:58:55PM +0530, Ashish Jangam wrote:
> > On Wed, 2012-02-01 at 13:30 +0530, Ashish Jangam wrote:
> 
> > > > +	ret = da9052_reg_read(onkey->da9052, DA9052_EVENT_B_REG);
> > > > +	if (ret < 0) {
> > > > +		dev_err(onkey->da9052->dev,
> > > > +			"da9052_onkey_report_event da9052_reg_read error %d\n",
> > > > +			ret);
> > > > +		ret = 1;
> > > > +	} else {
> > > > +		ret = ret & DA9052_EVENTB_ENONKEY;
> > > > +		input_report_key(onkey->input, KEY_POWER, ret);
> > > > +		input_sync(onkey->input);
> > > > +	}
> 
> > > > +	if (ret)
> > > > +		schedule_delayed_work(&onkey->work, msecs_to_jiffies(50));
> 
> > > Why not just schedule the work directly?  The use of ret took a bit 
> > > of thinking about to follow.
> 
> > schedule_dealyed_work simulates the release of the onkey button since 
> > event for release is not generated and ret & DA9052_EVENTB_ENONKEY is 
> > used to determine the release
> 
> That doesn't seem to address the concern.  You're setting ret in exactly one place
> and scheduling the work in exactly one place, why are these two things split?
schedule_delayed_work() is conditional because it should get invoke when onkey button is 
pressed and not when released. For this reason onkey event is first queried and work is
scheduled only when event is present. Now when work is scheduled, onkey event gets
queried and in absence of the onkey event work will not get schedule again. By this logic I'm able
to simulated the release of the onkey button.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ