block: genhd: remove async_events field
authorMartin Wilck <mwilck@suse.com>
Wed, 27 Mar 2019 13:51:01 +0000 (14:51 +0100)
committerJens Axboe <axboe@kernel.dk>
Fri, 12 Apr 2019 19:35:22 +0000 (13:35 -0600)
The async_events field, intended to be used for drivers that support
asynchronous notifications about disk events (aka media change events),
isn't currently used by any driver, and apparently that has been that
way for a long time (if not forever). Remove it.

Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin Wilck <mwilck@suse.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/genhd.c
drivers/block/pktcdvd.c
include/linux/genhd.h

index 703267865f14d5e52e813d8c9cddf68e3ee94354..ee76de0fb4ccec076744d34e8ffa1dff5f31478c 100644 (file)
@@ -1628,12 +1628,11 @@ static unsigned long disk_events_poll_jiffies(struct gendisk *disk)
 
        /*
         * If device-specific poll interval is set, always use it.  If
-        * the default is being used, poll iff there are events which
-        * can't be monitored asynchronously.
+        * the default is being used, poll if the POLL flag is set.
         */
        if (ev->poll_msecs >= 0)
                intv_msecs = ev->poll_msecs;
-       else if (disk->events & ~disk->async_events)
+       else if (disk->events)
                intv_msecs = disk_events_dfl_poll_msecs;
 
        return msecs_to_jiffies(intv_msecs);
@@ -1860,6 +1859,7 @@ static void disk_check_events(struct disk_events *ev,
  *
  * events              : list of all supported events
  * events_async                : list of events which can be detected w/o polling
+ *                       (always empty, only for backwards compatibility)
  * events_poll_msecs   : polling interval, 0: disable, -1: system default
  */
 static ssize_t __disk_events_show(unsigned int events, char *buf)
@@ -1890,9 +1890,7 @@ static ssize_t disk_events_show(struct device *dev,
 static ssize_t disk_events_async_show(struct device *dev,
                                      struct device_attribute *attr, char *buf)
 {
-       struct gendisk *disk = dev_to_disk(dev);
-
-       return __disk_events_show(disk->async_events, buf);
+       return 0;
 }
 
 static ssize_t disk_events_poll_msecs_show(struct device *dev,
index f5a71023f76c527fcd89824926ad1e86333d688e..024060165afa707f72d1189d59d0d0d974cc7230 100644 (file)
@@ -2761,7 +2761,6 @@ static int pkt_setup_dev(dev_t dev, dev_t* pkt_dev)
 
        /* inherit events of the host device */
        disk->events = pd->bdev->bd_disk->events;
-       disk->async_events = pd->bdev->bd_disk->async_events;
 
        add_disk(disk);
 
index 98076b1b5e48d5fb0c87a08d15e180ff5ac57126..a65d9fc17369d894b3850750b3f991ced17f0ef4 100644 (file)
@@ -185,7 +185,6 @@ struct gendisk {
        char *(*devnode)(struct gendisk *gd, umode_t *mode);
 
        unsigned int events;            /* supported events */
-       unsigned int async_events;      /* async events, subset of all */
 
        /* Array of pointers to partitions indexed by partno.
         * Protected with matching bdev lock but stat and other