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-prev] [day] [month] [year] [list]
Date:	Tue, 02 Oct 2012 21:17:16 +0530
From:	anish kumar <anish198519851985@...il.com>
To:	"Pallala, Ramakrishna" <ramakrishna.pallala@...el.com>
Cc:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: How to schedule worker and threaded IRQ on same cpu/core

On Tue, 2012-10-02 at 15:14 +0000, Pallala, Ramakrishna wrote:
> > On Tue, 2012-10-02 at 12:54 +0000, Pallala, Ramakrishna wrote:
> > > > > How can I schedule driver's worker and threaded IRQ on the same core?
> > > > >
> > > > > For work queue we have schedule_delayed_work_on () API available.
> > > > > But how to schedule the threaded IRQ on the same core where my
> > > > > worker
> > > > thread is going to run?
> > > > Why do you need to worry about where your worker thread is going to run?
> > > > Or IOW what use case do you have in mind?
> > >
> > > In my driver I can get two independent events(IRQ and kernel
> > > notification). One will be handled by Threaded IRQ and other will be
> > > handled by a worker and the order is not guaranteed and with two cores
> > Sometimes both workers are being scheduled  parallel.
> > So what is the problem even if they run in parallel, it would be really help if we
> > know what problem you are trying to solve?
> > Even if you want to sync between these two then you can have some
> > synchronisation mechanism between the two.
> > What is the advantage you are going to get if they run on same core?
> > 
> > Sorry but these answers would really help community in resolving your problem.
> 
> I think I got what I was looking for...
> synchronize_irq()
  /*
   * We made sure that no hardirq handler is running. Now verify
   * that no threaded handlers are active.
   */
  wait_event(desc->wait_for_threads, !
atomic_read(&desc->threads_active));

I think this makes sense now.
> 
> basically I need to wait/pause my worker thread execution until my threaded handler is complete.
> 
> Thanks for response.
> 
> Thanks,
> Ram


--
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