On Thu, Oct 25, 2012 at 04:16:59PM +0200, Daniel Wagner wrote: > From: Daniel Wagner <daniel.wagner@xxxxxxxxxxxx> > > The cgroup logic part of net_cls is very similar as the one in > net_prio. Let's stream line the net_cls logic with the net_prio one. > > The net_prio update logic was changed by following commit (note there > were some changes necessary later on) > > commit 406a3c638ce8b17d9704052c07955490f732c2b8 > Author: John Fastabend <john.r.fastabend@xxxxxxxxx> > Date: Fri Jul 20 10:39:25 2012 +0000 > > net: netprio_cgroup: rework update socket logic > > Instead of updating the sk_cgrp_prioidx struct field on every send > this only updates the field when a task is moved via cgroup > infrastructure. > > This allows sockets that may be used by a kernel worker thread > to be managed. For example in the iscsi case today a user can > put iscsid in a netprio cgroup and control traffic will be sent > with the correct sk_cgrp_prioidx value set but as soon as data > is sent the kernel worker thread isssues a send and sk_cgrp_prioidx > is updated with the kernel worker threads value which is the > default case. > > It seems more correct to only update the field when the user > explicitly sets it via control group infrastructure. This allows > the users to manage sockets that may be used with other threads. > > Since classid is now updated when the task is moved between the > cgroups, we don't have to call sock_update_classid() from various > places to ensure we always using the latest classid value. > > [v2: Use iterate_fd() instead of open coding] > Acked-by: Neil Horman <nhorman@xxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html