Netdev List
 help / color / mirror / Atom feed
* Re: [RFC PATCH ghak90 (was ghak32) V3 01/10] audit: add container id
From: Richard Guy Briggs @ 2018-07-24 19:06 UTC (permalink / raw)
  To: Paul Moore
  Cc: simo, jlayton, carlos, linux-api, containers, linux-kernel,
	Eric Paris, dhowells, linux-audit, ebiederm, luto, netdev,
	linux-fsdevel, cgroups, serge, viro
In-Reply-To: <CAHC9VhRk+qLAyizM9i8D+cjKxyhruuj_Z9N0QRmjM-fjm4hgRw@mail.gmail.com>

On 2018-07-20 18:13, Paul Moore wrote:
> On Wed, Jun 6, 2018 at 1:00 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > Implement the proc fs write to set the audit container identifier of a
> > process, emitting an AUDIT_CONTAINER_ID record to document the event.
> >
> > This is a write from the container orchestrator task to a proc entry of
> > the form /proc/PID/audit_containerid where PID is the process ID of the
> > newly created task that is to become the first task in a container, or
> > an additional task added to a container.
> >
> > The write expects up to a u64 value (unset: 18446744073709551615).
> >
> > The writer must have capability CAP_AUDIT_CONTROL.
> >
> > This will produce a record such as this:
> >   type=CONTAINER_ID msg=audit(2018-06-06 12:39:29.636:26949) : op=set opid=2209 old-contid=18446744073709551615 contid=123456 pid=628 auid=root uid=root tty=ttyS0 ses=1 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 comm=bash exe=/usr/bin/bash res=yes
> >
> > The "op" field indicates an initial set.  The "pid" to "ses" fields are
> > the orchestrator while the "opid" field is the object's PID, the process
> > being "contained".  Old and new audit container identifier values are
> > given in the "contid" fields, while res indicates its success.
> >
> > It is not permitted to unset or re-set the audit container identifier.
> > A child inherits its parent's audit container identifier, but then can
> > be set only once after.
> >
> > See: https://github.com/linux-audit/audit-kernel/issues/90
> > See: https://github.com/linux-audit/audit-userspace/issues/51
> > See: https://github.com/linux-audit/audit-testsuite/issues/64
> > See: https://github.com/linux-audit/audit-kernel/wiki/RFE-Audit-Container-ID
> >
> > Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
> > ---
> >  fs/proc/base.c             | 37 ++++++++++++++++++++++++
> >  include/linux/audit.h      | 25 ++++++++++++++++
> >  include/uapi/linux/audit.h |  2 ++
> >  kernel/auditsc.c           | 71 ++++++++++++++++++++++++++++++++++++++++++++++
> >  4 files changed, 135 insertions(+)
> 
> ...
> 
> > --- a/include/linux/audit.h
> > +++ b/include/linux/audit.h
> > @@ -606,6 +621,16 @@ static inline bool audit_loginuid_set(struct task_struct *tsk)
> >        return uid_valid(audit_get_loginuid(tsk));
> > }
> >
> > +static inline bool cid_valid(u64 contid)
> > +{
> > +       return contid != AUDIT_CID_UNSET;
> > +}
> > +
> > +static inline bool audit_contid_set(struct task_struct *tsk)
> > +{
> > +       return cid_valid(audit_get_contid(tsk));
> > +}
> 
> For the sake of consistency I think we should rename cid_valid() to
> audit_contid_valid().

Ok.

> > diff --git a/kernel/auditsc.c b/kernel/auditsc.c
> > index 59ef7a81..611e926 100644
> > --- a/kernel/auditsc.c
> > +++ b/kernel/auditsc.c
> > @@ -956,6 +956,8 @@ int audit_alloc(struct task_struct *tsk)
> >                 return -ENOMEM;
> >         info->loginuid = audit_get_loginuid(current);
> >         info->sessionid = audit_get_sessionid(current);
> > +       info->contid = audit_get_contid(current);
> > +       info->inherited = true;
> 
> First see my others comments in this patch about inheritence, but if
> we decide that flagging inherited values is important we should
> probably rename the "inherited" field to indicate that it applies to
> just the "contid" field.

Ok.

> >         tsk->audit = info;
> >
> >         if (likely(!audit_ever_enabled))
> > @@ -985,6 +987,8 @@ int audit_alloc(struct task_struct *tsk)
> >  struct audit_task_info init_struct_audit = {
> >         .loginuid = INVALID_UID,
> >         .sessionid = AUDIT_SID_UNSET,
> > +       .contid = AUDIT_CID_UNSET,
> > +       .inherited = true,
> >         .ctx = NULL,
> >  };
> >
> > @@ -2112,6 +2116,73 @@ int audit_set_loginuid(kuid_t loginuid)
> >  }
> >
> >  /**
> > + * audit_set_contid - set current task's audit_context contid
> > + * @contid: contid value
> > + *
> > + * Returns 0 on success, -EPERM on permission failure.
> > + *
> > + * Called (set) from fs/proc/base.c::proc_contid_write().
> > + */
> > +int audit_set_contid(struct task_struct *task, u64 contid)
> > +{
> > +       u64 oldcontid;
> > +       int rc = 0;
> > +       struct audit_buffer *ab;
> > +       uid_t uid;
> > +       struct tty_struct *tty;
> > +       char comm[sizeof(current->comm)];
> > +
> > +       /* Can't set if audit disabled */
> > +       if (!task->audit)
> > +               return -ENOPROTOOPT;
> > +       oldcontid = audit_get_contid(task);
> > +       /* Don't allow the audit containerid to be unset */
> > +       if (!cid_valid(contid))
> > +               rc = -EINVAL;
> > +       /* if we don't have caps, reject */
> > +       else if (!capable(CAP_AUDIT_CONTROL))
> > +               rc = -EPERM;
> > +       /* if task has children or is not single-threaded, deny */
> > +       else if (!list_empty(&task->children))
> > +               rc = -EBUSY;
> 
> Is this safe without holding tasklist_lock?  I worry we might be
> vulnerable to a race with fork().
> 
> > +       else if (!(thread_group_leader(task) && thread_group_empty(task)))
> > +               rc = -EALREADY;
> 
> Similar concern here as well, although related to threads.

I think you are correct here and tasklist_lock should cover both.  Do we
also want rcu_read_lock() immediately preceeding it?

> > +       /* it is already set, and not inherited from the parent, reject */
> > +       else if (cid_valid(oldcontid) && !task->audit->inherited)
> > +               rc = -EEXIST;
> 
> Maybe I'm missing something, but why do we care about preventing
> reassigning the audit container ID in this case?  The task is single
> threaded and has no descendants at this point so it should be safe,
> yes?  So long as the task changing the audit container ID has
> capable(CAP_AUDIT_CONTOL) it shouldn't matter, right?

Because we hammered out this idea 6 months ago in the design phase and I
thought we all firmly agreed that the audit container identifier could
only be set once.  Has any significant discussion happenned since then
to change that wisdom?  I just wonder why this is coming up now.

> Related, I'm questioning if we would ever care if the audit container
> ID was inherited or not?

We do since that is the only way we can tell if the value has been set
once already or inherited unless we check if the parent's audit
container identifier is identical (which tells us it was inherited).

> > +       if (!rc) {
> > +               task_lock(task);
> > +               task->audit->contid = contid;
> > +               task->audit->inherited = false;
> > +               task_unlock(task);
> 
> I suspect the task_lock() may not be what we want here, but if we are
> using task_lock() to protect the audit fields two things come to mind:
> 
> 1. We should update the header comments for task_lock() in task.h to
> indicate that it also protects ->audit.

Fair enough.

> 2. Where else do we need to worry about taking this lock?  At the very
> least we should take this lock near the top of this function before we
> check task->audit and not drop it until after we have set it, or
> failed the operation for one of the reasons above.

Agreed, since another process on another CPU could race attempting this
same operation.  However, the task_lock() comment precludes using it
with write_lock_irq(&task_lock) that might be required above.

> > +       }
> > +
> > +       if (!audit_enabled)
> > +               return rc;
> > +
> > +       ab = audit_log_start(audit_context(), GFP_KERNEL, AUDIT_CONTAINER_ID);
> > +       if (!ab)
> > +               return rc;
> > +
> > +       uid = from_kuid(&init_user_ns, task_uid(current));
> > +       tty = audit_get_tty(current);
> > +       audit_log_format(ab, "op=set opid=%d old-contid=%llu contid=%llu pid=%d uid=%u auid=%u tty=%s ses=%u",
> > +                        task_tgid_nr(task), oldcontid, contid,
> > +                        task_tgid_nr(current), uid
> > +                        from_kuid(&init_user_ns, audit_get_loginuid(current)),
> > +                        tty ? tty_name(tty) : "(none)",
> > +                        audit_get_sessionid(current));
> > +       audit_put_tty(tty);
> > +       audit_log_task_context(ab);
> > +       audit_log_format(ab, " comm=");
> > +       audit_log_untrustedstring(ab, get_task_comm(comm, current));
> > +       audit_log_d_path_exe(ab, current->mm);
> > +       audit_log_format(ab, " res=%d", !rc);
> > +       audit_log_end(ab);
> > +       return rc;
> > +}
> > +
> > +/**
> >   * __audit_mq_open - record audit data for a POSIX MQ open
> >   * @oflag: open flag
> >   * @mode: mode bits
> 
> --
> paul moore
> www.paul-moore.com

- RGB

--
Richard Guy Briggs <rgb@redhat.com>
Sr. S/W Engineer, Kernel Security, Base Operating Systems
Remote, Ottawa, Red Hat Canada
IRC: rgb, SunRaycer
Voice: +1.647.777.2635, Internal: (81) 32635

^ permalink raw reply

* [PATCH PATCH net-next 01/18] sched: fix trailing whitespace
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Remove trailing whitespace and blank lines at EOF

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/sched/Kconfig        | 4 ++--
 net/sched/Makefile       | 2 +-
 net/sched/act_connmark.c | 1 -
 net/sched/act_pedit.c    | 1 -
 net/sched/cls_basic.c    | 1 -
 5 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/net/sched/Kconfig b/net/sched/Kconfig
index 7af246764a35..bba71225adbd 100644
--- a/net/sched/Kconfig
+++ b/net/sched/Kconfig
@@ -1,6 +1,6 @@
 #
 # Traffic control configuration.
-# 
+#
 
 menuconfig NET_SCHED
 	bool "QoS and/or fair queueing"
@@ -706,7 +706,7 @@ config NET_CLS_ACT
 
 config NET_ACT_POLICE
 	tristate "Traffic Policing"
-        depends on NET_CLS_ACT 
+        depends on NET_CLS_ACT
         ---help---
 	  Say Y here if you want to do traffic policing, i.e. strict
 	  bandwidth limiting. This action replaces the existing policing
diff --git a/net/sched/Makefile b/net/sched/Makefile
index 673ee7d26ff2..910ec7463a36 100644
--- a/net/sched/Makefile
+++ b/net/sched/Makefile
@@ -33,7 +33,7 @@ obj-$(CONFIG_NET_SCH_HTB)	+= sch_htb.o
 obj-$(CONFIG_NET_SCH_HFSC)	+= sch_hfsc.o
 obj-$(CONFIG_NET_SCH_RED)	+= sch_red.o
 obj-$(CONFIG_NET_SCH_GRED)	+= sch_gred.o
-obj-$(CONFIG_NET_SCH_INGRESS)	+= sch_ingress.o 
+obj-$(CONFIG_NET_SCH_INGRESS)	+= sch_ingress.o
 obj-$(CONFIG_NET_SCH_DSMARK)	+= sch_dsmark.o
 obj-$(CONFIG_NET_SCH_SFB)	+= sch_sfb.o
 obj-$(CONFIG_NET_SCH_SFQ)	+= sch_sfq.o
diff --git a/net/sched/act_connmark.c b/net/sched/act_connmark.c
index 1e31f0e448e2..2f9bc833d046 100644
--- a/net/sched/act_connmark.c
+++ b/net/sched/act_connmark.c
@@ -252,4 +252,3 @@ module_exit(connmark_cleanup_module);
 MODULE_AUTHOR("Felix Fietkau <nbd-p3rKhJxN3npAfugRpC6u6w@public.gmane.org>");
 MODULE_DESCRIPTION("Connection tracking mark restoring");
 MODULE_LICENSE("GPL");
-
diff --git a/net/sched/act_pedit.c b/net/sched/act_pedit.c
index cc8ffcd1ddb5..9ab5d81aff1a 100644
--- a/net/sched/act_pedit.c
+++ b/net/sched/act_pedit.c
@@ -516,4 +516,3 @@ static void __exit pedit_cleanup_module(void)
 
 module_init(pedit_init_module);
 module_exit(pedit_cleanup_module);
-
diff --git a/net/sched/cls_basic.c b/net/sched/cls_basic.c
index 95367f37098d..6a5dce8baf19 100644
--- a/net/sched/cls_basic.c
+++ b/net/sched/cls_basic.c
@@ -324,4 +324,3 @@ static void __exit exit_basic(void)
 module_init(init_basic)
 module_exit(exit_basic)
 MODULE_LICENSE("GPL");

^ permalink raw reply related

* [PATCH PATCH net-next 02/18] wimax: remove blank lines at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/wimax/Makefile  | 2 --
 net/wimax/debugfs.c | 2 --
 net/wimax/op-msg.c  | 1 -
 net/wimax/stack.c   | 1 -
 4 files changed, 6 deletions(-)

diff --git a/net/wimax/Makefile b/net/wimax/Makefile
index eb2db0d3b880..c2a71ae487ac 100644
--- a/net/wimax/Makefile
+++ b/net/wimax/Makefile
@@ -11,5 +11,3 @@ wimax-y :=		\
 	stack.o
 
 wimax-$(CONFIG_DEBUG_FS) += debugfs.o
-
-
diff --git a/net/wimax/debugfs.c b/net/wimax/debugfs.c
index 6c9bedb7431e..24514840746e 100644
--- a/net/wimax/debugfs.c
+++ b/net/wimax/debugfs.c
@@ -76,5 +76,3 @@ void wimax_debugfs_rm(struct wimax_dev *wimax_dev)
 {
 	debugfs_remove_recursive(wimax_dev->debugfs_dentry);
 }
-
-
diff --git a/net/wimax/op-msg.c b/net/wimax/op-msg.c
index 54aa146930bd..101b2fa3f32e 100644
--- a/net/wimax/op-msg.c
+++ b/net/wimax/op-msg.c
@@ -404,4 +404,3 @@ int wimax_gnl_doit_msg_from_user(struct sk_buff *skb, struct genl_info *info)
 	d_fnend(3, NULL, "(skb %p info %p) = %d\n", skb, info, result);
 	return result;
 }
-
diff --git a/net/wimax/stack.c b/net/wimax/stack.c
index 73dba9c077bb..a6307813b6d5 100644
--- a/net/wimax/stack.c
+++ b/net/wimax/stack.c
@@ -630,4 +630,3 @@ module_exit(wimax_subsys_exit);
 MODULE_AUTHOR("Intel Corporation <linux-wimax-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>");
 MODULE_DESCRIPTION("Linux WiMAX stack");
 MODULE_LICENSE("GPL");

^ permalink raw reply related

* [PATCH PATCH net-next 05/18] mpls: remove trailing whitepace
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/mpls/mpls_iptunnel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/mpls/mpls_iptunnel.c b/net/mpls/mpls_iptunnel.c
index 6e558a419f60..94f53a9b7d1a 100644
--- a/net/mpls/mpls_iptunnel.c
+++ b/net/mpls/mpls_iptunnel.c
@@ -224,7 +224,7 @@ static int mpls_fill_encap_info(struct sk_buff *skb,
 				struct lwtunnel_state *lwtstate)
 {
 	struct mpls_iptunnel_encap *tun_encap_info;
-	
+
 	tun_encap_info = mpls_lwtunnel_encap(lwtstate);
 
 	if (nla_put_labels(skb, MPLS_IPTUNNEL_DST, tun_encap_info->labels,
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 06/18] xfrm: remove blank lines at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/xfrm/Kconfig     | 1 -
 net/xfrm/xfrm_user.c | 1 -
 2 files changed, 2 deletions(-)

diff --git a/net/xfrm/Kconfig b/net/xfrm/Kconfig
index 286ed25c1a69..eab952cca7d0 100644
--- a/net/xfrm/Kconfig
+++ b/net/xfrm/Kconfig
@@ -87,4 +87,3 @@ config NET_KEY_MIGRATE
 	  <draft-sugimoto-mip6-pfkey-migrate>.
 
 	  If unsure, say N.
-
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
index 080035f056d9..09cceab450b8 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -3280,4 +3280,3 @@ module_init(xfrm_user_init);
 module_exit(xfrm_user_exit);
 MODULE_LICENSE("GPL");
 MODULE_ALIAS_NET_PF_PROTO(PF_NETLINK, NETLINK_XFRM);

^ permalink raw reply related

* [PATCH PATCH net-next 08/18] sctp: whitespace fixes
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Remove blank line at EOF and trailing whitespace.

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/sctp/Kconfig         | 4 ++--
 net/sctp/sm_sideeffect.c | 1 -
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/net/sctp/Kconfig b/net/sctp/Kconfig
index c740b189d4ba..950ecf6e7439 100644
--- a/net/sctp/Kconfig
+++ b/net/sctp/Kconfig
@@ -41,8 +41,8 @@ config SCTP_DBG_OBJCNT
 	bool "SCTP: Debug object counts"
 	depends on PROC_FS
 	help
-	  If you say Y, this will enable debugging support for counting the 
-	  type of objects that are currently allocated.  This is useful for 
+	  If you say Y, this will enable debugging support for counting the
+	  type of objects that are currently allocated.  This is useful for
 	  identifying memory leaks. This debug information can be viewed by
 	  'cat /proc/net/sctp/sctp_dbg_objcnt'
 
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
index 298112ca8c06..85d393090238 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -1827,4 +1827,3 @@ static int sctp_cmd_interpreter(enum sctp_event event_type,
 	error = -ENOMEM;
 	goto out;
 }

^ permalink raw reply related

* [PATCH PATCH net-next 10/18] 9p: fix whitespace issues
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Remove trailing whitespace and blank lines at EOF

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/9p/client.c       | 4 ++--
 net/9p/trans_virtio.c | 2 +-
 net/9p/util.c         | 1 -
 3 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/net/9p/client.c b/net/9p/client.c
index 5c1343195292..ff02826e0407 100644
--- a/net/9p/client.c
+++ b/net/9p/client.c
@@ -341,7 +341,7 @@ struct p9_req_t *p9_tag_lookup(struct p9_client *c, u16 tag)
 	 * buffer to read the data into */
 	tag++;
 
-	if(tag >= c->max_tag) 
+	if (tag >= c->max_tag)
 		return NULL;
 
 	row = tag / P9_ROW_MAXTAG;
@@ -1576,7 +1576,7 @@ p9_client_read(struct p9_fid *fid, u64 offset, struct iov_iter *to, int *err)
 		int count = iov_iter_count(to);
 		int rsize, non_zc = 0;
 		char *dataptr;
-			
+
 		rsize = fid->iounit;
 		if (!rsize || rsize > clnt->msize-P9_IOHDRSZ)
 			rsize = clnt->msize - P9_IOHDRSZ;
diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c
index 05006cbb3361..279b24488d79 100644
--- a/net/9p/trans_virtio.c
+++ b/net/9p/trans_virtio.c
@@ -446,7 +446,7 @@ p9_virtio_zc_request(struct p9_client *client, struct p9_req_t *req,
 		out += pack_sg_list_p(chan->sg, out, VIRTQUEUE_NUM,
 				      out_pages, out_nr_pages, offs, outlen);
 	}
-		
+
 	/*
 	 * Take care of in data
 	 * For example TREAD have 11.
diff --git a/net/9p/util.c b/net/9p/util.c
index 59f278e64f58..55ad98277e85 100644
--- a/net/9p/util.c
+++ b/net/9p/util.c
@@ -138,4 +138,3 @@ int p9_idpool_check(int id, struct p9_idpool *p)
 	return idr_find(&p->pool, id) != NULL;
 }
 EXPORT_SYMBOL(p9_idpool_check);

^ permalink raw reply related

* [PATCH PATCH net-next 12/18] ax25: remove blank line at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/ax25/ax25_addr.c    | 1 -
 net/ax25/ax25_ds_in.c   | 1 -
 net/ax25/ax25_ds_subr.c | 1 -
 net/ax25/ax25_ip.c      | 1 -
 net/ax25/ax25_out.c     | 1 -
 5 files changed, 5 deletions(-)

diff --git a/net/ax25/ax25_addr.c b/net/ax25/ax25_addr.c
index ac2542b7be88..a14cfa736b63 100644
--- a/net/ax25/ax25_addr.c
+++ b/net/ax25/ax25_addr.c
@@ -304,4 +304,3 @@ void ax25_digi_invert(const ax25_digi *in, ax25_digi *out)
 		}
 	}
 }
-
diff --git a/net/ax25/ax25_ds_in.c b/net/ax25/ax25_ds_in.c
index 891596e74278..488fc2d7085a 100644
--- a/net/ax25/ax25_ds_in.c
+++ b/net/ax25/ax25_ds_in.c
@@ -299,4 +299,3 @@ int ax25_ds_frame_in(ax25_cb *ax25, struct sk_buff *skb, int type)
 
 	return queued;
 }
-
diff --git a/net/ax25/ax25_ds_subr.c b/net/ax25/ax25_ds_subr.c
index 28827e81ba2b..bc0329f43013 100644
--- a/net/ax25/ax25_ds_subr.c
+++ b/net/ax25/ax25_ds_subr.c
@@ -205,4 +205,3 @@ void ax25_dama_off(ax25_cb *ax25)
 	ax25->condition &= ~AX25_COND_DAMA_MODE;
 	ax25_dev_dama_off(ax25->ax25_dev);
 }
-
diff --git a/net/ax25/ax25_ip.c b/net/ax25/ax25_ip.c
index 183b1c583d56..70417e9b932d 100644
--- a/net/ax25/ax25_ip.c
+++ b/net/ax25/ax25_ip.c
@@ -249,4 +249,3 @@ const struct header_ops ax25_header_ops = {
 
 EXPORT_SYMBOL(ax25_header_ops);
 EXPORT_SYMBOL(ax25_ip_xmit);
-
diff --git a/net/ax25/ax25_out.c b/net/ax25/ax25_out.c
index b11a5f466fcc..3e5afc8dc93e 100644
--- a/net/ax25/ax25_out.c
+++ b/net/ax25/ax25_out.c
@@ -394,4 +394,3 @@ int ax25_check_iframes_acked(ax25_cb *ax25, unsigned short nr)
 	}
 	return 0;
 }

^ permalink raw reply related

* [PATCH PATCH net-next 18/18] net: remove blank lines at end of file
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q, ericvh-Re5JQEeQqe8AvxtiuMwx3w,
	rminnich-4OHPYypu0djtX7QSmKvirg, lucho-OnYtXJJ0/fesTnJN9+BGXg,
	ralf-6z/3iImG2C8G8FEW9MqTrA, jreuter-K7Hl1MveuGQ,
	pablo-Cap9r6Oaw4JrovVCs/uTlw,
	kadlec-K40Dz/62t/MgiyqX0sVFJYdd74u8MsAO,
	fw-HFFVJYpyMKqzQB+pC5nmwQ, alex.aring-Re5JQEeQqe8AvxtiuMwx3w,
	stefan-OrPQZGeq07wqhVmZOOOmNx2eb7JE58TQ,
	kuznet-v/Mj1YrvjDBInbfyfbPRSQ, yoshfuji-VfPWfsRibaP+Ru+s062T9g,
	johannes-cdvu00un1VgdHxzADdlk8Q, jhs-jkUAjuhPggJWk0Htik3J/w,
	xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w,
	jiri-rHqAuBHg3fBzbRFIqnYvSA, vyasevich-Re5JQEeQqe8AvxtiuMwx3w,
	nhorman-2XuSBdqkA4R54TAoqtyWWQ,
	marcelo.leitner-Re5JQEeQqe8AvxtiuMwx3w,
	trond.myklebust-F/q8l9xzQnoyLce1RVWEUA,
	anna.schumaker-HgOvQuBEEgTQT0dZR+AlfA,
	steffen.klassert-opNxpl+3fjRBDgjK7y7TUQ,
	herbert-lOAM2aK0SrRLBo1qDEOMRrpzq4S04n8Q
  Cc: netdev-u79uwXL29TY76Z2rM5mHXA,
	v9fs-developer-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	linux-hams-u79uwXL29TY76Z2rM5mHXA,
	ceph-devel-u79uwXL29TY76Z2rM5mHXA,
	linux-decnet-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f,
	netfilter-devel-u79uwXL29TY76Z2rM5mHXA,
	coreteam-Cap9r6Oaw4JrovVCs/uTlw,
	linux-wpan-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA,
	linux-nfs-u79uwXL29TY76Z2rM5mHXA,
	linux-x25-u79uwXL29TY76Z2rM5mHXA, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>

Several files have extra line at end of file.

Signed-off-by: Stephen Hemminger <stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org>
---
 net/8021q/Makefile              | 1 -
 net/Kconfig                     | 2 +-
 net/core/neighbour.c            | 1 -
 net/dns_resolver/dns_key.c      | 1 -
 net/ieee802154/core.c           | 1 -
 net/ieee802154/nl_policy.c      | 1 -
 net/ipv4/Kconfig                | 4 ++--
 net/ipv4/Makefile               | 2 +-
 net/ipv6/Kconfig                | 2 +-
 net/iucv/af_iucv.c              | 1 -
 net/kcm/Kconfig                 | 1 -
 net/kcm/kcmsock.c               | 1 -
 net/mac80211/rc80211_minstrel.c | 1 -
 13 files changed, 5 insertions(+), 14 deletions(-)

diff --git a/net/8021q/Makefile b/net/8021q/Makefile
index 9b703454b93e..e05d4d7aab35 100644
--- a/net/8021q/Makefile
+++ b/net/8021q/Makefile
@@ -9,4 +9,3 @@ obj-$(CONFIG_VLAN_8021Q)		+= 8021q.o
 8021q-$(CONFIG_VLAN_8021Q_GVRP)		+= vlan_gvrp.o
 8021q-$(CONFIG_VLAN_8021Q_MVRP)		+= vlan_mvrp.o
 8021q-$(CONFIG_PROC_FS)			+= vlanproc.o
-
diff --git a/net/Kconfig b/net/Kconfig
index f738a6f27665..228dfa382eec 100644
--- a/net/Kconfig
+++ b/net/Kconfig
@@ -12,7 +12,7 @@ menuconfig NET
 	  The reason is that some programs need kernel networking support even
 	  when running on a stand-alone machine that isn't connected to any
 	  other computer.
-	  
+
 	  If you are upgrading from an older kernel, you
 	  should consider updating your networking tools too because changes
 	  in the kernel and the tools often go hand in hand. The tools are
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index cbe85d8d4cc2..aa19d86937af 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -3274,4 +3274,3 @@ static int __init neigh_init(void)
 }
 
 subsys_initcall(neigh_init);
-
diff --git a/net/dns_resolver/dns_key.c b/net/dns_resolver/dns_key.c
index 0c9478b91fa5..7f4534828f6c 100644
--- a/net/dns_resolver/dns_key.c
+++ b/net/dns_resolver/dns_key.c
@@ -320,4 +320,3 @@ static void __exit exit_dns_resolver(void)
 module_init(init_dns_resolver)
 module_exit(exit_dns_resolver)
 MODULE_LICENSE("GPL");
-
diff --git a/net/ieee802154/core.c b/net/ieee802154/core.c
index cb7176cd4cd6..fe225d9a1877 100644
--- a/net/ieee802154/core.c
+++ b/net/ieee802154/core.c
@@ -400,4 +400,3 @@ module_exit(wpan_phy_class_exit);
 MODULE_LICENSE("GPL v2");
 MODULE_DESCRIPTION("IEEE 802.15.4 configuration interface");
 MODULE_AUTHOR("Dmitry Eremin-Solenikov");
-
diff --git a/net/ieee802154/nl_policy.c b/net/ieee802154/nl_policy.c
index 35c432668454..78f6f1233194 100644
--- a/net/ieee802154/nl_policy.c
+++ b/net/ieee802154/nl_policy.c
@@ -75,4 +75,3 @@ const struct nla_policy ieee802154_policy[IEEE802154_ATTR_MAX + 1] = {
 	[IEEE802154_ATTR_LLSEC_DEV_OVERRIDE] = { .type = NLA_U8, },
 	[IEEE802154_ATTR_LLSEC_DEV_KEY_MODE] = { .type = NLA_U8, },
 };
-
diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig
index 80dad301361d..32cae39cdff6 100644
--- a/net/ipv4/Kconfig
+++ b/net/ipv4/Kconfig
@@ -430,7 +430,7 @@ config INET_DIAG
 	  Support for INET (TCP, DCCP, etc) socket monitoring interface used by
 	  native Linux tools such as ss. ss is included in iproute2, currently
 	  downloadable at:
-	  
+
 	    http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2
 
 	  If unsure, say Y.
@@ -600,7 +600,7 @@ config TCP_CONG_VENO
 	distinguishing to circumvent the difficult judgment of the packet loss
 	type. TCP Veno cuts down less congestion window in response to random
 	loss packets.
-	See <http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=1177186> 
+	See <http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=1177186>
 
 config TCP_CONG_YEAH
 	tristate "YeAH TCP"
diff --git a/net/ipv4/Makefile b/net/ipv4/Makefile
index eec9569ffa5c..7446b98661d8 100644
--- a/net/ipv4/Makefile
+++ b/net/ipv4/Makefile
@@ -43,7 +43,7 @@ obj-$(CONFIG_INET_XFRM_MODE_TRANSPORT) += xfrm4_mode_transport.o
 obj-$(CONFIG_INET_XFRM_MODE_TUNNEL) += xfrm4_mode_tunnel.o
 obj-$(CONFIG_IP_PNP) += ipconfig.o
 obj-$(CONFIG_NETFILTER)	+= netfilter.o netfilter/
-obj-$(CONFIG_INET_DIAG) += inet_diag.o 
+obj-$(CONFIG_INET_DIAG) += inet_diag.o
 obj-$(CONFIG_INET_TCP_DIAG) += tcp_diag.o
 obj-$(CONFIG_INET_UDP_DIAG) += udp_diag.o
 obj-$(CONFIG_INET_RAW_DIAG) += raw_diag.o
diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig
index b3885ca22d6f..613282c65a10 100644
--- a/net/ipv6/Kconfig
+++ b/net/ipv6/Kconfig
@@ -15,7 +15,7 @@ menuconfig IPV6
 	  Documentation/networking/ipv6.txt and read the HOWTO at
 	  <http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/>
 
-	  To compile this protocol support as a module, choose M here: the 
+	  To compile this protocol support as a module, choose M here: the
 	  module will be called ipv6.
 
 if IPV6
diff --git a/net/iucv/af_iucv.c b/net/iucv/af_iucv.c
index 893a022f9620..8d1c43f8fed4 100644
--- a/net/iucv/af_iucv.c
+++ b/net/iucv/af_iucv.c
@@ -2515,4 +2515,3 @@ MODULE_DESCRIPTION("IUCV Sockets ver " VERSION);
 MODULE_VERSION(VERSION);
 MODULE_LICENSE("GPL");
 MODULE_ALIAS_NETPROTO(PF_IUCV);
-
diff --git a/net/kcm/Kconfig b/net/kcm/Kconfig
index 87fca36e6c47..9ca83f2ade6f 100644
--- a/net/kcm/Kconfig
+++ b/net/kcm/Kconfig
@@ -8,4 +8,3 @@ config AF_KCM
 	  KCM (Kernel Connection Multiplexor) sockets provide a method
 	  for multiplexing messages of a message based application
 	  protocol over kernel connectons (e.g. TCP connections).
-
diff --git a/net/kcm/kcmsock.c b/net/kcm/kcmsock.c
index d3601d421571..571d824e4e24 100644
--- a/net/kcm/kcmsock.c
+++ b/net/kcm/kcmsock.c
@@ -2104,4 +2104,3 @@ module_exit(kcm_exit);
 
 MODULE_LICENSE("GPL");
 MODULE_ALIAS_NETPROTO(PF_KCM);
-
diff --git a/net/mac80211/rc80211_minstrel.c b/net/mac80211/rc80211_minstrel.c
index 76048b53c5b2..07fb219327d6 100644
--- a/net/mac80211/rc80211_minstrel.c
+++ b/net/mac80211/rc80211_minstrel.c
@@ -751,4 +751,3 @@ rc80211_minstrel_exit(void)
 {
 	ieee80211_rate_control_unregister(&mac80211_minstrel);
 }

^ permalink raw reply related

* Re: [RFC PATCH ghak90 (was ghak32) V3 04/10] audit: add support for non-syscall auxiliary records
From: Richard Guy Briggs @ 2018-07-24 19:37 UTC (permalink / raw)
  To: Paul Moore
  Cc: simo, jlayton, carlos, linux-api, containers, linux-kernel,
	Eric Paris, dhowells, linux-audit, ebiederm, luto, netdev,
	linux-fsdevel, cgroups, serge, viro
In-Reply-To: <CAHC9VhRkH+UaZXfbsmfMsuCO7rQ48R5cBPU__00eG=pyO7AyCw@mail.gmail.com>

On 2018-07-20 18:14, Paul Moore wrote:
> On Wed, Jun 6, 2018 at 1:01 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > Standalone audit records have the timestamp and serial number generated
> > on the fly and as such are unique, making them standalone.  This new
> > function audit_alloc_local() generates a local audit context that will
> > be used only for a standalone record and its auxiliary record(s).  The
> > context is discarded immediately after the local associated records are
> > produced.
> >
> > Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
> > ---
> >  include/linux/audit.h |  8 ++++++++
> >  kernel/auditsc.c      | 25 +++++++++++++++++++++++--
> >  2 files changed, 31 insertions(+), 2 deletions(-)
> 
> ...
> 
> > --- a/kernel/auditsc.c
> > +++ b/kernel/auditsc.c
> > @@ -916,8 +916,11 @@ static inline void audit_free_aux(struct audit_context *context)
> >  static inline struct audit_context *audit_alloc_context(enum audit_state state)
> >  {
> >         struct audit_context *context;
> > +       gfp_t gfpflags;
> >
> > -       context = kzalloc(sizeof(*context), GFP_KERNEL);
> > +       /* We can be called in atomic context via audit_tg() */
> > +       gfpflags = (in_atomic() || irqs_disabled()) ? GFP_ATOMIC : GFP_KERNEL;
> 
> Instead of trying to guess the proper gfp flags, and likely getting it
> wrong at some point (the in_atomic() comment in preempt.h don't give
> me the warm fuzzies), why not pass the gfp flags as an argument?
> 
> Right now it looks like we would only have two callers: audit_alloc()
> and audit_audit_local().  The audit_alloc() invocation would simply
> pass GFP_KERNEL and we could allow the audit_alloc_local() callers to
> specify the gfp flags when calling audit_alloc_local() (although I
> suspect that will always be GFP_ATOMIC since we should only be calling
> audit_alloc_local() from interrupt-like context, in all other cases we
> should use the audit_context from the current task_struct.

Ok, I'll explicitly pass it in.

> > +       context = kzalloc(sizeof(*context), gfpflags);
> >         if (!context)
> >                 return NULL;
> >         context->state = state;
> > @@ -993,8 +996,26 @@ struct audit_task_info init_struct_audit = {
> >         .ctx = NULL,
> >  };
> >
> > -static inline void audit_free_context(struct audit_context *context)
> > +struct audit_context *audit_alloc_local(void)
> >  {
> 
> Let's see where this goes, but we may want to rename this slightly to
> indicate that this should only be called from interrupt context when
> we can't rely on current's audit_context.  Bonus points if we can find
> a way to enforce this with a WARN() assertion so we can better catch
> abuse.

I'll see what I can come up with.

> > +       struct audit_context *context;
> > +
> > +       if (!audit_ever_enabled)
> > +               return NULL; /* Return if not auditing. */
> > +
> > +       context = audit_alloc_context(AUDIT_RECORD_CONTEXT);
> > +       if (!context)
> > +               return NULL;
> > +       context->serial = audit_serial();
> > +       context->ctime = current_kernel_time64();
> > +       context->in_syscall = 1;
> 
> Setting in_syscall is both interesting and a bit troubling, if for no
> other reason than I expect most (all?) callers to be in an interrupt
> context when audit_alloc_local() is called.  Setting in_syscall would
> appear to be conceptually in this case.  Can you help explain why this
> is the right thing to do, or necessary to ensure things are handled
> correctly?

I'll admit this is cheating a bit, but seemed harmless.  It is needed so
that auditsc_get_stamp() from audit_get_stamp() from audit_log_start()
doesn't bail on me without giving me its already assigned time and
serial values rather than generating a new one.  I did look to see if
there were any other undesireable side effects and found none, so I'm
tmepted to rename the ->in_syscall to something a bit more helpful.  I
could add a new audit_context structure member to make
auditsc_get_stamp() co-operative, but this seems wasteful and
unnecessary.

> Looking quickly at the audit code, it seems to only be used on record
> and/or syscall termination to end things properly as well as in some
> of the PATH record code paths to limit filename collection to actual
> syscalls.  However, this was just a quick look so I could be missing
> some important points.
> 
> > +       return context;
> > +}
> > +
> > +void audit_free_context(struct audit_context *context)
> > +{
> > +       if (!context)
> > +               return;
> >         audit_free_names(context);
> >         unroll_tree_refs(context, NULL, 0);
> >         free_tree_refs(context);
> > --
> > 1.8.3.1
> >
> > --
> > Linux-audit mailing list
> > Linux-audit@redhat.com
> > https://www.redhat.com/mailman/listinfo/linux-audit
> 
> --
> paul moore
> www.paul-moore.com

- RGB

--
Richard Guy Briggs <rgb@redhat.com>
Sr. S/W Engineer, Kernel Security, Base Operating Systems
Remote, Ottawa, Red Hat Canada
IRC: rgb, SunRaycer
Voice: +1.647.777.2635, Internal: (81) 32635

^ permalink raw reply

* Re: [PATCHv3 net-next 2/2] selftests: add a selftest for directed broadcast forwarding
From: David Ahern @ 2018-07-24 18:36 UTC (permalink / raw)
  To: Xin Long; +Cc: network dev, davem, Davide Caratti, Ido Schimmel
In-Reply-To: <CADvbK_eje4O7ykBzZGQ_Yrg1Y-kaFfH58GcbAtBkGDqwft9GxQ@mail.gmail.com>

On 7/24/18 11:55 AM, Xin Long wrote:
> INFO: bc_forwarding disabled on r1 =>
> INFO: h1 -> net2: reply from r1 (not forwarding)
> TEST: ping 198.51.100.255, expected reply from 192.0.2.1            [PASS]
> INFO: h1 -> net3: reply from r1 (not forwarding)
> TEST: ping 198.51.200.255, expected reply from 192.0.2.1            [PASS]
> INFO: h1 -> net1: reply from r1 (not dropping)
> TEST: ping 192.0.2.255, expected reply from 192.0.2.1               [PASS]
> ....
> how about this?

Personally, I think that is backwards. So like this:

INFO: bc_forwarding disabled on r1 =>
INFO: ping 198.51.100.255, expected reply from 192.0.2.1
TEST: h1 -> net2: reply from r1 (not forwarding)              [PASS]
INFO: ping 198.51.200.255, expected reply from 192.0.2.1
TEST: h1 -> net3: reply from r1 (not forwarding)              [PASS]
INFO: ping 192.0.2.255, expected reply from 192.0.2.1
TEST: h1 -> net1: reply from r1 (not dropping)                [PASS]
...

^ permalink raw reply

* Re: [PATCH net-next v2] net: remove redundant input checks in SIOCSIFTXQLEN case of dev_ifsioc
From: David Miller @ 2018-07-24 18:36 UTC (permalink / raw)
  To: tariqt; +Cc: netdev, eranbe, xiyou.wangcong
In-Reply-To: <1532429580-9710-1-git-send-email-tariqt@mellanox.com>

From: Tariq Toukan <tariqt@mellanox.com>
Date: Tue, 24 Jul 2018 13:53:00 +0300

> The cited patch added a call to dev_change_tx_queue_len in
> SIOCSIFTXQLEN case.
> This obsoletes the new len comparison check done before the function call.
> Remove it here.
> 
> For the desicion of keep/remove the negative value check, we examine the
> range check in dev_change_tx_queue_len.
> On 64-bit we will fail with -ERANGE.  The 32-bit int ifr_qlen will be sign
> extended to 64-bits when it is passed into dev_change_tx_queue_len(). And
> then for negative values this test triggers:
> 
> 	if (new_len != (unsigned int)new_len)
> 		return -ERANGE;
> 
> because:
> 	if (0xffffffffWHATEVER != 0x00000000WHATEVER)
> 
> On 32-bit the signed value will be accepted, changing behavior.
> 
> Therefore, the negative value check is kept.
> 
> Fixes: 3f76df198288 ("net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN")
> Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
> Reviewed-by: Eran Ben Elisha <eranbe@mellanox.com>

Applied, thank you.

^ permalink raw reply

* Re: [PATCH net-next] virtio_net: force_napi_tx module param.
From: Michael S. Tsirkin @ 2018-07-24 18:38 UTC (permalink / raw)
  To: Willem de Bruijn
  Cc: caleb.raitto, Jason Wang, David Miller, Network Development,
	Caleb Raitto
In-Reply-To: <CAF=yD-JmhKHhXcUdfm39t=OV+5VMT90XdGWaaKSWK+kG5UBh8Q@mail.gmail.com>

On Tue, Jul 24, 2018 at 10:01:39AM -0400, Willem de Bruijn wrote:
> On Tue, Jul 24, 2018 at 6:44 AM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > On Mon, Jul 23, 2018 at 04:11:19PM -0700, Caleb Raitto wrote:
> > > From: Caleb Raitto <caraitto@google.com>
> > >
> > > The driver disables tx napi if it's not certain that completions will
> > > be processed affine with tx service.
> > >
> > > Its heuristic doesn't account for some scenarios where it is, such as
> > > when the queue pair count matches the core but not hyperthread count.
> > >
> > > Allow userspace to override the heuristic. This is an alternative
> > > solution to that in the linked patch. That added more logic in the
> > > kernel for these cases, but the agreement was that this was better left
> > > to user control.
> > >
> > > Do not expand the existing napi_tx variable to a ternary value,
> > > because doing so can break user applications that expect
> > > boolean ('Y'/'N') instead of integer output. Add a new param instead.
> > >
> > > Link: https://patchwork.ozlabs.org/patch/725249/
> > > Acked-by: Willem de Bruijn <willemb@google.com>
> > > Acked-by: Jon Olson <jonolson@google.com>
> > > Signed-off-by: Caleb Raitto <caraitto@google.com>
> >
> > Is there a reason the same rule should apply to all devices?
> > If not shouldn't this be an ethtool option?
> 
> It not very likely that a guest will have multiple virtio_net devices,
> some of which have affinity_hint_set and some do not?

Just to answer this question, I do hear a lot about guests with multiple
virtio net interfaces.  These might be just the noisy few, but they do
exist.

> I'd really rather not add the extra option at all, but remove
> the affinity_hint_set requirement for now. Without more data,
> I understand the concern about cacheline bouncing if napi-tx
> would becomes the default at some point and we don't have
> data on this by then. But while it isn't default and a user has to
> opt in to napi-tx to try it that seems enough guardrail to me.
> 
> The original reason was lack of data on whether napi-tx may suffer
> from cache invalidations when tx and rx softirq are on different cpus
> and we enable tx descriptor cleaning from the rx handler (i.e., on ACK).
> >From those initial numbers it seemed to be a win even with those
> invalidations.
> 
>   https://patchwork.ozlabs.org/patch/746232/
> 
> In lieu of removing the affinity_hint_set, this boolean is the least amount
> of both new interface and implementation to allow experimentation. We
> can easily leave it as a noop eventually when we are confident that
> napi-tx can be enabled even without affinity. By comparison, an ethtool
> param would be quite a bit of new logic.

So it boils down to this: if we believe napi tx is
always a good idea, then this flag is there just in case,
and the patch is fine. If it's good for some workloads
but not others, and will be for a while, we are better off
with an ethtool flag.

What's the case here?

OTOH if you want to add more trick to the affinity hint, such
as the mentioned above # of queues matching core count,
that is also fine IMHO.

-- 
MST

^ permalink raw reply

* Re: [RFC PATCH ghak90 (was ghak32) V3 08/10] audit: NETFILTER_PKT: record each container ID associated with a netNS
From: Steve Grubb @ 2018-07-24 19:48 UTC (permalink / raw)
  To: Paul Moore
  Cc: rgb, cgroups, containers, linux-api, linux-audit, linux-fsdevel,
	linux-kernel, netdev, ebiederm, luto, jlayton, carlos, dhowells,
	viro, simo, Eric Paris, serge
In-Reply-To: <CAHC9VhQCxdOzcYHFtJ8eTLkNQxwvdAnuLOEguqHT_zU4V9d0OA@mail.gmail.com>

On Friday, July 20, 2018 6:15:00 PM EDT Paul Moore wrote:
> On Wed, Jun 6, 2018 at 1:03 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > Add audit container identifier auxiliary record(s) to NETFILTER_PKT
> > event standalone records.  Iterate through all potential audit container
> > identifiers associated with a network namespace.
> > 
> > Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
> > ---
> > include/linux/audit.h    |  5 +++++
> > kernel/audit.c           | 20 +++++++++++++++++++-
> > kernel/auditsc.c         |  2 ++
> > net/netfilter/xt_AUDIT.c | 12 ++++++++++--
> > 4 files changed, 36 insertions(+), 3 deletions(-)
> 
> ...
> 
> > diff --git a/include/linux/audit.h b/include/linux/audit.h
> > index 7e2e51c..4560a4e 100644
> > --- a/include/linux/audit.h
> > +++ b/include/linux/audit.h
> > @@ -167,6 +167,8 @@ extern int audit_log_contid(struct audit_context
> > *context, extern void audit_contid_add(struct net *net, u64 contid);
> > extern void audit_contid_del(struct net *net, u64 contid);
> > extern void audit_switch_task_namespaces(struct nsproxy *ns, struct
> > task_struct *p); +extern void audit_log_contid_list(struct net *net,
> > +                                struct audit_context *context);
> 
> See my comment in previous patches about changing the function name to
> better indicate it's dedicate use for network namespaces.
> 
> > extern int                 audit_update_lsm_rules(void);
> > 
> > @@ -231,6 +233,9 @@ static inline void audit_contid_del(struct net *net,
> > u64 contid) { }
> > static inline void audit_switch_task_namespaces(struct nsproxy *ns,
> > struct task_struct *p) { }
> > +static inline void audit_log_contid_list(struct net *net,
> > +                                       struct audit_context *context)
> > +{ }
> > 
> > #define audit_enabled 0
> > #endif /* CONFIG_AUDIT */
> > diff --git a/kernel/audit.c b/kernel/audit.c
> > index ecd2de4..8cca41a 100644
> > --- a/kernel/audit.c
> > +++ b/kernel/audit.c
> > @@ -382,6 +382,20 @@ void audit_switch_task_namespaces(struct nsproxy
> > *ns, struct task_struct *p) audit_contid_add(new->net_ns, contid);
> > }
> > 
> > +void audit_log_contid_list(struct net *net, struct audit_context
> > *context) +{
> > +       struct audit_contid *cont;
> > +       int i = 0;
> > +
> > +       list_for_each_entry(cont, audit_get_contid_list(net), list) {
> > +               char buf[14];
> > +
> > +               sprintf(buf, "net%u", i++);
> > +               audit_log_contid(context, buf, cont->id);
> 
> Hmm.  It looks like this will generate multiple audit container ID
> records with "op=netX contid=Y" (X=netns number, Y=audit container
> ID), is that what we want?  I've mentioned my concern around the "op"
> values in these records earlier in the patchset, that still applies
> here, but now I'm also concerned about the multiple records.  I'm
> thinking we might be better served with a single record with either
> multiple "contid" fields, or a single "contid" field with a set of
> comma separated values (or some other delimiter that Steve's tools
> will tolerate).
> 
> Steve, thoughts?

A single record is best. Maybe pattern this after the args listed in an 
execve record.

-Steve

^ permalink raw reply

* [PATCH v2] bpf: Add Python 3 support to selftests scripts for bpf
From: Jeremy Cline @ 2018-07-24 19:53 UTC (permalink / raw)
  To: Alexei Starovoitov, Daniel Borkmann, Shuah Khan
  Cc: Lawrence Brakmo, netdev, linux-kernel, linux-kselftest,
	Jeremy Cline

Adjust tcp_client.py and tcp_server.py to work with Python 3 by using
the print function, marking string literals as bytes, and using the
newer exception syntax. This should be functionally equivalent and
supports Python 3+.

Signed-off-by: Jeremy Cline <jcline@redhat.com>
---

Changes since v1:
  - Drop Python 2 support

 tools/testing/selftests/bpf/tcp_client.py | 12 ++++++------
 tools/testing/selftests/bpf/tcp_server.py | 16 ++++++++--------
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/tools/testing/selftests/bpf/tcp_client.py b/tools/testing/selftests/bpf/tcp_client.py
index 481dccdf140c..7f8200a8702b 100755
--- a/tools/testing/selftests/bpf/tcp_client.py
+++ b/tools/testing/selftests/bpf/tcp_client.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python2
+#!/usr/bin/env python3
 #
 # SPDX-License-Identifier: GPL-2.0
 #
@@ -9,11 +9,11 @@ import subprocess
 import select
 
 def read(sock, n):
-    buf = ''
+    buf = b''
     while len(buf) < n:
         rem = n - len(buf)
         try: s = sock.recv(rem)
-        except (socket.error), e: return ''
+        except (socket.error) as e: return b''
         buf += s
     return buf
 
@@ -22,7 +22,7 @@ def send(sock, s):
     count = 0
     while count < total:
         try: n = sock.send(s)
-        except (socket.error), e: n = 0
+        except (socket.error) as e: n = 0
         if n == 0:
             return count;
         count += n
@@ -39,10 +39,10 @@ try:
 except socket.error as e:
     sys.exit(1)
 
-buf = ''
+buf = b''
 n = 0
 while n < 1000:
-    buf += '+'
+    buf += b'+'
     n += 1
 
 sock.settimeout(1);
diff --git a/tools/testing/selftests/bpf/tcp_server.py b/tools/testing/selftests/bpf/tcp_server.py
index bc454d7d0be2..b39903fca4c8 100755
--- a/tools/testing/selftests/bpf/tcp_server.py
+++ b/tools/testing/selftests/bpf/tcp_server.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python2
+#!/usr/bin/env python3
 #
 # SPDX-License-Identifier: GPL-2.0
 #
@@ -9,11 +9,11 @@ import subprocess
 import select
 
 def read(sock, n):
-    buf = ''
+    buf = b''
     while len(buf) < n:
         rem = n - len(buf)
         try: s = sock.recv(rem)
-        except (socket.error), e: return ''
+        except (socket.error) as e: return b''
         buf += s
     return buf
 
@@ -22,7 +22,7 @@ def send(sock, s):
     count = 0
     while count < total:
         try: n = sock.send(s)
-        except (socket.error), e: n = 0
+        except (socket.error) as e: n = 0
         if n == 0:
             return count;
         count += n
@@ -43,7 +43,7 @@ host = socket.gethostname()
 
 try: serverSocket.bind((host, 0))
 except socket.error as msg:
-    print 'bind fails: ', msg
+    print('bind fails: ' + str(msg))
 
 sn = serverSocket.getsockname()
 serverPort = sn[1]
@@ -51,10 +51,10 @@ serverPort = sn[1]
 cmdStr = ("./tcp_client.py %d &") % (serverPort)
 os.system(cmdStr)
 
-buf = ''
+buf = b''
 n = 0
 while n < 500:
-    buf += '.'
+    buf += b'.'
     n += 1
 
 serverSocket.listen(MAX_PORTS)
@@ -79,5 +79,5 @@ while True:
                 serverSocket.close()
                 sys.exit(0)
     else:
-        print 'Select timeout!'
+        print('Select timeout!')
         sys.exit(1)
-- 
2.17.1

^ permalink raw reply related

* Re: [PATCH v3 bpf-next 3/8] veth: Avoid drops by oversized packets when XDP is enabled
From: Jakub Kicinski @ 2018-07-24 19:10 UTC (permalink / raw)
  To: Toshiaki Makita
  Cc: Toshiaki Makita, netdev, Alexei Starovoitov, Daniel Borkmann,
	Jesper Dangaard Brouer
In-Reply-To: <709ccfa0-fcd8-bd48-1e85-2960bbe232dd@lab.ntt.co.jp>

On Tue, 24 Jul 2018 18:39:09 +0900, Toshiaki Makita wrote:
> On 2018/07/24 10:56, Toshiaki Makita wrote:
> > On 2018/07/24 9:27, Jakub Kicinski wrote:  
> >> On Mon, 23 Jul 2018 00:13:03 +0900, Toshiaki Makita wrote:  
> >>> From: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
> >>>
> >>> All oversized packets including GSO packets are dropped if XDP is
> >>> enabled on receiver side, so don't send such packets from peer.
> >>>
> >>> Drop TSO and SCTP fragmentation features so that veth devices themselves
> >>> segment packets with XDP enabled. Also cap MTU accordingly.
> >>>
> >>> Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>  
> >>
> >> Is there any precedence for fixing up features and MTU like this?  Most
> >> drivers just refuse to install the program if settings are incompatible.  
> > 
> > I don't know any precedence. I can refuse the program on installing it
> > when features and MTU are not appropriate. Is it preferred?
> > Note that with current implementation wanted_features are not touched so
> > features will be restored when the XDP program is removed. MTU will not
> > be restored though, as I do not remember the original MTU.  
> 
> I just recalled that virtio_net used to refused XDP when guest offload
> features are incompatible but now it dynamically fixup them on
> installing an XDP program.
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=3f93522ffab2d46a36b57adf324a54e674fc9536

That's slightly different AFAIU, because the virtio features weren't
really controllable at runtime at all.  I'm not dead set on leaving the
features be, but I just want to make sure we think this through
properly before we commit to any magic behaviour for ever...

Taking a quick glance at the MTU side, it seems that today if someone
decides to set MTU on one side of a veth pair the packets will simply
get dropped.  So the MTU coupling for XDP doesn't seem in line with
existing behaviour of veth, not only other XDP drivers.

^ permalink raw reply

* Re: [RFC PATCH ghak90 (was ghak32) V3 08/10] audit: NETFILTER_PKT: record each container ID associated with a netNS
From: Paul Moore @ 2018-07-24 20:22 UTC (permalink / raw)
  To: sgrubb
  Cc: rgb, cgroups, containers, linux-api, linux-audit, linux-fsdevel,
	linux-kernel, netdev, ebiederm, luto, jlayton, carlos, dhowells,
	viro, simo, Eric Paris, serge
In-Reply-To: <1748819.SHaROlQLoH@x2>

On Tue, Jul 24, 2018 at 3:48 PM Steve Grubb <sgrubb@redhat.com> wrote:
> On Friday, July 20, 2018 6:15:00 PM EDT Paul Moore wrote:
> > On Wed, Jun 6, 2018 at 1:03 PM Richard Guy Briggs <rgb@redhat.com> wrote:
> > > Add audit container identifier auxiliary record(s) to NETFILTER_PKT
> > > event standalone records.  Iterate through all potential audit container
> > > identifiers associated with a network namespace.
> > >
> > > Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
> > > ---
> > > include/linux/audit.h    |  5 +++++
> > > kernel/audit.c           | 20 +++++++++++++++++++-
> > > kernel/auditsc.c         |  2 ++
> > > net/netfilter/xt_AUDIT.c | 12 ++++++++++--
> > > 4 files changed, 36 insertions(+), 3 deletions(-)
> >
> > ...
> >
> > > diff --git a/include/linux/audit.h b/include/linux/audit.h
> > > index 7e2e51c..4560a4e 100644
> > > --- a/include/linux/audit.h
> > > +++ b/include/linux/audit.h
> > > @@ -167,6 +167,8 @@ extern int audit_log_contid(struct audit_context
> > > *context, extern void audit_contid_add(struct net *net, u64 contid);
> > > extern void audit_contid_del(struct net *net, u64 contid);
> > > extern void audit_switch_task_namespaces(struct nsproxy *ns, struct
> > > task_struct *p); +extern void audit_log_contid_list(struct net *net,
> > > +                                struct audit_context *context);
> >
> > See my comment in previous patches about changing the function name to
> > better indicate it's dedicate use for network namespaces.
> >
> > > extern int                 audit_update_lsm_rules(void);
> > >
> > > @@ -231,6 +233,9 @@ static inline void audit_contid_del(struct net *net,
> > > u64 contid) { }
> > > static inline void audit_switch_task_namespaces(struct nsproxy *ns,
> > > struct task_struct *p) { }
> > > +static inline void audit_log_contid_list(struct net *net,
> > > +                                       struct audit_context *context)
> > > +{ }
> > >
> > > #define audit_enabled 0
> > > #endif /* CONFIG_AUDIT */
> > > diff --git a/kernel/audit.c b/kernel/audit.c
> > > index ecd2de4..8cca41a 100644
> > > --- a/kernel/audit.c
> > > +++ b/kernel/audit.c
> > > @@ -382,6 +382,20 @@ void audit_switch_task_namespaces(struct nsproxy
> > > *ns, struct task_struct *p) audit_contid_add(new->net_ns, contid);
> > > }
> > >
> > > +void audit_log_contid_list(struct net *net, struct audit_context
> > > *context) +{
> > > +       struct audit_contid *cont;
> > > +       int i = 0;
> > > +
> > > +       list_for_each_entry(cont, audit_get_contid_list(net), list) {
> > > +               char buf[14];
> > > +
> > > +               sprintf(buf, "net%u", i++);
> > > +               audit_log_contid(context, buf, cont->id);
> >
> > Hmm.  It looks like this will generate multiple audit container ID
> > records with "op=netX contid=Y" (X=netns number, Y=audit container
> > ID), is that what we want?  I've mentioned my concern around the "op"
> > values in these records earlier in the patchset, that still applies
> > here, but now I'm also concerned about the multiple records.  I'm
> > thinking we might be better served with a single record with either
> > multiple "contid" fields, or a single "contid" field with a set of
> > comma separated values (or some other delimiter that Steve's tools
> > will tolerate).
> >
> > Steve, thoughts?
>
> A single record is best. Maybe pattern this after the args listed in an
> execve record.

I'm concerned that an execve-like approach might not scale very well
as would could potentially have a lot of containers sharing a single
network namespace ("a%d=%d" vs ",%d").  Further, with execve we log
the argument position in addition to the argument itself, that isn't
something we need to worry about with the audit container IDs.

-- 
paul moore
www.paul-moore.com

^ permalink raw reply

* [PATCH PATCH net-next 00/18] net whitespace cleanups
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger

Ran script that I use to check for trailing whitespace and
blank lines at end of files across all files in net/ directory.
These are errors that checkpatch reports and git flags.

These are the resulting fixes broken up mostly by subsystem.

Stephen Hemminger (18):
  sched: fix trailing whitespace
  wimax: remove blank lines at EOF
  rds: remove trailing whitespace and blank lines
  llc: fix whitespace issues
  mpls: remove trailing whitepace
  xfrm: remove blank lines at EOF
  ceph: fix whitespace
  sctp: whitespace fixes
  ila: remove blank lines at EOF
  9p: fix whitespace issues
  atm: remove blank lines at EOF
  ax25: remove blank line at EOF
  x25: remove blank lines at EOF
  decnet: whitespace fixes
  sunrpc: whitespace fixes
  bpfilter: remove trailing newline
  l2tp: remove trailing newline
  net: remove blank lines at end of file

 net/8021q/Makefile                      | 1 -
 net/9p/client.c                         | 4 ++--
 net/9p/trans_virtio.c                   | 2 +-
 net/9p/util.c                           | 1 -
 net/Kconfig                             | 2 +-
 net/atm/mpoa_proc.c                     | 6 ------
 net/ax25/ax25_addr.c                    | 1 -
 net/ax25/ax25_ds_in.c                   | 1 -
 net/ax25/ax25_ds_subr.c                 | 1 -
 net/ax25/ax25_ip.c                      | 1 -
 net/ax25/ax25_out.c                     | 1 -
 net/bpfilter/Kconfig                    | 1 -
 net/ceph/Kconfig                        | 1 -
 net/ceph/Makefile                       | 1 -
 net/ceph/auth_none.c                    | 1 -
 net/ceph/auth_none.h                    | 1 -
 net/ceph/auth_x.c                       | 2 --
 net/ceph/auth_x.h                       | 1 -
 net/ceph/mon_client.c                   | 2 +-
 net/ceph/pagevec.c                      | 1 -
 net/core/neighbour.c                    | 1 -
 net/decnet/Kconfig                      | 1 -
 net/decnet/Makefile                     | 1 -
 net/decnet/TODO                         | 5 ++---
 net/decnet/dn_fib.c                     | 2 --
 net/decnet/dn_nsp_in.c                  | 1 -
 net/decnet/dn_nsp_out.c                 | 1 -
 net/decnet/dn_route.c                   | 1 -
 net/decnet/dn_rules.c                   | 2 --
 net/decnet/netfilter/Makefile           | 1 -
 net/decnet/netfilter/dn_rtmsg.c         | 1 -
 net/dns_resolver/dns_key.c              | 1 -
 net/ieee802154/core.c                   | 1 -
 net/ieee802154/nl_policy.c              | 1 -
 net/ipv4/Kconfig                        | 4 ++--
 net/ipv4/Makefile                       | 2 +-
 net/ipv4/bpfilter/Makefile              | 1 -
 net/ipv6/Kconfig                        | 2 +-
 net/ipv6/ila/ila_common.c               | 1 -
 net/ipv6/ila/ila_xlat.c                 | 1 -
 net/iucv/af_iucv.c                      | 1 -
 net/kcm/Kconfig                         | 1 -
 net/kcm/kcmsock.c                       | 1 -
 net/l2tp/l2tp_core.c                    | 1 -
 net/llc/Kconfig                         | 2 +-
 net/llc/Makefile                        | 2 +-
 net/llc/llc_if.c                        | 1 -
 net/mac80211/rc80211_minstrel.c         | 1 -
 net/mpls/mpls_iptunnel.c                | 2 +-
 net/rds/Kconfig                         | 1 -
 net/rds/Makefile                        | 1 -
 net/rds/ib.c                            | 1 -
 net/rds/message.c                       | 1 -
 net/rds/rdma_transport.c                | 1 -
 net/rds/tcp.c                           | 1 -
 net/rds/transport.c                     | 1 -
 net/sched/Kconfig                       | 4 ++--
 net/sched/Makefile                      | 2 +-
 net/sched/act_connmark.c                | 1 -
 net/sched/act_pedit.c                   | 1 -
 net/sched/cls_basic.c                   | 1 -
 net/sctp/Kconfig                        | 4 ++--
 net/sctp/sm_sideeffect.c                | 1 -
 net/sunrpc/auth_gss/auth_gss.c          | 2 +-
 net/sunrpc/auth_gss/gss_generic_token.c | 1 -
 net/sunrpc/auth_gss/gss_krb5_crypto.c   | 1 -
 net/sunrpc/auth_gss/gss_krb5_keys.c     | 1 -
 net/sunrpc/auth_gss/gss_krb5_seal.c     | 1 -
 net/sunrpc/auth_gss/gss_krb5_unseal.c   | 1 -
 net/sunrpc/auth_gss/gss_krb5_wrap.c     | 1 -
 net/sunrpc/auth_gss/svcauth_gss.c       | 2 +-
 net/sunrpc/backchannel_rqst.c           | 1 -
 net/sunrpc/clnt.c                       | 2 +-
 net/sunrpc/rpcb_clnt.c                  | 2 +-
 net/sunrpc/stats.c                      | 1 -
 net/sunrpc/sunrpc.h                     | 1 -
 net/sunrpc/xprt.c                       | 2 +-
 net/sunrpc/xprtsock.c                   | 1 -
 net/wimax/Makefile                      | 2 --
 net/wimax/debugfs.c                     | 2 --
 net/wimax/op-msg.c                      | 1 -
 net/wimax/stack.c                       | 1 -
 net/x25/Kconfig                         | 2 --
 net/x25/x25_subr.c                      | 1 -
 net/xfrm/Kconfig                        | 1 -
 net/xfrm/xfrm_user.c                    | 1 -
 86 files changed, 24 insertions(+), 103 deletions(-)

-- 
2.18.0

^ permalink raw reply

* [PATCH PATCH net-next 03/18] rds: remove trailing whitespace and blank lines
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/rds/Kconfig          | 1 -
 net/rds/Makefile         | 1 -
 net/rds/ib.c             | 1 -
 net/rds/message.c        | 1 -
 net/rds/rdma_transport.c | 1 -
 net/rds/tcp.c            | 1 -
 net/rds/transport.c      | 1 -
 7 files changed, 7 deletions(-)

diff --git a/net/rds/Kconfig b/net/rds/Kconfig
index bffde4b46c5d..41f75563b54b 100644
--- a/net/rds/Kconfig
+++ b/net/rds/Kconfig
@@ -24,4 +24,3 @@ config RDS_DEBUG
         bool "RDS debugging messages"
 	depends on RDS
         default n
-
diff --git a/net/rds/Makefile b/net/rds/Makefile
index b5d568bd479c..e647f9de104a 100644
--- a/net/rds/Makefile
+++ b/net/rds/Makefile
@@ -15,4 +15,3 @@ rds_tcp-y :=		tcp.o tcp_connect.o tcp_listen.o tcp_recv.o \
 			tcp_send.o tcp_stats.o
 
 ccflags-$(CONFIG_RDS_DEBUG)	:=	-DRDS_DEBUG
-
diff --git a/net/rds/ib.c b/net/rds/ib.c
index 63d95ea7cdff..a4245c42d43b 100644
--- a/net/rds/ib.c
+++ b/net/rds/ib.c
@@ -568,4 +568,3 @@ int rds_ib_init(void)
 }
 
 MODULE_LICENSE("GPL");
-
diff --git a/net/rds/message.c b/net/rds/message.c
index a35f76971984..4b00b1152a5f 100644
--- a/net/rds/message.c
+++ b/net/rds/message.c
@@ -514,4 +514,3 @@ void rds_message_unmapped(struct rds_message *rm)
 	wake_up_interruptible(&rm->m_flush_wait);
 }
 EXPORT_SYMBOL_GPL(rds_message_unmapped);
-
diff --git a/net/rds/rdma_transport.c b/net/rds/rdma_transport.c
index bd67e55354f4..ad78929036ef 100644
--- a/net/rds/rdma_transport.c
+++ b/net/rds/rdma_transport.c
@@ -281,4 +281,3 @@ module_exit(rds_rdma_exit);
 MODULE_AUTHOR("Oracle Corporation <rds-devel@oss.oracle.com>");
 MODULE_DESCRIPTION("RDS: IB transport");
 MODULE_LICENSE("Dual BSD/GPL");
-
diff --git a/net/rds/tcp.c b/net/rds/tcp.c
index 7028d6e51947..f23925af0b8d 100644
--- a/net/rds/tcp.c
+++ b/net/rds/tcp.c
@@ -717,4 +717,3 @@ module_init(rds_tcp_init);
 MODULE_AUTHOR("Oracle Corporation <rds-devel@oss.oracle.com>");
 MODULE_DESCRIPTION("RDS: TCP transport");
 MODULE_LICENSE("Dual BSD/GPL");
-
diff --git a/net/rds/transport.c b/net/rds/transport.c
index c9788dbce441..46f709a4b577 100644
--- a/net/rds/transport.c
+++ b/net/rds/transport.c
@@ -159,4 +159,3 @@ unsigned int rds_trans_stats_info_copy(struct rds_info_iterator *iter,
 
 	return total;
 }
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 04/18] llc: fix whitespace issues
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/llc/Kconfig  | 2 +-
 net/llc/Makefile | 2 +-
 net/llc/llc_if.c | 1 -
 3 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/net/llc/Kconfig b/net/llc/Kconfig
index b91c65108162..176a6c1521a5 100644
--- a/net/llc/Kconfig
+++ b/net/llc/Kconfig
@@ -6,5 +6,5 @@ config LLC2
 	tristate "ANSI/IEEE 802.2 LLC type 2 Support"
 	select LLC
 	help
-	  This is a Logical Link Layer type 2, connection oriented support. 
+	  This is a Logical Link Layer type 2, connection oriented support.
 	  Select this if you want to have support for PF_LLC sockets.
diff --git a/net/llc/Makefile b/net/llc/Makefile
index 4e260cff3c5d..5e0ef436daae 100644
--- a/net/llc/Makefile
+++ b/net/llc/Makefile
@@ -4,7 +4,7 @@
 # Copyright (c) 1997 by Procom Technology,Inc.
 #		2001-2003 by Arnaldo Carvalho de Melo <acme@conectiva.com.br>
 #
-# This program can be redistributed or modified under the terms of the 
+# This program can be redistributed or modified under the terms of the
 # GNU General Public License as published by the Free Software Foundation.
 # This program is distributed without any warranty or implied warranty
 # of merchantability or fitness for a particular purpose.
diff --git a/net/llc/llc_if.c b/net/llc/llc_if.c
index 6daf391b3e84..8db03c2d5440 100644
--- a/net/llc/llc_if.c
+++ b/net/llc/llc_if.c
@@ -151,4 +151,3 @@ int llc_send_disc(struct sock *sk)
 	sock_put(sk);
 	return rc;
 }
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 07/18] ceph: fix whitespace
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Remove blank lines at end of file and trailing whitespace.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/ceph/Kconfig      | 1 -
 net/ceph/Makefile     | 1 -
 net/ceph/auth_none.c  | 1 -
 net/ceph/auth_none.h  | 1 -
 net/ceph/auth_x.c     | 2 --
 net/ceph/auth_x.h     | 1 -
 net/ceph/mon_client.c | 2 +-
 net/ceph/pagevec.c    | 1 -
 8 files changed, 1 insertion(+), 9 deletions(-)

diff --git a/net/ceph/Kconfig b/net/ceph/Kconfig
index f8cceb99e732..cd2d5b9301a1 100644
--- a/net/ceph/Kconfig
+++ b/net/ceph/Kconfig
@@ -41,4 +41,3 @@ config CEPH_LIB_USE_DNS_RESOLVER
 	  Documentation/networking/dns_resolver.txt
 
 	  If unsure, say N.
-
diff --git a/net/ceph/Makefile b/net/ceph/Makefile
index 12bf49772d24..db09defe27d0 100644
--- a/net/ceph/Makefile
+++ b/net/ceph/Makefile
@@ -15,4 +15,3 @@ libceph-y := ceph_common.o messenger.o msgpool.o buffer.o pagelist.o \
 	auth_x.o \
 	ceph_fs.o ceph_strings.o ceph_hash.o \
 	pagevec.o snapshot.o string_table.o
-
diff --git a/net/ceph/auth_none.c b/net/ceph/auth_none.c
index 41d2a0c72236..edb7042479ed 100644
--- a/net/ceph/auth_none.c
+++ b/net/ceph/auth_none.c
@@ -142,4 +142,3 @@ int ceph_auth_none_init(struct ceph_auth_client *ac)
 	ac->ops = &ceph_auth_none_ops;
 	return 0;
 }
-
diff --git a/net/ceph/auth_none.h b/net/ceph/auth_none.h
index 860ed9875791..4158f064302e 100644
--- a/net/ceph/auth_none.h
+++ b/net/ceph/auth_none.h
@@ -26,4 +26,3 @@ struct ceph_auth_none_info {
 int ceph_auth_none_init(struct ceph_auth_client *ac);
 
 #endif
-
diff --git a/net/ceph/auth_x.c b/net/ceph/auth_x.c
index 2f4a1baf5f52..32c7f5c4b1a6 100644
--- a/net/ceph/auth_x.c
+++ b/net/ceph/auth_x.c
@@ -823,5 +823,3 @@ int ceph_x_init(struct ceph_auth_client *ac)
 out:
 	return ret;
 }
-
-
diff --git a/net/ceph/auth_x.h b/net/ceph/auth_x.h
index 454cb54568af..a71c4c282b57 100644
--- a/net/ceph/auth_x.h
+++ b/net/ceph/auth_x.h
@@ -52,4 +52,3 @@ struct ceph_x_info {
 int ceph_x_init(struct ceph_auth_client *ac);
 
 #endif
-
diff --git a/net/ceph/mon_client.c b/net/ceph/mon_client.c
index d7a7a2330ef7..18deb3d889c4 100644
--- a/net/ceph/mon_client.c
+++ b/net/ceph/mon_client.c
@@ -1249,7 +1249,7 @@ static void dispatch(struct ceph_connection *con, struct ceph_msg *msg)
 		if (monc->client->extra_mon_dispatch &&
 		    monc->client->extra_mon_dispatch(monc->client, msg) == 0)
 			break;
-			
+
 		pr_err("received unknown message type %d %s\n", type,
 		       ceph_msg_type_name(type));
 	}
diff --git a/net/ceph/pagevec.c b/net/ceph/pagevec.c
index e560d3975f41..d3736f5bffec 100644
--- a/net/ceph/pagevec.c
+++ b/net/ceph/pagevec.c
@@ -197,4 +197,3 @@ void ceph_zero_page_vector_range(int off, int len, struct page **pages)
 	}
 }
 EXPORT_SYMBOL(ceph_zero_page_vector_range);
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 09/18] ila: remove blank lines at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/ipv6/ila/ila_common.c | 1 -
 net/ipv6/ila/ila_xlat.c   | 1 -
 2 files changed, 2 deletions(-)

diff --git a/net/ipv6/ila/ila_common.c b/net/ipv6/ila/ila_common.c
index 579310466eac..95e9146918cc 100644
--- a/net/ipv6/ila/ila_common.c
+++ b/net/ipv6/ila/ila_common.c
@@ -153,4 +153,3 @@ void ila_update_ipv6_locator(struct sk_buff *skb, struct ila_params *p,
 	/* Now change destination address */
 	iaddr->loc = p->locator;
 }
-
diff --git a/net/ipv6/ila/ila_xlat.c b/net/ipv6/ila/ila_xlat.c
index 51a15ce50a64..17c455ff69ff 100644
--- a/net/ipv6/ila/ila_xlat.c
+++ b/net/ipv6/ila/ila_xlat.c
@@ -663,4 +663,3 @@ static int ila_xlat_addr(struct sk_buff *skb, bool sir2ila)
 
 	return 0;
 }
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 11/18] atm: remove blank lines at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/atm/mpoa_proc.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/net/atm/mpoa_proc.c b/net/atm/mpoa_proc.c
index b93cc0f18292..46d6cd9a36ae 100644
--- a/net/atm/mpoa_proc.c
+++ b/net/atm/mpoa_proc.c
@@ -307,9 +307,3 @@ void mpc_proc_clean(void)
 }
 
 #endif /* CONFIG_PROC_FS */
-
-
-
-
-
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 13/18] x25: remove blank lines at EOF
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/x25/Kconfig    | 2 --
 net/x25/x25_subr.c | 1 -
 2 files changed, 3 deletions(-)

diff --git a/net/x25/Kconfig b/net/x25/Kconfig
index e2fa133f9fba..59fcb41fc5e6 100644
--- a/net/x25/Kconfig
+++ b/net/x25/Kconfig
@@ -31,5 +31,3 @@ config X25
 
 	  To compile this driver as a module, choose M here: the module
 	  will be called x25. If unsure, say N.
-
-
diff --git a/net/x25/x25_subr.c b/net/x25/x25_subr.c
index 9c214ec681ac..743103786652 100644
--- a/net/x25/x25_subr.c
+++ b/net/x25/x25_subr.c
@@ -381,4 +381,3 @@ void x25_check_rbuf(struct sock *sk)
 		x25_stop_timer(sk);
 	}
 }
-
-- 
2.18.0

^ permalink raw reply related

* [PATCH PATCH net-next 14/18] decnet: whitespace fixes
From: Stephen Hemminger @ 2018-07-24 19:29 UTC (permalink / raw)
  To: davem, ericvh, rminnich, lucho, ralf, jreuter, pablo, kadlec, fw,
	alex.aring, stefan, kuznet, yoshfuji, johannes, jhs,
	xiyou.wangcong, jiri, vyasevich, nhorman, marcelo.leitner,
	trond.myklebust, anna.schumaker, steffen.klassert, herbert
  Cc: netdev, v9fs-developer, linux-hams, ceph-devel, linux-decnet-user,
	netfilter-devel, coreteam, linux-wpan, linux-s390, linux-wireless,
	linux-rdma, linux-sctp, linux-nfs, linux-x25, Stephen Hemminger,
	Stephen Hemminger
In-Reply-To: <20180724192918.31165-1-sthemmin@microsoft.com>

Remove trailing whitespace and extra lines at EOF

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 net/decnet/Kconfig              | 1 -
 net/decnet/Makefile             | 1 -
 net/decnet/TODO                 | 5 ++---
 net/decnet/dn_fib.c             | 2 --
 net/decnet/dn_nsp_in.c          | 1 -
 net/decnet/dn_nsp_out.c         | 1 -
 net/decnet/dn_route.c           | 1 -
 net/decnet/dn_rules.c           | 2 --
 net/decnet/netfilter/Makefile   | 1 -
 net/decnet/netfilter/dn_rtmsg.c | 1 -
 10 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/net/decnet/Kconfig b/net/decnet/Kconfig
index f3393e154f0f..dcc74956badd 100644
--- a/net/decnet/Kconfig
+++ b/net/decnet/Kconfig
@@ -40,4 +40,3 @@ config DECNET_ROUTER
 	  to work.
 
 	  See <file:Documentation/networking/decnet.txt> for more information.
-
diff --git a/net/decnet/Makefile b/net/decnet/Makefile
index 9e38122d942b..07b38e441b2d 100644
--- a/net/decnet/Makefile
+++ b/net/decnet/Makefile
@@ -8,4 +8,3 @@ decnet-$(CONFIG_DECNET_ROUTER) += dn_fib.o dn_rules.o dn_table.o
 decnet-y += sysctl_net_decnet.o
 
 obj-$(CONFIG_NETFILTER) += netfilter/
-
diff --git a/net/decnet/TODO b/net/decnet/TODO
index ebb5ac69d128..358e9eb49016 100644
--- a/net/decnet/TODO
+++ b/net/decnet/TODO
@@ -16,14 +16,14 @@ Steve's quick list of things that need finishing off:
 
  o Verify errors etc. against POSIX 1003.1g (draft)
 
- o Using send/recvmsg() to get at connect/disconnect data (POSIX 1003.1g) 
+ o Using send/recvmsg() to get at connect/disconnect data (POSIX 1003.1g)
    [maybe this should be done at socket level... the control data in the
     send/recvmsg() calls should simply be a vector of set/getsockopt()
     calls]
 
  o check MSG_CTRUNC is set where it should be.
 
- o Find all the commonality between DECnet and IPv4 routing code and extract 
+ o Find all the commonality between DECnet and IPv4 routing code and extract
    it into a small library of routines. [probably a project for 2.7.xx]
 
  o Add perfect socket hashing - an idea suggested by Paul Koning. Currently
@@ -38,4 +38,3 @@ Steve's quick list of things that need finishing off:
  o DECnet sendpages() function
 
  o AIO for DECnet
-
diff --git a/net/decnet/dn_fib.c b/net/decnet/dn_fib.c
index fce94cbd4378..f78fe58eafc8 100644
--- a/net/decnet/dn_fib.c
+++ b/net/decnet/dn_fib.c
@@ -797,5 +797,3 @@ void __init dn_fib_init(void)
 	rtnl_register_module(THIS_MODULE, PF_DECnet, RTM_DELROUTE,
 			     dn_fib_rtm_delroute, NULL, 0);
 }
-
-
diff --git a/net/decnet/dn_nsp_in.c b/net/decnet/dn_nsp_in.c
index 34aba55ed573..2fb5e055ba25 100644
--- a/net/decnet/dn_nsp_in.c
+++ b/net/decnet/dn_nsp_in.c
@@ -912,4 +912,3 @@ int dn_nsp_backlog_rcv(struct sock *sk, struct sk_buff *skb)
 
 	return NET_RX_SUCCESS;
 }
-
diff --git a/net/decnet/dn_nsp_out.c b/net/decnet/dn_nsp_out.c
index 56a52a004c56..a1779de6bd9c 100644
--- a/net/decnet/dn_nsp_out.c
+++ b/net/decnet/dn_nsp_out.c
@@ -701,4 +701,3 @@ void dn_nsp_send_conninit(struct sock *sk, unsigned char msgflg)
 
 	dn_nsp_send(skb);
 }
-
diff --git a/net/decnet/dn_route.c b/net/decnet/dn_route.c
index e74765024d88..3107a2e24e6b 100644
--- a/net/decnet/dn_route.c
+++ b/net/decnet/dn_route.c
@@ -1925,4 +1925,3 @@ void __exit dn_route_cleanup(void)
 	remove_proc_entry("decnet_cache", init_net.proc_net);
 	dst_entries_destroy(&dn_dst_ops);
 }
-
diff --git a/net/decnet/dn_rules.c b/net/decnet/dn_rules.c
index 72236695db3d..4a4e3c17740c 100644
--- a/net/decnet/dn_rules.c
+++ b/net/decnet/dn_rules.c
@@ -256,5 +256,3 @@ void __exit dn_fib_rules_cleanup(void)
 	rtnl_unlock();
 	rcu_barrier();
 }
-
-
diff --git a/net/decnet/netfilter/Makefile b/net/decnet/netfilter/Makefile
index 255c1ae9daeb..b579e52130aa 100644
--- a/net/decnet/netfilter/Makefile
+++ b/net/decnet/netfilter/Makefile
@@ -3,4 +3,3 @@
 #
 
 obj-$(CONFIG_DECNET_NF_GRABULATOR) += dn_rtmsg.o
-
diff --git a/net/decnet/netfilter/dn_rtmsg.c b/net/decnet/netfilter/dn_rtmsg.c
index ab395e55cd78..a4faacadd8a8 100644
--- a/net/decnet/netfilter/dn_rtmsg.c
+++ b/net/decnet/netfilter/dn_rtmsg.c
@@ -158,4 +158,3 @@ MODULE_ALIAS_NET_PF_PROTO(PF_NETLINK, NETLINK_DNRTMSG);
 
 module_init(dn_rtmsg_init);
 module_exit(dn_rtmsg_fini);
-
-- 
2.18.0

^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox