net/connector: Add const qualifier to cb_id

The connector driver never modifies any cb_id passed to it, so add a const
qualifier to those arguments so callers can declare their struct cb_id as a
constant object.

Fixes build warnings like these when passing a constant struct cb_id:

  warning: passing argument 1 of ‘cn_add_callback’ discards ‘const’ qualifier from pointer target

Signed-off-by: Geoff Levand <geoff@infradead.org>
Link: https://lore.kernel.org/r/a9e49c9e-67fa-16e7-0a6b-72f6bd30c58a@infradead.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Geoff Levand 2020-12-14 21:15:47 -08:00 committed by Jakub Kicinski
parent 4375ada019
commit c18e68696f
4 changed files with 12 additions and 12 deletions

View File

@ -25,7 +25,7 @@ handling, etc... The Connector driver allows any kernelspace agents to use
netlink based networking for inter-process communication in a significantly netlink based networking for inter-process communication in a significantly
easier way:: easier way::
int cn_add_callback(struct cb_id *id, char *name, void (*callback) (struct cn_msg *, struct netlink_skb_parms *)); int cn_add_callback(const struct cb_id *id, char *name, void (*callback) (struct cn_msg *, struct netlink_skb_parms *));
void cn_netlink_send_mult(struct cn_msg *msg, u16 len, u32 portid, u32 __group, int gfp_mask); void cn_netlink_send_mult(struct cn_msg *msg, u16 len, u32 portid, u32 __group, int gfp_mask);
void cn_netlink_send(struct cn_msg *msg, u32 portid, u32 __group, int gfp_mask); void cn_netlink_send(struct cn_msg *msg, u32 portid, u32 __group, int gfp_mask);

View File

@ -19,7 +19,7 @@
static struct cn_callback_entry * static struct cn_callback_entry *
cn_queue_alloc_callback_entry(struct cn_queue_dev *dev, const char *name, cn_queue_alloc_callback_entry(struct cn_queue_dev *dev, const char *name,
struct cb_id *id, const struct cb_id *id,
void (*callback)(struct cn_msg *, void (*callback)(struct cn_msg *,
struct netlink_skb_parms *)) struct netlink_skb_parms *))
{ {
@ -51,13 +51,13 @@ void cn_queue_release_callback(struct cn_callback_entry *cbq)
kfree(cbq); kfree(cbq);
} }
int cn_cb_equal(struct cb_id *i1, struct cb_id *i2) int cn_cb_equal(const struct cb_id *i1, const struct cb_id *i2)
{ {
return ((i1->idx == i2->idx) && (i1->val == i2->val)); return ((i1->idx == i2->idx) && (i1->val == i2->val));
} }
int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name, int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name,
struct cb_id *id, const struct cb_id *id,
void (*callback)(struct cn_msg *, void (*callback)(struct cn_msg *,
struct netlink_skb_parms *)) struct netlink_skb_parms *))
{ {
@ -90,7 +90,7 @@ int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name,
return 0; return 0;
} }
void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id) void cn_queue_del_callback(struct cn_queue_dev *dev, const struct cb_id *id)
{ {
struct cn_callback_entry *cbq, *n; struct cn_callback_entry *cbq, *n;
int found = 0; int found = 0;

View File

@ -193,7 +193,7 @@ static void cn_rx_skb(struct sk_buff *skb)
* *
* May sleep. * May sleep.
*/ */
int cn_add_callback(struct cb_id *id, const char *name, int cn_add_callback(const struct cb_id *id, const char *name,
void (*callback)(struct cn_msg *, void (*callback)(struct cn_msg *,
struct netlink_skb_parms *)) struct netlink_skb_parms *))
{ {
@ -214,7 +214,7 @@ EXPORT_SYMBOL_GPL(cn_add_callback);
* *
* May sleep while waiting for reference counter to become zero. * May sleep while waiting for reference counter to become zero.
*/ */
void cn_del_callback(struct cb_id *id) void cn_del_callback(const struct cb_id *id)
{ {
struct cn_dev *dev = &cdev; struct cn_dev *dev = &cdev;

View File

@ -64,14 +64,14 @@ struct cn_dev {
* @callback: connector's callback. * @callback: connector's callback.
* parameters are %cn_msg and the sender's credentials * parameters are %cn_msg and the sender's credentials
*/ */
int cn_add_callback(struct cb_id *id, const char *name, int cn_add_callback(const struct cb_id *id, const char *name,
void (*callback)(struct cn_msg *, struct netlink_skb_parms *)); void (*callback)(struct cn_msg *, struct netlink_skb_parms *));
/** /**
* cn_del_callback() - Unregisters new callback with connector core. * cn_del_callback() - Unregisters new callback with connector core.
* *
* @id: unique connector's user identifier. * @id: unique connector's user identifier.
*/ */
void cn_del_callback(struct cb_id *id); void cn_del_callback(const struct cb_id *id);
/** /**
@ -122,14 +122,14 @@ int cn_netlink_send_mult(struct cn_msg *msg, u16 len, u32 portid, u32 group, gfp
int cn_netlink_send(struct cn_msg *msg, u32 portid, u32 group, gfp_t gfp_mask); int cn_netlink_send(struct cn_msg *msg, u32 portid, u32 group, gfp_t gfp_mask);
int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name, int cn_queue_add_callback(struct cn_queue_dev *dev, const char *name,
struct cb_id *id, const struct cb_id *id,
void (*callback)(struct cn_msg *, struct netlink_skb_parms *)); void (*callback)(struct cn_msg *, struct netlink_skb_parms *));
void cn_queue_del_callback(struct cn_queue_dev *dev, struct cb_id *id); void cn_queue_del_callback(struct cn_queue_dev *dev, const struct cb_id *id);
void cn_queue_release_callback(struct cn_callback_entry *); void cn_queue_release_callback(struct cn_callback_entry *);
struct cn_queue_dev *cn_queue_alloc_dev(const char *name, struct sock *); struct cn_queue_dev *cn_queue_alloc_dev(const char *name, struct sock *);
void cn_queue_free_dev(struct cn_queue_dev *dev); void cn_queue_free_dev(struct cn_queue_dev *dev);
int cn_cb_equal(struct cb_id *, struct cb_id *); int cn_cb_equal(const struct cb_id *, const struct cb_id *);
#endif /* __CONNECTOR_H */ #endif /* __CONNECTOR_H */