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, 21 Sep 2012 18:35:25 +0100
From:	Dinky Verma <dverma249@...il.com>
To:	linux-kernel@...r.kernel.org
Subject: Work queue questions

Hi,

I have one question regarding concurrency managed workqueue. In the
previous kernel versions, I was using
create_singlethread_workqueue("driver_wq") e.g workqueue name is
driver_wq. In my device driver with the latest kernel version, I am
doing the same to have a support in my device driver for previous
kernel versions and new kernel version, I started using
alloc_workqueue (in intention to create single threaded workqueue)
e.g.

wq = alloc_workqueue("driver_wq", WQ_UNBOUND,1);

create_singlethread_workqueue (Depricated) and alloc_workqueue creates
work queue both work on the newer kernel versions.

I have created 3 single threaded workqueues. when I do ps on linux
console, I see the workqueue thread with process id. When I am queuing
the work simultaneously on these worker threads, I found that threads
named with Kworker/X.Y will process the work from the work queue not
the one that had been created create_singlethread_workqueue.

When I schedule the three works at the same time, I saw sometimes one
Kworker/X.Y thread processes all work items.

The question is why the main worker thread that I created does not
process the work that is intended for it why instead kworker will
process it? I have queued the work using queue_work(wq,
worker_struct).

Regards,
Deepa
--
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