lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 28 Feb 2010 22:52:43 +0300
From:	Evgeniy Polyakov <zbr@...emap.net>
To:	"Eric W. Biederman" <ebiederm@...ssion.com>
Cc:	linux-kernel@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: Why does connector use a work queue???

On Sat, Feb 27, 2010 at 06:57:02PM -0800, Eric W. Biederman (ebiederm@...ssion.com) wrote:
> These days netlink callbacks for messages happen in the context of the
> process who sent the message.  Things like permission checks are much
> more complicated if we don't use that process context.
> 
> I was looking at removing NETLINK_CB(skb).eff_cap but I discovered
> that connected takes the netlink messages, them from their
> perfectly good process context, and puts the into a workqueue
> for reasons that are not apparent to me.

Netlink was made synchronous rather recently and connector was not
changed to take advantage of that. Previously it used work queue to
postpone work processing into always-process context.

> Unless I am misreading something we should just be able to remove the
> work queues and greatly simplify the connector code.
> 
> Something like:

Idea looks very good, thank you, but it misses structure changes
to eliminate now unneded members.

-- 
	Evgeniy Polyakov
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ