Revision ed48ece27cd3d5ee0354c32bbaec0f3e1d4715c3 authored by Tejun Heo on 18 September 2012, 19:48:43 UTC, committed by Tejun Heo on 19 September 2012, 17:13:12 UTC
The existing work_on_cpu() implementation is hugely inefficient.  It
creates a new kthread, execute that single function and then let the
kthread die on each invocation.

Now that system_wq can handle concurrent executions, there's no
advantage of doing this.  Reimplement work_on_cpu() using system_wq
which makes it simpler and way more efficient.

stable: While this isn't a fix in itself, it's needed to fix a
        workqueue related bug in cpufreq/powernow-k8.  AFAICS, this
        shouldn't break other existing users.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Len Brown <lenb@kernel.org>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Cc: stable@vger.kernel.org
1 parent 960bd11
Raw File
sii9234.h
/*
 * Driver header for SII9234 MHL converter chip.
 *
 * Copyright (c) 2011 Samsung Electronics, Co. Ltd
 * Contact: Tomasz Stanislawski <t.stanislaws@samsung.com>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 */

#ifndef SII9234_H
#define SII9234_H

/**
 * @gpio_n_reset: GPIO driving nRESET pin
 */

struct sii9234_platform_data {
	int gpio_n_reset;
};

#endif /* SII9234_H */
back to top