compat_ioctl: move WDIOC handling into wdt drivers
authorArnd Bergmann <arnd@arndb.de>
Mon, 3 Jun 2019 12:23:09 +0000 (14:23 +0200)
committerArnd Bergmann <arnd@arndb.de>
Wed, 23 Oct 2019 15:23:46 +0000 (17:23 +0200)
All watchdog drivers implement the same set of ioctl commands, and
fortunately all of them are compatible between 32-bit and 64-bit
architectures.

Modern drivers always go through drivers/watchdog/wdt.c as an abstraction
layer, but older ones implement their own file_operations on a character
device for this.

Move the handling from fs/compat_ioctl.c into the individual drivers.

Note that most of the legacy drivers will never be used on 64-bit
hardware, because they are for an old 32-bit SoC implementation, but
doing them all at once is safer than trying to guess which ones do
or do not need the compat_ioctl handling.

Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
63 files changed:
arch/powerpc/platforms/52xx/mpc52xx_gpt.c
arch/um/drivers/harddog_kern.c
drivers/char/ipmi/ipmi_watchdog.c
drivers/hwmon/fschmd.c
drivers/hwmon/w83793.c
drivers/rtc/rtc-ds1374.c
drivers/rtc/rtc-m41t80.c
drivers/watchdog/acquirewdt.c
drivers/watchdog/advantechwdt.c
drivers/watchdog/alim1535_wdt.c
drivers/watchdog/alim7101_wdt.c
drivers/watchdog/ar7_wdt.c
drivers/watchdog/at91rm9200_wdt.c
drivers/watchdog/ath79_wdt.c
drivers/watchdog/bcm63xx_wdt.c
drivers/watchdog/cpu5wdt.c
drivers/watchdog/eurotechwdt.c
drivers/watchdog/f71808e_wdt.c
drivers/watchdog/gef_wdt.c
drivers/watchdog/geodewdt.c
drivers/watchdog/ib700wdt.c
drivers/watchdog/ibmasr.c
drivers/watchdog/indydog.c
drivers/watchdog/intel_scu_watchdog.c
drivers/watchdog/iop_wdt.c
drivers/watchdog/it8712f_wdt.c
drivers/watchdog/ixp4xx_wdt.c
drivers/watchdog/m54xx_wdt.c
drivers/watchdog/machzwd.c
drivers/watchdog/mixcomwd.c
drivers/watchdog/mtx-1_wdt.c
drivers/watchdog/mv64x60_wdt.c
drivers/watchdog/nv_tco.c
drivers/watchdog/pc87413_wdt.c
drivers/watchdog/pcwd.c
drivers/watchdog/pcwd_pci.c
drivers/watchdog/pcwd_usb.c
drivers/watchdog/pika_wdt.c
drivers/watchdog/pnx833x_wdt.c
drivers/watchdog/rc32434_wdt.c
drivers/watchdog/rdc321x_wdt.c
drivers/watchdog/riowd.c
drivers/watchdog/sa1100_wdt.c
drivers/watchdog/sb_wdog.c
drivers/watchdog/sbc60xxwdt.c
drivers/watchdog/sbc7240_wdt.c
drivers/watchdog/sbc_epx_c3.c
drivers/watchdog/sbc_fitpc2_wdt.c
drivers/watchdog/sc1200wdt.c
drivers/watchdog/sc520_wdt.c
drivers/watchdog/sch311x_wdt.c
drivers/watchdog/scx200_wdt.c
drivers/watchdog/smsc37b787_wdt.c
drivers/watchdog/w83877f_wdt.c
drivers/watchdog/w83977f_wdt.c
drivers/watchdog/wafer5823wdt.c
drivers/watchdog/watchdog_dev.c
drivers/watchdog/wdrtas.c
drivers/watchdog/wdt.c
drivers/watchdog/wdt285.c
drivers/watchdog/wdt977.c
drivers/watchdog/wdt_pci.c
fs/compat_ioctl.c

index ba12dc1..8c0d324 100644 (file)
@@ -650,6 +650,7 @@ static const struct file_operations mpc52xx_wdt_fops = {
        .llseek         = no_llseek,
        .write          = mpc52xx_wdt_write,
        .unlocked_ioctl = mpc52xx_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = mpc52xx_wdt_open,
        .release        = mpc52xx_wdt_release,
 };
index 000cb69..e6d4f43 100644 (file)
@@ -165,6 +165,7 @@ static const struct file_operations harddog_fops = {
        .owner          = THIS_MODULE,
        .write          = harddog_write,
        .unlocked_ioctl = harddog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = harddog_open,
        .release        = harddog_release,
        .llseek         = no_llseek,
index 74c6d1f..55986e1 100644 (file)
@@ -893,6 +893,7 @@ static const struct file_operations ipmi_wdog_fops = {
        .poll    = ipmi_poll,
        .write   = ipmi_write,
        .unlocked_ioctl = ipmi_unlocked_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open    = ipmi_open,
        .release = ipmi_close,
        .fasync  = ipmi_fasync,
index fa0c2f1..4136643 100644 (file)
@@ -954,6 +954,7 @@ static const struct file_operations watchdog_fops = {
        .release = watchdog_release,
        .write = watchdog_write,
        .unlocked_ioctl = watchdog_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
 };
 
 
index 9df48b7..55c5f86 100644 (file)
@@ -1458,6 +1458,7 @@ static const struct file_operations watchdog_fops = {
        .release = watchdog_close,
        .write = watchdog_write,
        .unlocked_ioctl = watchdog_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
 };
 
 /*
index 3674979..6e96916 100644 (file)
@@ -586,6 +586,7 @@ static const struct file_operations ds1374_wdt_fops = {
        .owner                  = THIS_MODULE,
        .read                   = ds1374_wdt_read,
        .unlocked_ioctl         = ds1374_wdt_unlocked_ioctl,
+       .compat_ioctl           = compat_ptr_ioctl,
        .write                  = ds1374_wdt_write,
        .open                   = ds1374_wdt_open,
        .release                = ds1374_wdt_release,
index 5f46f85..f9fa4f0 100644 (file)
@@ -840,6 +840,7 @@ static const struct file_operations wdt_fops = {
        .owner  = THIS_MODULE,
        .read   = wdt_read,
        .unlocked_ioctl = wdt_unlocked_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .write  = wdt_write,
        .open   = wdt_open,
        .release = wdt_release,
index 848db95..bc6f333 100644 (file)
@@ -221,6 +221,7 @@ static const struct file_operations acq_fops = {
        .llseek         = no_llseek,
        .write          = acq_write,
        .unlocked_ioctl = acq_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = acq_open,
        .release        = acq_close,
 };
index 0d02bb2..0e4c18a 100644 (file)
@@ -220,6 +220,7 @@ static const struct file_operations advwdt_fops = {
        .llseek         = no_llseek,
        .write          = advwdt_write,
        .unlocked_ioctl = advwdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = advwdt_open,
        .release        = advwdt_close,
 };
index c157dd3..42338c7 100644 (file)
@@ -362,6 +362,7 @@ static const struct file_operations ali_fops = {
        .llseek         =       no_llseek,
        .write          =       ali_write,
        .unlocked_ioctl =       ali_ioctl,
+       .compat_ioctl   =       compat_ptr_ioctl,
        .open           =       ali_open,
        .release        =       ali_release,
 };
index c8e3ab0..5af0358 100644 (file)
@@ -294,6 +294,7 @@ static const struct file_operations wdt_fops = {
        .open           =       fop_open,
        .release        =       fop_close,
        .unlocked_ioctl =       fop_ioctl,
+       .compat_ioctl   =       compat_ptr_ioctl,
 };
 
 static struct miscdevice wdt_miscdev = {
index 668a1c7..c087027 100644 (file)
@@ -250,6 +250,7 @@ static const struct file_operations ar7_wdt_fops = {
        .owner          = THIS_MODULE,
        .write          = ar7_wdt_write,
        .unlocked_ioctl = ar7_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = ar7_wdt_open,
        .release        = ar7_wdt_release,
        .llseek         = no_llseek,
index 907a454..6d751eb 100644 (file)
@@ -213,6 +213,7 @@ static const struct file_operations at91wdt_fops = {
        .owner          = THIS_MODULE,
        .llseek         = no_llseek,
        .unlocked_ioctl = at91_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = at91_wdt_open,
        .release        = at91_wdt_close,
        .write          = at91_wdt_write,
index 75de664..d6dff97 100644 (file)
@@ -234,6 +234,7 @@ static const struct file_operations ath79_wdt_fops = {
        .llseek         = no_llseek,
        .write          = ath79_wdt_write,
        .unlocked_ioctl = ath79_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = ath79_wdt_open,
        .release        = ath79_wdt_release,
 };
index e2af37c..8a043b5 100644 (file)
@@ -221,6 +221,7 @@ static const struct file_operations bcm63xx_wdt_fops = {
        .llseek         = no_llseek,
        .write          = bcm63xx_wdt_write,
        .unlocked_ioctl = bcm63xx_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = bcm63xx_wdt_open,
        .release        = bcm63xx_wdt_release,
 };
index d6d5301..9867a3a 100644 (file)
@@ -187,6 +187,7 @@ static const struct file_operations cpu5wdt_fops = {
        .owner          = THIS_MODULE,
        .llseek         = no_llseek,
        .unlocked_ioctl = cpu5wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = cpu5wdt_open,
        .write          = cpu5wdt_write,
        .release        = cpu5wdt_release,
index 3a83a48..f5ffa7b 100644 (file)
@@ -371,6 +371,7 @@ static const struct file_operations eurwdt_fops = {
        .llseek         = no_llseek,
        .write          = eurwdt_write,
        .unlocked_ioctl = eurwdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = eurwdt_open,
        .release        = eurwdt_release,
 };
index e46104c..a3c44d7 100644 (file)
@@ -669,6 +669,7 @@ static const struct file_operations watchdog_fops = {
        .release        = watchdog_release,
        .write          = watchdog_write,
        .unlocked_ioctl = watchdog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
 };
 
 static struct miscdevice watchdog_miscdev = {
index 7d5f569..f6541d1 100644 (file)
@@ -248,6 +248,7 @@ static const struct file_operations gef_wdt_fops = {
        .llseek = no_llseek,
        .write = gef_wdt_write,
        .unlocked_ioctl = gef_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open = gef_wdt_open,
        .release = gef_wdt_release,
 };
index 8d105d9..9914a42 100644 (file)
@@ -201,6 +201,7 @@ static const struct file_operations geodewdt_fops = {
        .llseek         = no_llseek,
        .write          = geodewdt_write,
        .unlocked_ioctl = geodewdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = geodewdt_open,
        .release        = geodewdt_release,
 };
index 92fd7f3..2b65ea9 100644 (file)
@@ -259,6 +259,7 @@ static const struct file_operations ibwdt_fops = {
        .llseek         = no_llseek,
        .write          = ibwdt_write,
        .unlocked_ioctl = ibwdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = ibwdt_open,
        .release        = ibwdt_close,
 };
index 897f7ed..4a22fe1 100644 (file)
@@ -344,6 +344,7 @@ static const struct file_operations asr_fops = {
        .llseek =               no_llseek,
        .write =                asr_write,
        .unlocked_ioctl =       asr_ioctl,
+       .compat_ioctl =         compat_ptr_ioctl,
        .open =                 asr_open,
        .release =              asr_release,
 };
index 5503585..9857bb7 100644 (file)
@@ -152,6 +152,7 @@ static const struct file_operations indydog_fops = {
        .llseek         = no_llseek,
        .write          = indydog_write,
        .unlocked_ioctl = indydog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = indydog_open,
        .release        = indydog_release,
 };
index 1c85103..6ad5bf3 100644 (file)
@@ -412,6 +412,7 @@ static const struct file_operations intel_scu_fops = {
        .llseek         = no_llseek,
        .write          = intel_scu_write,
        .unlocked_ioctl = intel_scu_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = intel_scu_open,
        .release        = intel_scu_release,
 };
index a9ccdb9..6bf68d4 100644 (file)
@@ -202,6 +202,7 @@ static const struct file_operations iop_wdt_fops = {
        .llseek = no_llseek,
        .write = iop_wdt_write,
        .unlocked_ioctl = iop_wdt_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .open = iop_wdt_open,
        .release = iop_wdt_release,
 };
index 2fe1a3c..2fed40d 100644 (file)
@@ -345,6 +345,7 @@ static const struct file_operations it8712f_wdt_fops = {
        .llseek = no_llseek,
        .write = it8712f_wdt_write,
        .unlocked_ioctl = it8712f_wdt_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .open = it8712f_wdt_open,
        .release = it8712f_wdt_release,
 };
index 9067998..0988661 100644 (file)
@@ -163,6 +163,7 @@ static const struct file_operations ixp4xx_wdt_fops = {
        .llseek         = no_llseek,
        .write          = ixp4xx_wdt_write,
        .unlocked_ioctl = ixp4xx_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = ixp4xx_wdt_open,
        .release        = ixp4xx_wdt_release,
 };
index 752d036..22f335e 100644 (file)
@@ -183,6 +183,7 @@ static const struct file_operations m54xx_wdt_fops = {
        .llseek         = no_llseek,
        .write          = m54xx_wdt_write,
        .unlocked_ioctl = m54xx_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = m54xx_wdt_open,
        .release        = m54xx_wdt_release,
 };
index cef2baf..80ff946 100644 (file)
@@ -361,6 +361,7 @@ static const struct file_operations zf_fops = {
        .llseek         = no_llseek,
        .write          = zf_write,
        .unlocked_ioctl = zf_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = zf_open,
        .release        = zf_close,
 };
index a86faa5..d387bad 100644 (file)
@@ -227,6 +227,7 @@ static const struct file_operations mixcomwd_fops = {
        .llseek         = no_llseek,
        .write          = mixcomwd_write,
        .unlocked_ioctl = mixcomwd_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = mixcomwd_open,
        .release        = mixcomwd_release,
 };
index 25a9285..8aa1cb4 100644 (file)
@@ -181,6 +181,7 @@ static const struct file_operations mtx1_wdt_fops = {
        .owner          = THIS_MODULE,
        .llseek         = no_llseek,
        .unlocked_ioctl = mtx1_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = mtx1_wdt_open,
        .write          = mtx1_wdt_write,
        .release        = mtx1_wdt_release,
index 74bf714..0bc72dd 100644 (file)
@@ -241,6 +241,7 @@ static const struct file_operations mv64x60_wdt_fops = {
        .llseek = no_llseek,
        .write = mv64x60_wdt_write,
        .unlocked_ioctl = mv64x60_wdt_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .open = mv64x60_wdt_open,
        .release = mv64x60_wdt_release,
 };
index 5f0082e..d7a560e 100644 (file)
@@ -267,6 +267,7 @@ static const struct file_operations nv_tco_fops = {
        .llseek =               no_llseek,
        .write =                nv_tco_write,
        .unlocked_ioctl =       nv_tco_ioctl,
+       .compat_ioctl =         compat_ptr_ioctl,
        .open =                 nv_tco_open,
        .release =              nv_tco_release,
 };
index 2af1a8b..73fbfc9 100644 (file)
@@ -473,6 +473,7 @@ static const struct file_operations pc87413_fops = {
        .llseek         = no_llseek,
        .write          = pc87413_write,
        .unlocked_ioctl = pc87413_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = pc87413_open,
        .release        = pc87413_release,
 };
index c3c93e0..7a0587f 100644 (file)
@@ -752,6 +752,7 @@ static const struct file_operations pcwd_fops = {
        .llseek         = no_llseek,
        .write          = pcwd_write,
        .unlocked_ioctl = pcwd_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = pcwd_open,
        .release        = pcwd_close,
 };
index e30c1f7..81508a4 100644 (file)
@@ -646,6 +646,7 @@ static const struct file_operations pcipcwd_fops = {
        .llseek =       no_llseek,
        .write =        pcipcwd_write,
        .unlocked_ioctl = pcipcwd_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .open =         pcipcwd_open,
        .release =      pcipcwd_release,
 };
index 6727f8a..2f44af1 100644 (file)
@@ -550,6 +550,7 @@ static const struct file_operations usb_pcwd_fops = {
        .llseek =       no_llseek,
        .write =        usb_pcwd_write,
        .unlocked_ioctl = usb_pcwd_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
        .open =         usb_pcwd_open,
        .release =      usb_pcwd_release,
 };
index 205c3c6..a98abd0 100644 (file)
@@ -214,6 +214,7 @@ static const struct file_operations pikawdt_fops = {
        .release        = pikawdt_release,
        .write          = pikawdt_write,
        .unlocked_ioctl = pikawdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
 };
 
 static struct miscdevice pikawdt_miscdev = {
index aa53bab..4097d07 100644 (file)
@@ -215,6 +215,7 @@ static const struct file_operations pnx833x_wdt_fops = {
        .llseek         = no_llseek,
        .write          = pnx833x_wdt_write,
        .unlocked_ioctl = pnx833x_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = pnx833x_wdt_open,
        .release        = pnx833x_wdt_release,
 };
index a8a4b3a..1dfede0 100644 (file)
@@ -245,6 +245,7 @@ static const struct file_operations rc32434_wdt_fops = {
        .llseek         = no_llseek,
        .write          = rc32434_wdt_write,
        .unlocked_ioctl = rc32434_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = rc32434_wdt_open,
        .release        = rc32434_wdt_release,
 };
index 2e608ae..57187ef 100644 (file)
@@ -199,6 +199,7 @@ static const struct file_operations rdc321x_wdt_fops = {
        .owner          = THIS_MODULE,
        .llseek         = no_llseek,
        .unlocked_ioctl = rdc321x_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = rdc321x_wdt_open,
        .write          = rdc321x_wdt_write,
        .release        = rdc321x_wdt_release,
index b35f7be..dc3c06a 100644 (file)
@@ -163,6 +163,7 @@ static const struct file_operations riowd_fops = {
        .owner =                THIS_MODULE,
        .llseek =               no_llseek,
        .unlocked_ioctl =       riowd_ioctl,
+       .compat_ioctl   =       compat_ptr_ioctl,
        .open =                 riowd_open,
        .write =                riowd_write,
        .release =              riowd_release,
index cbd8c95..9b93be0 100644 (file)
@@ -141,6 +141,7 @@ static const struct file_operations sa1100dog_fops = {
        .llseek         = no_llseek,
        .write          = sa1100dog_write,
        .unlocked_ioctl = sa1100dog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = sa1100dog_open,
        .release        = sa1100dog_release,
 };
index 202fc8d..da2dad0 100644 (file)
@@ -237,6 +237,7 @@ static const struct file_operations sbwdog_fops = {
        .llseek         = no_llseek,
        .write          = sbwdog_write,
        .unlocked_ioctl = sbwdog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = sbwdog_open,
        .release        = sbwdog_release,
 };
index c315164..f2cbe6d 100644 (file)
@@ -280,6 +280,7 @@ static const struct file_operations wdt_fops = {
        .open           = fop_open,
        .release        = fop_close,
        .unlocked_ioctl = fop_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
 };
 
 static struct miscdevice wdt_miscdev = {
index 12cdee7..0bf583b 100644 (file)
@@ -211,6 +211,7 @@ static const struct file_operations wdt_fops = {
        .open = fop_open,
        .release = fop_close,
        .unlocked_ioctl = fop_ioctl,
+       .compat_ioctl = compat_ptr_ioctl,
 };
 
 static struct miscdevice wdt_miscdev = {
index 86828c2..5e3a9dd 100644 (file)
@@ -156,6 +156,7 @@ static const struct file_operations epx_c3_fops = {
        .llseek         = no_llseek,
        .write          = epx_c3_write,
        .unlocked_ioctl = epx_c3_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = epx_c3_open,
        .release        = epx_c3_release,
 };
index 3822a60..1b20b33 100644 (file)
@@ -186,6 +186,7 @@ static const struct file_operations fitpc2_wdt_fops = {
        .llseek         = no_llseek,
        .write          = fitpc2_wdt_write,
        .unlocked_ioctl = fitpc2_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = fitpc2_wdt_open,
        .release        = fitpc2_wdt_release,
 };
index 960385a..9673eb1 100644 (file)
@@ -307,6 +307,7 @@ static const struct file_operations sc1200wdt_fops = {
        .llseek         = no_llseek,
        .write          = sc1200wdt_write,
        .unlocked_ioctl = sc1200wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = sc1200wdt_open,
        .release        = sc1200wdt_release,
 };
index a612128..fbe79bc 100644 (file)
@@ -336,6 +336,7 @@ static const struct file_operations wdt_fops = {
        .open           = fop_open,
        .release        = fop_close,
        .unlocked_ioctl = fop_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
 };
 
 static struct miscdevice wdt_miscdev = {
index 3612f1d..83949a3 100644 (file)
@@ -337,6 +337,7 @@ static const struct file_operations sch311x_wdt_fops = {
        .llseek         = no_llseek,
        .write          = sch311x_wdt_write,
        .unlocked_ioctl = sch311x_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = sch311x_wdt_open,
        .release        = sch311x_wdt_close,
 };
index 4626830..c94098a 100644 (file)
@@ -201,6 +201,7 @@ static const struct file_operations scx200_wdt_fops = {
        .llseek = no_llseek,
        .write = scx200_wdt_write,
        .unlocked_ioctl = scx200_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open = scx200_wdt_open,
        .release = scx200_wdt_release,
 };
index f571303..43de56a 100644 (file)
@@ -505,6 +505,7 @@ static const struct file_operations wb_smsc_wdt_fops = {
        .llseek         = no_llseek,
        .write          = wb_smsc_wdt_write,
        .unlocked_ioctl = wb_smsc_wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wb_smsc_wdt_open,
        .release        = wb_smsc_wdt_release,
 };
index 6eb5185..6b3b667 100644 (file)
@@ -304,6 +304,7 @@ static const struct file_operations wdt_fops = {
        .open           = fop_open,
        .release        = fop_close,
        .unlocked_ioctl = fop_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
 };
 
 static struct miscdevice wdt_miscdev = {
index 16e9cbe..5212e68 100644 (file)
@@ -446,6 +446,7 @@ static const struct file_operations wdt_fops = {
        .llseek         = no_llseek,
        .write          = wdt_write,
        .unlocked_ioctl = wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wdt_open,
        .release        = wdt_release,
 };
index 6d2071a..a692584 100644 (file)
@@ -230,6 +230,7 @@ static const struct file_operations wafwdt_fops = {
        .llseek         = no_llseek,
        .write          = wafwdt_write,
        .unlocked_ioctl = wafwdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wafwdt_open,
        .release        = wafwdt_close,
 };
index dbd2ad4..3858094 100644 (file)
@@ -933,6 +933,7 @@ static const struct file_operations watchdog_fops = {
        .owner          = THIS_MODULE,
        .write          = watchdog_write,
        .unlocked_ioctl = watchdog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = watchdog_open,
        .release        = watchdog_release,
 };
index 6ad7edb..184a06a 100644 (file)
@@ -472,6 +472,7 @@ static const struct file_operations wdrtas_fops = {
        .llseek         = no_llseek,
        .write          = wdrtas_write,
        .unlocked_ioctl = wdrtas_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wdrtas_open,
        .release        = wdrtas_close,
 };
index 7d278b3..f9054cb 100644 (file)
@@ -523,6 +523,7 @@ static const struct file_operations wdt_fops = {
        .llseek         = no_llseek,
        .write          = wdt_write,
        .unlocked_ioctl = wdt_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wdt_open,
        .release        = wdt_release,
 };
index eb729d7..e60993d 100644 (file)
@@ -181,6 +181,7 @@ static const struct file_operations watchdog_fops = {
        .llseek         = no_llseek,
        .write          = watchdog_write,
        .unlocked_ioctl = watchdog_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = watchdog_open,
        .release        = watchdog_release,
 };
index 5c52c73..066a4fb 100644 (file)
@@ -422,6 +422,7 @@ static const struct file_operations wdt977_fops = {
        .llseek         = no_llseek,
        .write          = wdt977_write,
        .unlocked_ioctl = wdt977_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wdt977_open,
        .release        = wdt977_release,
 };
index 66303ab..e528024 100644 (file)
@@ -566,6 +566,7 @@ static const struct file_operations wdtpci_fops = {
        .llseek         = no_llseek,
        .write          = wdtpci_write,
        .unlocked_ioctl = wdtpci_ioctl,
+       .compat_ioctl   = compat_ptr_ioctl,
        .open           = wdtpci_open,
        .release        = wdtpci_release,
 };
index b20228c..10ba2d9 100644 (file)
@@ -412,17 +412,6 @@ COMPATIBLE_IOCTL(PPPIOCDISCONN)
 COMPATIBLE_IOCTL(PPPIOCATTCHAN)
 COMPATIBLE_IOCTL(PPPIOCGCHAN)
 COMPATIBLE_IOCTL(PPPIOCGL2TPSTATS)
-/* Watchdog */
-COMPATIBLE_IOCTL(WDIOC_GETSUPPORT)
-COMPATIBLE_IOCTL(WDIOC_GETSTATUS)
-COMPATIBLE_IOCTL(WDIOC_GETBOOTSTATUS)
-COMPATIBLE_IOCTL(WDIOC_GETTEMP)
-COMPATIBLE_IOCTL(WDIOC_SETOPTIONS)
-COMPATIBLE_IOCTL(WDIOC_KEEPALIVE)
-COMPATIBLE_IOCTL(WDIOC_SETTIMEOUT)
-COMPATIBLE_IOCTL(WDIOC_GETTIMEOUT)
-COMPATIBLE_IOCTL(WDIOC_SETPRETIMEOUT)
-COMPATIBLE_IOCTL(WDIOC_GETPRETIMEOUT)
 };
 
 /*