[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120106194052.GA7781@kroah.com>
Date: Fri, 6 Jan 2012 11:40:52 -0800
From: Greg KH <greg@...ah.com>
To: Frank Mandarino <fmandarino@...relia.com>,
Liam Girdwood <lrg@...com>,
Mark Brown <broonie@...nsource.wolfsonmicro.com>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.de>
Cc: Russell King <linux@....linux.org.uk>, alsa-devel@...a-project.org,
linux-kernel@...r.kernel.org
Subject: Public ridicule due to sound/soc/soc-core.c abuse of the driver model
Hi Frank, Liam, and sound maintainers.
It was recently pointed out to me that the sound/soc/soc-core.c is
flagrantly abusing the driver model by providing "empty" release
functions, just to keep the kernel from complaining:
/* stop no dev release warning */
static void soc_ac97_device_release(struct device *dev){}
....
static void rtd_release(struct device *dev) {}
As per the documentation in the kernel tree[1], I now get to publicly
mock you for thinking you know better than the driver model.
Come on people, do you think that I wrote the code in the kernel that
produces those errors just for fun? It was telling you to fix your code
by providing a function to free the structure that is being released,
not to try to trick the kernel because you think you know better. The
kernel was trying to help you out here, to get the programming model
correct, in a place that was commonly misunderstood.
But, by you trying to be "smart", you just proved that your code was
incorrect and buggy.
Please fix this for the 3.3 kernel release.
Yes, I know it's been there for a number of years, but that still
doesn't make it correct. Especially as stuff like this tends to get
cut-and-pasted over time.
thanks,
greg k-h
[1] Documentation/kobject.txt
--
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