提交 da99f056 编写于 作者: H Heiko Carstens 提交者: David S. Miller

[AF_IUCV/IUCV] : Add missing section annotations

Add missing section annotations and found and fixed some
Coding Style issues.
Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: NFrank Pavlic <fpavlic@de.ibm.com>
上级 561e0360
...@@ -45,7 +45,8 @@ static struct proto iucv_proto = { ...@@ -45,7 +45,8 @@ static struct proto iucv_proto = {
static void iucv_callback_rx(struct iucv_path *, struct iucv_message *); static void iucv_callback_rx(struct iucv_path *, struct iucv_message *);
static void iucv_callback_txdone(struct iucv_path *, struct iucv_message *); static void iucv_callback_txdone(struct iucv_path *, struct iucv_message *);
static void iucv_callback_connack(struct iucv_path *, u8 ipuser[16]); static void iucv_callback_connack(struct iucv_path *, u8 ipuser[16]);
static int iucv_callback_connreq(struct iucv_path *, u8 ipvmid[8], u8 ipuser[16]); static int iucv_callback_connreq(struct iucv_path *, u8 ipvmid[8],
u8 ipuser[16]);
static void iucv_callback_connrej(struct iucv_path *, u8 ipuser[16]); static void iucv_callback_connrej(struct iucv_path *, u8 ipuser[16]);
static struct iucv_sock_list iucv_sk_list = { static struct iucv_sock_list iucv_sk_list = {
...@@ -152,7 +153,7 @@ static void iucv_sock_close(struct sock *sk) ...@@ -152,7 +153,7 @@ static void iucv_sock_close(struct sock *sk)
iucv_sock_clear_timer(sk); iucv_sock_clear_timer(sk);
lock_sock(sk); lock_sock(sk);
switch(sk->sk_state) { switch (sk->sk_state) {
case IUCV_LISTEN: case IUCV_LISTEN:
iucv_sock_cleanup_listen(sk); iucv_sock_cleanup_listen(sk);
break; break;
...@@ -164,7 +165,7 @@ static void iucv_sock_close(struct sock *sk) ...@@ -164,7 +165,7 @@ static void iucv_sock_close(struct sock *sk)
sk->sk_state = IUCV_CLOSING; sk->sk_state = IUCV_CLOSING;
sk->sk_state_change(sk); sk->sk_state_change(sk);
if(!skb_queue_empty(&iucv->send_skb_q)) { if (!skb_queue_empty(&iucv->send_skb_q)) {
if (sock_flag(sk, SOCK_LINGER) && sk->sk_lingertime) if (sock_flag(sk, SOCK_LINGER) && sk->sk_lingertime)
timeo = sk->sk_lingertime; timeo = sk->sk_lingertime;
else else
...@@ -292,7 +293,7 @@ struct sock *iucv_accept_dequeue(struct sock *parent, struct socket *newsock) ...@@ -292,7 +293,7 @@ struct sock *iucv_accept_dequeue(struct sock *parent, struct socket *newsock)
struct iucv_sock *isk, *n; struct iucv_sock *isk, *n;
struct sock *sk; struct sock *sk;
list_for_each_entry_safe(isk, n, &iucv_sk(parent)->accept_q, accept_q){ list_for_each_entry_safe(isk, n, &iucv_sk(parent)->accept_q, accept_q) {
sk = (struct sock *) isk; sk = (struct sock *) isk;
lock_sock(sk); lock_sock(sk);
...@@ -537,7 +538,7 @@ static int iucv_sock_accept(struct socket *sock, struct socket *newsock, ...@@ -537,7 +538,7 @@ static int iucv_sock_accept(struct socket *sock, struct socket *newsock,
/* Wait for an incoming connection */ /* Wait for an incoming connection */
add_wait_queue_exclusive(sk->sk_sleep, &wait); add_wait_queue_exclusive(sk->sk_sleep, &wait);
while (!(nsk = iucv_accept_dequeue(sk, newsock))){ while (!(nsk = iucv_accept_dequeue(sk, newsock))) {
set_current_state(TASK_INTERRUPTIBLE); set_current_state(TASK_INTERRUPTIBLE);
if (!timeo) { if (!timeo) {
err = -EAGAIN; err = -EAGAIN;
...@@ -618,13 +619,13 @@ static int iucv_sock_sendmsg(struct kiocb *iocb, struct socket *sock, ...@@ -618,13 +619,13 @@ static int iucv_sock_sendmsg(struct kiocb *iocb, struct socket *sock,
goto out; goto out;
} }
if (sk->sk_state == IUCV_CONNECTED){ if (sk->sk_state == IUCV_CONNECTED) {
if(!(skb = sock_alloc_send_skb(sk, len, if (!(skb = sock_alloc_send_skb(sk, len,
msg->msg_flags & MSG_DONTWAIT, msg->msg_flags & MSG_DONTWAIT,
&err))) &err)))
goto out; goto out;
if (memcpy_fromiovec(skb_put(skb, len), msg->msg_iov, len)){ if (memcpy_fromiovec(skb_put(skb, len), msg->msg_iov, len)) {
err = -EFAULT; err = -EFAULT;
goto fail; goto fail;
} }
...@@ -710,7 +711,7 @@ static int iucv_sock_recvmsg(struct kiocb *iocb, struct socket *sock, ...@@ -710,7 +711,7 @@ static int iucv_sock_recvmsg(struct kiocb *iocb, struct socket *sock,
/* Queue backlog skbs */ /* Queue backlog skbs */
rskb = skb_dequeue(&iucv_sk(sk)->backlog_skb_q); rskb = skb_dequeue(&iucv_sk(sk)->backlog_skb_q);
while(rskb) { while (rskb) {
if (sock_queue_rcv_skb(sk, rskb)) { if (sock_queue_rcv_skb(sk, rskb)) {
skb_queue_head(&iucv_sk(sk)->backlog_skb_q, skb_queue_head(&iucv_sk(sk)->backlog_skb_q,
rskb); rskb);
...@@ -731,7 +732,7 @@ static inline unsigned int iucv_accept_poll(struct sock *parent) ...@@ -731,7 +732,7 @@ static inline unsigned int iucv_accept_poll(struct sock *parent)
struct iucv_sock *isk, *n; struct iucv_sock *isk, *n;
struct sock *sk; struct sock *sk;
list_for_each_entry_safe(isk, n, &iucv_sk(parent)->accept_q, accept_q){ list_for_each_entry_safe(isk, n, &iucv_sk(parent)->accept_q, accept_q) {
sk = (struct sock *) isk; sk = (struct sock *) isk;
if (sk->sk_state == IUCV_CONNECTED) if (sk->sk_state == IUCV_CONNECTED)
...@@ -762,7 +763,7 @@ unsigned int iucv_sock_poll(struct file *file, struct socket *sock, ...@@ -762,7 +763,7 @@ unsigned int iucv_sock_poll(struct file *file, struct socket *sock,
mask |= POLLHUP; mask |= POLLHUP;
if (!skb_queue_empty(&sk->sk_receive_queue) || if (!skb_queue_empty(&sk->sk_receive_queue) ||
(sk->sk_shutdown & RCV_SHUTDOWN)) (sk->sk_shutdown & RCV_SHUTDOWN))
mask |= POLLIN | POLLRDNORM; mask |= POLLIN | POLLRDNORM;
if (sk->sk_state == IUCV_CLOSED) if (sk->sk_state == IUCV_CLOSED)
...@@ -793,7 +794,7 @@ static int iucv_sock_shutdown(struct socket *sock, int how) ...@@ -793,7 +794,7 @@ static int iucv_sock_shutdown(struct socket *sock, int how)
return -EINVAL; return -EINVAL;
lock_sock(sk); lock_sock(sk);
switch(sk->sk_state) { switch (sk->sk_state) {
case IUCV_CLOSED: case IUCV_CLOSED:
err = -ENOTCONN; err = -ENOTCONN;
goto fail; goto fail;
...@@ -809,7 +810,7 @@ static int iucv_sock_shutdown(struct socket *sock, int how) ...@@ -809,7 +810,7 @@ static int iucv_sock_shutdown(struct socket *sock, int how)
err = iucv_message_send(iucv->path, &txmsg, IUCV_IPRMDATA, 0, err = iucv_message_send(iucv->path, &txmsg, IUCV_IPRMDATA, 0,
(void *) prmmsg, 8); (void *) prmmsg, 8);
if (err) { if (err) {
switch(err) { switch (err) {
case 1: case 1:
err = -ENOTCONN; err = -ENOTCONN;
break; break;
...@@ -912,7 +913,7 @@ static int iucv_callback_connreq(struct iucv_path *path, ...@@ -912,7 +913,7 @@ static int iucv_callback_connreq(struct iucv_path *path,
/* Create the new socket */ /* Create the new socket */
nsk = iucv_sock_alloc(NULL, SOCK_STREAM, GFP_ATOMIC); nsk = iucv_sock_alloc(NULL, SOCK_STREAM, GFP_ATOMIC);
if (!nsk){ if (!nsk) {
err = iucv_path_sever(path, user_data); err = iucv_path_sever(path, user_data);
goto fail; goto fail;
} }
...@@ -935,7 +936,7 @@ static int iucv_callback_connreq(struct iucv_path *path, ...@@ -935,7 +936,7 @@ static int iucv_callback_connreq(struct iucv_path *path,
path->msglim = IUCV_QUEUELEN_DEFAULT; path->msglim = IUCV_QUEUELEN_DEFAULT;
err = iucv_path_accept(path, &af_iucv_handler, nuser_data, nsk); err = iucv_path_accept(path, &af_iucv_handler, nuser_data, nsk);
if (err){ if (err) {
err = iucv_path_sever(path, user_data); err = iucv_path_sever(path, user_data);
goto fail; goto fail;
} }
...@@ -966,7 +967,7 @@ static int iucv_fragment_skb(struct sock *sk, struct sk_buff *skb, int len, ...@@ -966,7 +967,7 @@ static int iucv_fragment_skb(struct sock *sk, struct sk_buff *skb, int len,
struct sk_buff *nskb; struct sk_buff *nskb;
dataleft = len; dataleft = len;
while(dataleft) { while (dataleft) {
if (dataleft >= sk->sk_rcvbuf / 4) if (dataleft >= sk->sk_rcvbuf / 4)
size = sk->sk_rcvbuf / 4; size = sk->sk_rcvbuf / 4;
else else
...@@ -989,6 +990,7 @@ static int iucv_fragment_skb(struct sock *sk, struct sk_buff *skb, int len, ...@@ -989,6 +990,7 @@ static int iucv_fragment_skb(struct sock *sk, struct sk_buff *skb, int len,
return 0; return 0;
} }
static void iucv_callback_rx(struct iucv_path *path, struct iucv_message *msg) static void iucv_callback_rx(struct iucv_path *path, struct iucv_message *msg)
{ {
struct sock *sk = path->private; struct sock *sk = path->private;
...@@ -1035,7 +1037,7 @@ static void iucv_callback_rx(struct iucv_path *path, struct iucv_message *msg) ...@@ -1035,7 +1037,7 @@ static void iucv_callback_rx(struct iucv_path *path, struct iucv_message *msg)
} }
/* Queue the fragmented skb */ /* Queue the fragmented skb */
fskb = skb_dequeue(&fragmented_skb_q); fskb = skb_dequeue(&fragmented_skb_q);
while(fskb) { while (fskb) {
if (!skb_queue_empty(&iucv->backlog_skb_q)) if (!skb_queue_empty(&iucv->backlog_skb_q))
skb_queue_tail(&iucv->backlog_skb_q, fskb); skb_queue_tail(&iucv->backlog_skb_q, fskb);
else if (sock_queue_rcv_skb(sk, fskb)) else if (sock_queue_rcv_skb(sk, fskb))
...@@ -1076,7 +1078,7 @@ static void iucv_callback_txdone(struct iucv_path *path, ...@@ -1076,7 +1078,7 @@ static void iucv_callback_txdone(struct iucv_path *path,
kfree_skb(this); kfree_skb(this);
} }
if (sk->sk_state == IUCV_CLOSING){ if (sk->sk_state == IUCV_CLOSING) {
if (skb_queue_empty(&iucv_sk(sk)->send_skb_q)) { if (skb_queue_empty(&iucv_sk(sk)->send_skb_q)) {
sk->sk_state = IUCV_CLOSED; sk->sk_state = IUCV_CLOSED;
sk->sk_state_change(sk); sk->sk_state_change(sk);
...@@ -1123,7 +1125,7 @@ static struct net_proto_family iucv_sock_family_ops = { ...@@ -1123,7 +1125,7 @@ static struct net_proto_family iucv_sock_family_ops = {
.create = iucv_sock_create, .create = iucv_sock_create,
}; };
static int afiucv_init(void) static int __init afiucv_init(void)
{ {
int err; int err;
......
...@@ -32,7 +32,6 @@ ...@@ -32,7 +32,6 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/moduleparam.h> #include <linux/moduleparam.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/slab.h> #include <linux/slab.h>
...@@ -69,7 +68,7 @@ ...@@ -69,7 +68,7 @@
#define IUCV_IPNORPY 0x10 #define IUCV_IPNORPY 0x10
#define IUCV_IPALL 0x80 #define IUCV_IPALL 0x80
static int iucv_bus_match (struct device *dev, struct device_driver *drv) static int iucv_bus_match(struct device *dev, struct device_driver *drv)
{ {
return 0; return 0;
} }
...@@ -78,8 +77,11 @@ struct bus_type iucv_bus = { ...@@ -78,8 +77,11 @@ struct bus_type iucv_bus = {
.name = "iucv", .name = "iucv",
.match = iucv_bus_match, .match = iucv_bus_match,
}; };
EXPORT_SYMBOL(iucv_bus);
struct device *iucv_root; struct device *iucv_root;
EXPORT_SYMBOL(iucv_root);
static int iucv_available; static int iucv_available;
/* General IUCV interrupt structure */ /* General IUCV interrupt structure */
...@@ -405,7 +407,7 @@ static void iucv_declare_cpu(void *data) ...@@ -405,7 +407,7 @@ static void iucv_declare_cpu(void *data)
rc = iucv_call_b2f0(IUCV_DECLARE_BUFFER, parm); rc = iucv_call_b2f0(IUCV_DECLARE_BUFFER, parm);
if (rc) { if (rc) {
char *err = "Unknown"; char *err = "Unknown";
switch(rc) { switch (rc) {
case 0x03: case 0x03:
err = "Directory error"; err = "Directory error";
break; break;
...@@ -588,7 +590,7 @@ static int __cpuinit iucv_cpu_notify(struct notifier_block *self, ...@@ -588,7 +590,7 @@ static int __cpuinit iucv_cpu_notify(struct notifier_block *self,
return NOTIFY_OK; return NOTIFY_OK;
} }
static struct notifier_block iucv_cpu_notifier = { static struct notifier_block __cpuinitdata iucv_cpu_notifier = {
.notifier_call = iucv_cpu_notify, .notifier_call = iucv_cpu_notify,
}; };
...@@ -691,6 +693,7 @@ int iucv_register(struct iucv_handler *handler, int smp) ...@@ -691,6 +693,7 @@ int iucv_register(struct iucv_handler *handler, int smp)
mutex_unlock(&iucv_register_mutex); mutex_unlock(&iucv_register_mutex);
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_register);
/** /**
* iucv_unregister * iucv_unregister
...@@ -723,6 +726,7 @@ void iucv_unregister(struct iucv_handler *handler, int smp) ...@@ -723,6 +726,7 @@ void iucv_unregister(struct iucv_handler *handler, int smp)
iucv_setmask_mp(); iucv_setmask_mp();
mutex_unlock(&iucv_register_mutex); mutex_unlock(&iucv_register_mutex);
} }
EXPORT_SYMBOL(iucv_unregister);
/** /**
* iucv_path_accept * iucv_path_accept
...@@ -761,6 +765,7 @@ int iucv_path_accept(struct iucv_path *path, struct iucv_handler *handler, ...@@ -761,6 +765,7 @@ int iucv_path_accept(struct iucv_path *path, struct iucv_handler *handler,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_path_accept);
/** /**
* iucv_path_connect * iucv_path_connect
...@@ -824,6 +829,7 @@ int iucv_path_connect(struct iucv_path *path, struct iucv_handler *handler, ...@@ -824,6 +829,7 @@ int iucv_path_connect(struct iucv_path *path, struct iucv_handler *handler,
spin_unlock_bh(&iucv_table_lock); spin_unlock_bh(&iucv_table_lock);
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_path_connect);
/** /**
* iucv_path_quiesce: * iucv_path_quiesce:
...@@ -850,6 +856,7 @@ int iucv_path_quiesce(struct iucv_path *path, u8 userdata[16]) ...@@ -850,6 +856,7 @@ int iucv_path_quiesce(struct iucv_path *path, u8 userdata[16])
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_path_quiesce);
/** /**
* iucv_path_resume: * iucv_path_resume:
...@@ -890,7 +897,6 @@ int iucv_path_sever(struct iucv_path *path, u8 userdata[16]) ...@@ -890,7 +897,6 @@ int iucv_path_sever(struct iucv_path *path, u8 userdata[16])
{ {
int rc; int rc;
preempt_disable(); preempt_disable();
if (iucv_active_cpu != smp_processor_id()) if (iucv_active_cpu != smp_processor_id())
spin_lock_bh(&iucv_table_lock); spin_lock_bh(&iucv_table_lock);
...@@ -904,6 +910,7 @@ int iucv_path_sever(struct iucv_path *path, u8 userdata[16]) ...@@ -904,6 +910,7 @@ int iucv_path_sever(struct iucv_path *path, u8 userdata[16])
preempt_enable(); preempt_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_path_sever);
/** /**
* iucv_message_purge * iucv_message_purge
...@@ -936,6 +943,7 @@ int iucv_message_purge(struct iucv_path *path, struct iucv_message *msg, ...@@ -936,6 +943,7 @@ int iucv_message_purge(struct iucv_path *path, struct iucv_message *msg,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_purge);
/** /**
* iucv_message_receive * iucv_message_receive
...@@ -1006,6 +1014,7 @@ int iucv_message_receive(struct iucv_path *path, struct iucv_message *msg, ...@@ -1006,6 +1014,7 @@ int iucv_message_receive(struct iucv_path *path, struct iucv_message *msg,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_receive);
/** /**
* iucv_message_reject * iucv_message_reject
...@@ -1034,6 +1043,7 @@ int iucv_message_reject(struct iucv_path *path, struct iucv_message *msg) ...@@ -1034,6 +1043,7 @@ int iucv_message_reject(struct iucv_path *path, struct iucv_message *msg)
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_reject);
/** /**
* iucv_message_reply * iucv_message_reply
...@@ -1077,6 +1087,7 @@ int iucv_message_reply(struct iucv_path *path, struct iucv_message *msg, ...@@ -1077,6 +1087,7 @@ int iucv_message_reply(struct iucv_path *path, struct iucv_message *msg,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_reply);
/** /**
* iucv_message_send * iucv_message_send
...@@ -1125,6 +1136,7 @@ int iucv_message_send(struct iucv_path *path, struct iucv_message *msg, ...@@ -1125,6 +1136,7 @@ int iucv_message_send(struct iucv_path *path, struct iucv_message *msg,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_send);
/** /**
* iucv_message_send2way * iucv_message_send2way
...@@ -1181,6 +1193,7 @@ int iucv_message_send2way(struct iucv_path *path, struct iucv_message *msg, ...@@ -1181,6 +1193,7 @@ int iucv_message_send2way(struct iucv_path *path, struct iucv_message *msg,
local_bh_enable(); local_bh_enable();
return rc; return rc;
} }
EXPORT_SYMBOL(iucv_message_send2way);
/** /**
* iucv_path_pending * iucv_path_pending
...@@ -1572,7 +1585,7 @@ static void iucv_external_interrupt(u16 code) ...@@ -1572,7 +1585,7 @@ static void iucv_external_interrupt(u16 code)
* *
* Allocates and initializes various data structures. * Allocates and initializes various data structures.
*/ */
static int iucv_init(void) static int __init iucv_init(void)
{ {
int rc; int rc;
...@@ -1583,7 +1596,7 @@ static int iucv_init(void) ...@@ -1583,7 +1596,7 @@ static int iucv_init(void)
rc = iucv_query_maxconn(); rc = iucv_query_maxconn();
if (rc) if (rc)
goto out; goto out;
rc = register_external_interrupt (0x4000, iucv_external_interrupt); rc = register_external_interrupt(0x4000, iucv_external_interrupt);
if (rc) if (rc)
goto out; goto out;
rc = bus_register(&iucv_bus); rc = bus_register(&iucv_bus);
...@@ -1594,7 +1607,7 @@ static int iucv_init(void) ...@@ -1594,7 +1607,7 @@ static int iucv_init(void)
rc = PTR_ERR(iucv_root); rc = PTR_ERR(iucv_root);
goto out_bus; goto out_bus;
} }
/* Note: GFP_DMA used used to get memory below 2G */ /* Note: GFP_DMA used to get memory below 2G */
iucv_irq_data = percpu_alloc(sizeof(struct iucv_irq_data), iucv_irq_data = percpu_alloc(sizeof(struct iucv_irq_data),
GFP_KERNEL|GFP_DMA); GFP_KERNEL|GFP_DMA);
if (!iucv_irq_data) { if (!iucv_irq_data) {
...@@ -1632,7 +1645,7 @@ static int iucv_init(void) ...@@ -1632,7 +1645,7 @@ static int iucv_init(void)
* *
* Frees everything allocated from iucv_init. * Frees everything allocated from iucv_init.
*/ */
static void iucv_exit(void) static void __exit iucv_exit(void)
{ {
struct iucv_irq_list *p, *n; struct iucv_irq_list *p, *n;
...@@ -1653,24 +1666,6 @@ static void iucv_exit(void) ...@@ -1653,24 +1666,6 @@ static void iucv_exit(void)
subsys_initcall(iucv_init); subsys_initcall(iucv_init);
module_exit(iucv_exit); module_exit(iucv_exit);
/**
* Export all public stuff
*/
EXPORT_SYMBOL (iucv_bus);
EXPORT_SYMBOL (iucv_root);
EXPORT_SYMBOL (iucv_register);
EXPORT_SYMBOL (iucv_unregister);
EXPORT_SYMBOL (iucv_path_accept);
EXPORT_SYMBOL (iucv_path_connect);
EXPORT_SYMBOL (iucv_path_quiesce);
EXPORT_SYMBOL (iucv_path_sever);
EXPORT_SYMBOL (iucv_message_purge);
EXPORT_SYMBOL (iucv_message_receive);
EXPORT_SYMBOL (iucv_message_reject);
EXPORT_SYMBOL (iucv_message_reply);
EXPORT_SYMBOL (iucv_message_send);
EXPORT_SYMBOL (iucv_message_send2way);
MODULE_AUTHOR("(C) 2001 IBM Corp. by Fritz Elfert (felfert@millenux.com)"); MODULE_AUTHOR("(C) 2001 IBM Corp. by Fritz Elfert (felfert@millenux.com)");
MODULE_DESCRIPTION("Linux for S/390 IUCV lowlevel driver"); MODULE_DESCRIPTION("Linux for S/390 IUCV lowlevel driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册