diff options
author | Thomas Graf <tgraf@suug.ch> | 2008-06-03 16:36:54 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-06-03 16:36:54 -0700 |
commit | bc3ed28caaef55e7e3a9316464256353c5f9b1df (patch) | |
tree | 3aed4521aa2d74a36ee2b192c2e229fd23fbe732 /net/sched/sch_dsmark.c | |
parent | 1f9d11c7c99da706e33646c3a9080dd5a8ef9a0b (diff) | |
download | kernel_samsung_smdk4412-bc3ed28caaef55e7e3a9316464256353c5f9b1df.zip kernel_samsung_smdk4412-bc3ed28caaef55e7e3a9316464256353c5f9b1df.tar.gz kernel_samsung_smdk4412-bc3ed28caaef55e7e3a9316464256353c5f9b1df.tar.bz2 |
netlink: Improve returned error codes
Make nlmsg_trim(), nlmsg_cancel(), genlmsg_cancel(), and
nla_nest_cancel() void functions.
Return -EMSGSIZE instead of -1 if the provided message buffer is not
big enough.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_dsmark.c')
-rw-r--r-- | net/sched/sch_dsmark.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sched/sch_dsmark.c b/net/sched/sch_dsmark.c index 0df911f..64465ba 100644 --- a/net/sched/sch_dsmark.c +++ b/net/sched/sch_dsmark.c @@ -444,7 +444,8 @@ static int dsmark_dump_class(struct Qdisc *sch, unsigned long cl, return nla_nest_end(skb, opts); nla_put_failure: - return nla_nest_cancel(skb, opts); + nla_nest_cancel(skb, opts); + return -EMSGSIZE; } static int dsmark_dump(struct Qdisc *sch, struct sk_buff *skb) @@ -466,7 +467,8 @@ static int dsmark_dump(struct Qdisc *sch, struct sk_buff *skb) return nla_nest_end(skb, opts); nla_put_failure: - return nla_nest_cancel(skb, opts); + nla_nest_cancel(skb, opts); + return -EMSGSIZE; } static const struct Qdisc_class_ops dsmark_class_ops = { |