04 Apr, 2009
1 commit
-
This patch contains DST core files, which introduce
block layer, connector and sysfs registration glue and main headers.Connector is used for the configuration of the node (its type, address,
device name and so on). Sysfs provides bits of information about running
devices in the following format:+/*
+ * DST sysfs tree for device called 'storage':
+ *
+ * /sys/bus/dst/devices/storage/
+ * /sys/bus/dst/devices/storage/type : 192.168.4.80:1025
+ * /sys/bus/dst/devices/storage/size : 800
+ * /sys/bus/dst/devices/storage/name : storage
+ */DST header contains structure definitions and protocol command description.
Signed-off-by: Evgeniy Polyakov
Signed-off-by: Greg Kroah-Hartman
03 Feb, 2009
1 commit
-
The netlink connector uses its own workqueue to relay the datas sent
from userspace to the appropriate callback. If you launch the test
from Documentation/connector and change it a bit to send a high flow
of data, you will see thousands of events coming to the "cqueue"
workqueue by looking at the workqueue tracer.This flow of events can be sent very quickly. So, to not encumber the
kevent workqueue and delay other jobs, the "cqueue" workqueue should
remain.But this workqueue is pointless most of the time, it will always be
created (assuming you have built it of course) although only
developpers with specific needs will use it.So avoid this "most of the time useless task", this patch proposes to
create this workqueue only when needed once. The first jobs to be
sent to connector callbacks will be sent to kevent while the "cqueue"
thread creation will be scheduled to kevent too.The following jobs will continue to be scheduled to keventd until the
cqueue workqueue is created, and then the rest of the jobs will
continue to perform as usual, through this dedicated workqueue.Each time I tested this patch, only the first event was sent to
keventd, the rest has been sent to cqueue which have been created
quickly.Also, this patch fixes some trailing whitespaces on the connector files.
Signed-off-by: Frederic Weisbecker
Acked-by: Evgeniy Polyakov
Signed-off-by: David S. Miller
16 Jan, 2009
1 commit
-
Impact: fix 15 make headers_check warnings:
include of is preferred over
Signed-off-by: Jaswinder Singh Rajput
Cc: Ingo Molnar
Cc: Sam Ravnborg
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
31 Jul, 2008
1 commit
-
Add a BlackBoard user to connector. BlackBoard is part of the TSP GPL
sampling framework (http://savannah.nongnu.org/p/tsp)[akpm@linux-foundation.org: add comment]
Signed-off-by: Jerome Arbez-Gindre
Acked-by: Evgeniy Polyakov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
27 Feb, 2008
1 commit
-
It is used in connector.c only, so make it static.
Signed-off-by: Li Zefan
Signed-off-by: David S. Miller
29 Jan, 2008
2 commits
-
- 'cb' is a fake struct member. In a previous patch struct cn_callback
was renamed to cn_callback_id, so 'cb' should have been deleted at that
time.- 'nls' isn't used and is redundant, we can retrieve this data through
cn_callback_entry.pdev->nls.- 'seq' and 'group' should be u32, as they are declared to be u32 in
other places.Signed-off-by: Li Zefan
Signed-off-by: David S. Miller -
Struct member netlink_groups is never used, and I don't see how it can
be useful.Signed-off-by: Li Zefan
Signed-off-by: David S. Miller
17 Oct, 2007
2 commits
-
Add connector idx and val constants for v86d and uvesafb.
Signed-off-by: Michal Januszewski
Signed-off-by: Antonino Daplas
Cc: Evgeniy Polyakov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Change the maximum message size to 16k to allow transfers of VBE
data blocks from userspace.Signed-off-by: Michal Januszewski
Signed-off-by: Antonino Daplas
Cc: Evgeniy Polyakov
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
11 Oct, 2007
1 commit
-
This patch make processing netlink user -> kernel messages synchronious.
This change was inspired by the talk with Alexey Kuznetsov about current
netlink messages processing. He says that he was badly wrong when introduced
asynchronious user -> kernel communication.The call netlink_unicast is the only path to send message to the kernel
netlink socket. But, unfortunately, it is also used to send data to the
user.Before this change the user message has been attached to the socket queue
and sk->sk_data_ready was called. The process has been blocked until all
pending messages were processed. The bad thing is that this processing
may occur in the arbitrary process context.This patch changes nlk->data_ready callback to get 1 skb and force packet
processing right in the netlink_unicast.Kernel -> user path in netlink_unicast remains untouched.
EINTR processing for in netlink_run_queue was changed. It forces rtnl_lock
drop, but the process remains in the cycle until the message will be fully
processed. So, there is no need to use this kludges now.Signed-off-by: Denis V. Lunev
Acked-by: Alexey Kuznetsov
Signed-off-by: David S. Miller
18 Dec, 2006
1 commit
-
Signed-off-by: Evgeniy Polyakov
Signed-off-by: David S. Miller
22 Nov, 2006
1 commit
-
Fix up for make allyesconfig.
Signed-Off-By: David Howells
23 Jun, 2006
1 commit
-
Signed-off-by: Evgeniy Polyakov
Signed-off-by: Greg Kroah-Hartman
11 Nov, 2005
1 commit
-
Kconfig option for CIFS upcall.
Signed-off-by: Steve French
07 Nov, 2005
1 commit
-
This patch adds a connector that reports fork, exec, id change, and exit
events for all processes to userspace. It replaces the fork_advisor patch
that ELSA is currently using. Applications that may find these events
useful include accounting/auditing (e.g. ELSA), system activity monitoring
(e.g. top), security, and resource management (e.g. CKRM).Signed-off-by: Matt Helsley
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
09 Oct, 2005
1 commit
-
- added typedef unsigned int __nocast gfp_t;
- replaced __nocast uses for gfp flags with gfp_t - it gives exactly
the same warnings as far as sparse is concerned, doesn't change
generated code (from gcc point of view we replaced unsigned int with
typedef) and documents what's going on far better.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds
05 Oct, 2005
1 commit
-
Fix implicit nocast warnings in connector code:
drivers/connector/connector.c:102:24: warning: implicit cast to nocast type
drivers/connector/connector.c:114:45: warning: implicit cast to nocast typeSigned-off-by: Randy Dunlap
Signed-off-by: David S. Miller
27 Sep, 2005
1 commit
-
If input message rate from userspace is too high, do not drop them,
but try to deliver using work queue allocation.Failing there is some kind of congestion control.
It also removes warn_on on this condition, which scares people.
Signed-off-by: Evgeniy Polyakov
Signed-off-by: David S. Miller
12 Sep, 2005
1 commit
-
Kernel connector - new userspace kernel space easy to use
communication module which implements easy to use bidirectional
message bus using netlink as it's backend. Connector was created to
eliminate complex skb handling both in send and receive message bus
direction.Connector driver adds possibility to connect various agents using as
one of it's backends netlink based network. One must register
callback and identifier. When driver receives special netlink message
with appropriate identifier, appropriate callback will be called.From the userspace point of view it's quite straightforward:
socket();
bind();
send();
recv();But if kernelspace want to use full power of such connections, driver
writer must create special sockets, must know about struct sk_buff
handling... Connector allows any kernelspace agents to use netlink
based networking for inter-process communication in a significantly
easier way:int cn_add_callback(struct cb_id *id, char *name, void (*callback) (void *));
void cn_netlink_send(struct cn_msg *msg, u32 __groups, int gfp_mask);struct cb_id
{
__u32 idx;
__u32 val;
};idx and val are unique identifiers which must be registered in
connector.h for in-kernel usage. void (*callback) (void *) - is a
callback function which will be called when message with above idx.val
will be received by connector core.Using connector completely hides low-level transport layer from it's
users.Connector uses new netlink ability to have many groups in one socket.
[ Incorporating many cleanups and fixes by myself and
Andrew Morton -DaveM ]Signed-off-by: Evgeniy Polyakov
Signed-off-by: Andrew Morton
Signed-off-by: David S. Miller