linux/drivers
Christoph Hellwig 535f8d65d8 [SPARC]: Fix RTC compat ioctl kernel log spam.
On Fri, Nov 11, 2005 at 12:58:40PM -0800, David S. Miller wrote:
> 
> This change:
> 
> diff-tree 8ca2bdc7a9 (from feee207e44d3643d19e648aAuthor: Christoph Hellwig <hch@lst.de>
> Date:   Wed Nov 9 12:07:18 2005 -0800
> 
>     [SPARC] sbus rtc: implement ->compat_ioctl
>     
>     Signed-off-by: Christoph Hellwig <hch@lst.de>
>     Signed-off-by: David S. Miller <davem@davemloft.net>
> 
> results in the console now getting spewed on sparc64 systems
> with messages like:
> 
> [   11.968298] ioctl32(hwclock:464): Unknown cmd fd(3) cmd(401c7014){00} arg(efc
> What's happening is hwclock tries first the SBUS rtc device ioctls
> then the normal rtc driver ones.
> 
> So things actually worked better when we had the SBUS rtc compat ioctl
> directly handled via the generic compat ioctl code.
> 
> There are _so_ many rtc drivers in the kernel implementing the
> generic rtc ioctls that I don't think putting a ->compat_ioctl
> into all of them to fix this problem is feasible.  Unless we
> write a single rtc_compat_ioctl(), export it to modules, and hook
> it into all of those somehow.
> 
> But even that doesn't appear to have any pretty implementation.
> 
> Any better ideas?

We had similar problems with other ioctls where userspace did things
like that.  What we did there was to put the compat handler to generic
code.  The patch below does that, adding a big comment about what's
going on and removing the COMPAT_IOCTL entires for these on powerpc
that not only weren't ever useful but are duplicated now aswell.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-11-12 12:10:54 -08:00
..
acorn [ARM] Turn ARM RiscPC PCF8583 i2c RTC driver into a proper module 2005-10-30 19:07:59 +00:00
acpi [PATCH] pciehp: clean-up how we request control of hotplug hardware 2005-11-10 16:09:15 -08:00
atm [ATM]: [horizon] fix sparse warnings 2005-11-10 12:55:52 -08:00
base [DRIVER MODEL] Add platform_driver 2005-11-09 17:23:39 +00:00
block Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2005-11-11 16:29:22 -08:00
bluetooth [Bluetooth]: Add endian annotations to the core 2005-11-08 09:57:21 -08:00
cdrom [PATCH] drivers/cdrom: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
char [PATCH] I8K: fix /proc reporting of blank service tags 2005-11-12 11:42:32 -08:00
connector [PATCH] Process Events Connector 2005-11-07 07:53:35 -08:00
cpufreq [PATCH] cpu hotplug: fix locking in cpufreq drivers 2005-11-09 07:55:50 -08:00
crypto [PATCH] CONFIG_IA32 2005-10-30 17:37:10 -08:00
dio [PATCH] drivers/dio: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
eisa [PATCH] drivers/eisa: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
fc4 [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
firmware [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
hwmon Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
i2c Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
ide [PATCH] PCI: automatically set device_driver.owner 2005-11-10 16:09:16 -08:00
ieee1394 [PATCH] ieee1394: fix-up schedule_timeout() usage 2005-11-07 07:53:57 -08:00
infiniband [PATCH] PCI: removed unneeded .owner field from struct pci_driver 2005-11-10 16:09:17 -08:00
input Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
isdn [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
macintosh macintosh: Always export pmu_[un]register_sleep_notifier if CONFIG_PM set 2005-11-08 12:14:50 +11:00
mca [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
md [PATCH] md: document sysfs usage of md, and make a couple of small refinements 2005-11-09 07:56:40 -08:00
media [PATCH] fix b2c2 dvb undefined symbol 2005-11-12 10:52:30 -08:00
message [PATCH] drivers/message/fusion/mptbase.c: make code static 2005-11-09 07:56:41 -08:00
mfd [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
misc Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
mmc Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
mtd Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
net Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 2005-11-11 09:26:39 -08:00
nubus
oprofile
parisc
parport [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
pci [PATCH] PCI: fix namespace clashes 2005-11-10 16:09:18 -08:00
pcmcia [PCMCIA] i82365: release all resources if no devices are found 2005-11-10 11:42:16 +01:00
pnp [PATCH] drivers/pnp/: cleanups 2005-11-07 07:54:09 -08:00
rapidio [PATCH] rapidio: message interface updates 2005-11-07 07:53:47 -08:00
s390 [PATCH] s390: mail address changed 2005-11-11 08:26:22 -05:00
sbus [SPARC]: Fix RTC compat ioctl kernel log spam. 2005-11-12 12:10:54 -08:00
scsi [libata ahci] set port ATAPI bit correctly 2005-11-12 01:32:19 -05:00
serial [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
sh [PATCH] superhyway: multiple block support and VCR rework 2005-11-07 07:53:28 -08:00
sn
tc Add .gitignore files for Turbochannel 2005-11-07 18:05:37 +00:00
telephony [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
usb Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 2005-11-11 14:04:37 -08:00
video Revert "[PATCH] fbcon: Add rl (Roman Large) font" 2005-11-12 10:14:02 -08:00
w1 [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
zorro [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
Kconfig
Makefile [PATCH] RapidIO support: core base 2005-11-07 07:53:46 -08:00