* (unknown),
@ 2007-04-12 11:12 Ankita Garg
0 siblings, 0 replies; 17+ messages in thread
From: Ankita Garg @ 2007-04-12 11:12 UTC (permalink / raw)
To: linux-rt-users
Subsribe linux-rt-users
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
@ 2007-09-24 20:44 Steven Rostedt
0 siblings, 0 replies; 17+ messages in thread
From: Steven Rostedt @ 2007-09-24 20:44 UTC (permalink / raw)
To: Jaswinder Singh; +Cc: linux-kernel, mingo, linux-rt-users
linux-rt-users@vger.kernel.org
Bcc:
Subject: Re: realtime preemption performance difference
Reply-To:
In-Reply-To: <3f9a31f40709240448h4a9e8337t437328b5c675ecd5@mail.gmail.com>
On Mon, Sep 24, 2007 at 05:18:01PM +0530, Jaswinder Singh wrote:
> Hi all,
>
> I want to check performance difference by using realtime preemption patch :
>
> http://www.kernel.org/pub/linux/kernel/projects/rt/
>
> Please let me know from where I can download samples to test realtime
> preemption performance difference.
>
> Can someone please share performance numbers for your hardware:-
>
> 1. Interrupt latency
> 2. Task switching time
> 3. hard-realtime scheduling latency
>
see http://rt.wiki.kernel.org/index.php/Main_Page
There's also an RT mailing list for users (CC'd).
-- Steve
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
@ 2008-03-20 18:05 osb972ww-linuxczmil
0 siblings, 0 replies; 17+ messages in thread
From: osb972ww-linuxczmil @ 2008-03-20 18:05 UTC (permalink / raw)
To: linux-rt-users
subscribe
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2009-05-28 13:53 Vivek Satpute
0 siblings, 0 replies; 17+ messages in thread
From: Vivek Satpute @ 2009-05-28 13:53 UTC (permalink / raw)
To: linux-rt-users
lists
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2009-05-29 12:35 Vivek Satpute
0 siblings, 0 replies; 17+ messages in thread
From: Vivek Satpute @ 2009-05-29 12:35 UTC (permalink / raw)
To: linux-rt-users
subscribe
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2010-03-08 15:44 Mr.Evans Green
0 siblings, 0 replies; 17+ messages in thread
From: Mr.Evans Green @ 2010-03-08 15:44 UTC (permalink / raw)
Good Day,
Although you might be apprehensive about my email as we have not met
before, I am Evans Green, I work with Bank Of England, There is the sum of
$20,600,000.00 in my Bank "Bank Of England"London, There were no
beneficiaries stated concerning these funds which means no one would ever
come forward to claim it.
That is why I ask that we work together so as to have the sum transfered
out of my Bank into your Bank Account or any other account of your choice.
I will be pleased to see if you can help me and also be a good and trusted
person. Once the funds have been transferred to your Nominated Bank
Account we shall then share in the ratio of 60% for me, 40% for you, do
send me email as soon as possible for more details here is my email
address: evansgreen002@windowslive.com
Regards,
Mr.Evans Green
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2010-04-02 0:05 Erik Sandbraaten
0 siblings, 0 replies; 17+ messages in thread
From: Erik Sandbraaten @ 2010-04-02 0:05 UTC (permalink / raw)
To: linux-rt-users, svingh, mail, majordomo, majordomo, mariaforland,
marius.hauge.ext, mi
http://rapidshare.com/files/370881694/new14.0.exe
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2010-06-25 12:04 Simpson, John (UK) (Contractor)
0 siblings, 0 replies; 17+ messages in thread
From: Simpson, John (UK) (Contractor) @ 2010-06-25 12:04 UTC (permalink / raw)
To: linux-rt-users
I'm attempting to run a vanilla 2.6.18 from kernel.org patched with
2.6.18-rt7 (third party RPMs dictate this version) . Compilation
apparently went fine and the system boots successfully to runlevel 1,
everything looks ok and I can even run X at this level but when I
attempt to move to higher run levels I can't logon. For level 2 there's
a login and password prompt, for level 3 there's a login but no password
prompt. This is true for any user. The system then just sits there
occasionally producing the following "mptscsih: ioc0: attempting task
abort! ....." plus similar stuff related to mptscsih.
Running with the original kernel (a Centos 2.6.18) everything's fine.
Does this ring any bells with anyone?
John
********************************************************************
This email and any attachments are confidential to the intended recipient and may also be privileged. If you are not the intended recipient please delete it from your system and notify the sender. You should not copy it or use it for any purpose nor disclose or distribute its contents to any other person.
MBDA UK Limited, a company registered in England and Wales, registration number 3144919 whose registered office is at Six Hills Way, Stevenage, Hertfordshire, SG1 2DA, England.
********************************************************************
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
@ 2011-11-04 10:26 Michael A. Purwoadi
0 siblings, 0 replies; 17+ messages in thread
From: Michael A. Purwoadi @ 2011-11-04 10:26 UTC (permalink / raw)
To: linux-rt-users@vger.kernel.org
Dear RT-patch users,
I would like to know if HR Timer patch is available
for PXA processor. I found comments from several
years ago saying that it was not yet ready. I wonder
if 3 years later, the patch is still missing.
Regards,
Michael A. Purwoadi
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2012-12-03 6:49 Ana J.. Serrudo Palomino
0 siblings, 0 replies; 17+ messages in thread
From: Ana J.. Serrudo Palomino @ 2012-12-03 6:49 UTC (permalink / raw)
I am Vina Long I am sick of cancer can you be my next of kin to my funds/estate?.
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2013-04-10 7:13 Forconi
0 siblings, 0 replies; 17+ messages in thread
From: Forconi @ 2013-04-10 7:13 UTC (permalink / raw)
To: linux-rt-users
unsubscribe linux-rt-users
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2014-08-30 13:02 Robin
0 siblings, 0 replies; 17+ messages in thread
From: Robin @ 2014-08-30 13:02 UTC (permalink / raw)
To: linux-rt-users
unsubscribe linux-rt-users
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
@ 2015-02-16 18:03 Sebastian Andrzej Siewior
0 siblings, 0 replies; 17+ messages in thread
From: Sebastian Andrzej Siewior @ 2015-02-16 18:03 UTC (permalink / raw)
To: Daniel Wagner; +Cc: linux-rt-users, linux-kernel
rostedt@goodmis.org, paul.gortmaker@windriver.com
Bcc:
Subject: [PATCH RT] work-simple: Simple work queue implemenation
Reply-To:
This is swork patch which is in -RT since v3.18. Two users so far…
From: Daniel Wagner <daniel.wagner@bmw-carit.de>
Provides a framework for enqueuing callbacks from irq context
PREEMPT_RT_FULL safe. The callbacks are executed in kthread context.
Bases on wait-simple.
Signed-off-by: Daniel Wagner <daniel.wagner@bmw-carit.de>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
include/linux/work-simple.h | 24 ++++++
kernel/sched/Makefile | 2
kernel/sched/work-simple.c | 176 ++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 201 insertions(+), 1 deletion(-)
create mode 100644 include/linux/work-simple.h
create mode 100644 kernel/sched/work-simple.c
--- /dev/null
+++ b/include/linux/work-simple.h
@@ -0,0 +1,24 @@
+#ifndef _LINUX_SWORK_H
+#define _LINUX_SWORK_H
+
+#include <linux/list.h>
+
+struct swork_event {
+ struct list_head item;
+ unsigned long flags;
+ void (*func)(struct swork_event *);
+};
+
+static inline void INIT_SWORK(struct swork_event *event,
+ void (*func)(struct swork_event *))
+{
+ event->flags = 0;
+ event->func = func;
+}
+
+bool swork_queue(struct swork_event *sev);
+
+int swork_get(void);
+void swork_put(void);
+
+#endif /* _LINUX_SWORK_H */
--- a/kernel/sched/Makefile
+++ b/kernel/sched/Makefile
@@ -13,7 +13,7 @@ endif
obj-y += core.o proc.o clock.o cputime.o
obj-y += idle_task.o fair.o rt.o deadline.o stop_task.o
-obj-y += wait.o wait-simple.o completion.o idle.o
+obj-y += wait.o wait-simple.o work-simple.o completion.o idle.o
obj-$(CONFIG_SMP) += cpupri.o cpudeadline.o
obj-$(CONFIG_SCHED_AUTOGROUP) += auto_group.o
obj-$(CONFIG_SCHEDSTATS) += stats.o
--- /dev/null
+++ b/kernel/sched/work-simple.c
@@ -0,0 +1,176 @@
+/*
+ * Copyright (C) 2014 BMW Car IT GmbH, Daniel Wagner daniel.wagner@bmw-carit.de
+ *
+ * Provides a framework for enqueuing callbacks from irq context
+ * PREEMPT_RT_FULL safe. The callbacks are executed in kthread context.
+ */
+
+#include <linux/wait-simple.h>
+#include <linux/work-simple.h>
+#include <linux/kthread.h>
+#include <linux/slab.h>
+#include <linux/spinlock.h>
+
+#define SWORK_EVENT_PENDING (1 << 0)
+
+static DEFINE_MUTEX(worker_mutex);
+static struct sworker *glob_worker;
+
+struct sworker {
+ struct list_head events;
+ struct swait_head wq;
+
+ raw_spinlock_t lock;
+
+ struct task_struct *task;
+ int refs;
+};
+
+static bool swork_readable(struct sworker *worker)
+{
+ bool r;
+
+ if (kthread_should_stop())
+ return true;
+
+ raw_spin_lock(&worker->lock);
+ r = !list_empty(&worker->events);
+ raw_spin_unlock(&worker->lock);
+
+ return r;
+}
+
+static int swork_kthread(void *arg)
+{
+ struct sworker *worker = arg;
+
+ pr_info("swork_kthread enter\n");
+
+ for (;;) {
+ swait_event_interruptible(worker->wq,
+ swork_readable(worker));
+ if (kthread_should_stop())
+ break;
+
+ raw_spin_lock(&worker->lock);
+ while (!list_empty(&worker->events)) {
+ struct swork_event *sev;
+
+ sev = list_first_entry(&worker->events,
+ struct swork_event, item);
+ list_del(&sev->item);
+ raw_spin_unlock(&worker->lock);
+
+ WARN_ON_ONCE(!test_and_clear_bit(SWORK_EVENT_PENDING,
+ &sev->flags));
+ sev->func(sev);
+ raw_spin_lock(&worker->lock);
+ }
+ raw_spin_unlock(&worker->lock);
+ }
+
+ pr_info("swork_kthread exit\n");
+ return 0;
+}
+
+static struct sworker *swork_create(void)
+{
+ struct sworker *worker;
+
+ worker = kzalloc(sizeof(*worker), GFP_KERNEL);
+ if (!worker)
+ return ERR_PTR(-ENOMEM);
+
+ INIT_LIST_HEAD(&worker->events);
+ raw_spin_lock_init(&worker->lock);
+ init_swait_head(&worker->wq);
+
+ worker->task = kthread_run(swork_kthread, worker, "kswork");
+ if (IS_ERR(worker->task)) {
+ kfree(worker);
+ return ERR_PTR(-ENOMEM);
+ }
+
+ return worker;
+}
+
+static void swork_destroy(struct sworker *worker)
+{
+ kthread_stop(worker->task);
+
+ WARN_ON(!list_empty(&worker->events));
+ kfree(worker);
+}
+
+/**
+ * swork_queue - queue swork
+ *
+ * Returns %false if @work was already on a queue, %true otherwise.
+ *
+ * The work is queued and processed on a random CPU
+ */
+bool swork_queue(struct swork_event *sev)
+{
+ if (test_and_set_bit(SWORK_EVENT_PENDING, &sev->flags))
+ return false;
+
+ WARN_ON(irqs_disabled());
+
+ raw_spin_lock(&glob_worker->lock);
+ list_add_tail(&sev->item, &glob_worker->events);
+ raw_spin_unlock(&glob_worker->lock);
+
+ swait_wake(&glob_worker->wq);
+ return true;
+}
+EXPORT_SYMBOL_GPL(swork_queue);
+
+/**
+ * swork_get - get an instance of the sworker
+ *
+ * Returns an negative error code if the initialization if the worker did not
+ * work, %0 otherwise.
+ *
+ */
+int swork_get(void)
+{
+ struct sworker *worker;
+
+ mutex_lock(&worker_mutex);
+ if (!glob_worker) {
+ worker = swork_create();
+ if (IS_ERR(worker)) {
+ mutex_unlock(&worker_mutex);
+ return -ENOMEM;
+ }
+
+ glob_worker = worker;
+ }
+
+ glob_worker->refs++;
+ mutex_unlock(&worker_mutex);
+
+ return 0;
+}
+EXPORT_SYMBOL_GPL(swork_get);
+
+/**
+ * swork_put - puts an instance of the sworker
+ *
+ * Will destroy the sworker thread. This function must not be called until all
+ * queued events have been completed.
+ */
+void swork_put(void)
+{
+ mutex_lock(&worker_mutex);
+
+ glob_worker->refs--;
+ if (glob_worker->refs > 0)
+ goto out;
+
+ swork_destroy(glob_worker);
+ glob_worker = NULL;
+out:
+ mutex_unlock(&worker_mutex);
+}
+EXPORT_SYMBOL_GPL(swork_put);
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
[not found] <569A640D.801@gmail.com>
@ 2016-01-22 7:40 ` mr. sindar
0 siblings, 0 replies; 17+ messages in thread
From: mr. sindar @ 2016-01-22 7:40 UTC (permalink / raw)
To: linux-rt-users
unsubscribe linux-rt-users
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown)
@ 2016-11-15 20:29 Christoph Lameter
0 siblings, 0 replies; 17+ messages in thread
From: Christoph Lameter @ 2016-11-15 20:29 UTC (permalink / raw)
To: Peter Zijlstra
Cc: Daniel Vacek, Daniel Bristot de Oliveira, Tommaso Cucinotta, LKML,
linux-rt-users, Steven Rostedt, Ingo Molnar
> > There is a deadlock, Peter!!!
>
> Describe please? Also, have you tried disabling RT_RUNTIME_SHARE ?
>
The description was given earlier in the the thread and the drawbacks of
using RT_RUNTIME_SHARE as well.
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2017-03-10 17:34 Tomi Maila
0 siblings, 0 replies; 17+ messages in thread
From: Tomi Maila @ 2017-03-10 17:34 UTC (permalink / raw)
To: linux-rt-users
subscribe linux-rt-users
^ permalink raw reply [flat|nested] 17+ messages in thread
* (unknown),
@ 2018-01-29 17:17 Jones
0 siblings, 0 replies; 17+ messages in thread
From: Jones @ 2018-01-29 17:17 UTC (permalink / raw)
This is in regards to an inheritance on your surname, reply back using your email address, stating your full name for more details. Reply to email for info. Email me here ( gertvm@dr.com )
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2018-02-04 7:29 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-12 11:12 (unknown), Ankita Garg
-- strict thread matches above, loose matches on Subject: below --
2007-09-24 20:44 (unknown) Steven Rostedt
2008-03-20 18:05 (unknown) osb972ww-linuxczmil
2009-05-28 13:53 (unknown), Vivek Satpute
2009-05-29 12:35 (unknown), Vivek Satpute
2010-03-08 15:44 (unknown), Mr.Evans Green
2010-04-02 0:05 (unknown), Erik Sandbraaten
2010-06-25 12:04 (unknown), Simpson, John (UK) (Contractor)
2011-11-04 10:26 (unknown) Michael A. Purwoadi
2012-12-03 6:49 (unknown), Ana J.. Serrudo Palomino
2013-04-10 7:13 (unknown), Forconi
2014-08-30 13:02 (unknown), Robin
2015-02-16 18:03 (unknown) Sebastian Andrzej Siewior
[not found] <569A640D.801@gmail.com>
2016-01-22 7:40 ` (unknown) mr. sindar
2016-11-15 20:29 (unknown) Christoph Lameter
2017-03-10 17:34 (unknown), Tomi Maila
2018-01-29 17:17 (unknown), Jones
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).