]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 May 2020 06:38:40 +0000 (08:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 May 2020 06:38:40 +0000 (08:38 +0200)
added patches:
blktrace-fix-potential-deadlock-between-delete-sysfs-ops.patch
blktrace-fix-unlocked-access-to-init-start-stop-teardown.patch
chardev-add-helper-function-to-register-char-devs-with-a-struct-device.patch
net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6_dst_lookup.patch
ptp-do-not-explicitly-set-drvdata-in-ptp_clock_register.patch
ptp-fix-the-race-between-the-release-of-ptp_clock-and-cdev.patch

16 files changed:
queue-4.4/blktrace-fix-dereference-after-null-check.patch
queue-4.4/blktrace-fix-potential-deadlock-between-delete-sysfs-ops.patch [moved from queue-4.4/blktrace-fix-potential-deadlock-between-delete-sysfs.patch with 73% similarity]
queue-4.4/blktrace-fix-trace-mutex-deadlock.patch
queue-4.4/blktrace-fix-unlocked-access-to-init-start-stop-teardown.patch [moved from queue-4.4/blktrace-fix-unlocked-access-to-init-start-stop-tear.patch with 75% similarity]
queue-4.4/blktrace-protect-q-blk_trace-with-rcu.patch
queue-4.4/chardev-add-helper-function-to-register-char-devs-with-a-struct-device.patch [moved from queue-4.4/chardev-add-helper-function-to-register-char-devs-wi.patch with 91% similarity]
queue-4.4/ext4-add-cond_resched-to-ext4_protect_reserved_inode.patch
queue-4.4/net-ipv6-add-net-argument-to-ip6_dst_lookup_flow.patch
queue-4.4/net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6_dst_lookup.patch [moved from queue-4.4/net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6.patch with 73% similarity]
queue-4.4/ptp-create-pins-together-with-the-rest-of-attributes.patch
queue-4.4/ptp-do-not-explicitly-set-drvdata-in-ptp_clock_register.patch [moved from queue-4.4/ptp-do-not-explicitly-set-drvdata-in-ptp_clock_regis.patch with 66% similarity]
queue-4.4/ptp-fix-pass-zero-to-err_ptr-in-ptp_clock_register.patch
queue-4.4/ptp-fix-the-race-between-the-release-of-ptp_clock-and-cdev.patch [moved from queue-4.4/ptp-fix-the-race-between-the-release-of-ptp_clock-an.patch with 86% similarity]
queue-4.4/ptp-free-ptp-device-pin-descriptors-properly.patch
queue-4.4/ptp-use-is_visible-method-to-hide-unused-attributes.patch
queue-4.4/series

index 54d578411eac14bc956ce4f4c221b1508863cb30..a02892278c7034ba3dc2d37c0208126dbeb74fe3 100644 (file)
@@ -1,5 +1,5 @@
-From af666a41a5823e30f88387ff0dc85cd3d6d0cbe4 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Cengiz Can <cengiz@kernel.wtf>
 Date: Wed, 4 Mar 2020 13:58:19 +0300
 Subject: blktrace: fix dereference after null check
 
@@ -43,16 +43,14 @@ Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
 Signed-off-by: Cengiz Can <cengiz@kernel.wtf>
 Signed-off-by: Jens Axboe <axboe@kernel.dk>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- kernel/trace/blktrace.c | 5 ++++-
+ kernel/trace/blktrace.c |    5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)
 
-diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index bf9bf3f22edb5..6737564680193 100644
 --- a/kernel/trace/blktrace.c
 +++ b/kernel/trace/blktrace.c
-@@ -1822,8 +1822,11 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1822,8 +1822,11 @@ static ssize_t sysfs_blk_trace_attr_stor
        }
  
        ret = 0;
@@ -65,6 +63,3 @@ index bf9bf3f22edb5..6737564680193 100644
  
        if (ret == 0) {
                if (attr == &dev_attr_act_mask)
--- 
-2.20.1
-
similarity index 73%
rename from queue-4.4/blktrace-fix-potential-deadlock-between-delete-sysfs.patch
rename to queue-4.4/blktrace-fix-potential-deadlock-between-delete-sysfs-ops.patch
index bf5488ecead1c0616a01b5c7b6aeb0f5dd5a3119..3137c98a1c8188d2afa704a14d66ac8a19254afa 100644 (file)
@@ -1,5 +1,5 @@
-From 8f7d1986c7ee15bdfbb32b33a45da62f94583f01 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Waiman Long <longman@redhat.com>
 Date: Wed, 20 Sep 2017 13:12:20 -0600
 Subject: blktrace: Fix potential deadlock between delete & sysfs ops
 
@@ -46,18 +46,16 @@ the code used to work.
 
 Signed-off-by: Jens Axboe <axboe@kernel.dk>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- block/blk-core.c        |  3 +++
- include/linux/blkdev.h  |  1 +
- kernel/trace/blktrace.c | 18 ++++++++++++------
+ block/blk-core.c        |    3 +++
+ include/linux/blkdev.h  |    1 +
+ kernel/trace/blktrace.c |   18 ++++++++++++------
  3 files changed, 16 insertions(+), 6 deletions(-)
 
-diff --git a/block/blk-core.c b/block/blk-core.c
-index 7662f97dded69..dc4119a1e1229 100644
 --- a/block/blk-core.c
 +++ b/block/blk-core.c
-@@ -719,6 +719,9 @@ struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id)
+@@ -719,6 +719,9 @@ struct request_queue *blk_alloc_queue_no
  
        kobject_init(&q->kobj, &blk_queue_ktype);
  
@@ -67,8 +65,6 @@ index 7662f97dded69..dc4119a1e1229 100644
        mutex_init(&q->sysfs_lock);
        spin_lock_init(&q->__queue_lock);
  
-diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
-index 4ae5d6ecd7275..ab819210e0112 100644
 --- a/include/linux/blkdev.h
 +++ b/include/linux/blkdev.h
 @@ -432,6 +432,7 @@ struct request_queue {
@@ -79,11 +75,9 @@ index 4ae5d6ecd7275..ab819210e0112 100644
  #endif
        /*
         * for flush operations
-diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index 210b8e726a974..5e6fc28414028 100644
 --- a/kernel/trace/blktrace.c
 +++ b/kernel/trace/blktrace.c
-@@ -644,6 +644,12 @@ int blk_trace_startstop(struct request_queue *q, int start)
+@@ -644,6 +644,12 @@ int blk_trace_startstop(struct request_q
  }
  EXPORT_SYMBOL_GPL(blk_trace_startstop);
  
@@ -96,7 +90,7 @@ index 210b8e726a974..5e6fc28414028 100644
  /**
   * blk_trace_ioctl: - handle the ioctls associated with tracing
   * @bdev:     the block device
-@@ -661,7 +667,7 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -661,7 +667,7 @@ int blk_trace_ioctl(struct block_device
        if (!q)
                return -ENXIO;
  
@@ -105,7 +99,7 @@ index 210b8e726a974..5e6fc28414028 100644
  
        switch (cmd) {
        case BLKTRACESETUP:
-@@ -687,7 +693,7 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -687,7 +693,7 @@ int blk_trace_ioctl(struct block_device
                break;
        }
  
@@ -114,7 +108,7 @@ index 210b8e726a974..5e6fc28414028 100644
        return ret;
  }
  
-@@ -1652,7 +1658,7 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
+@@ -1652,7 +1658,7 @@ static ssize_t sysfs_blk_trace_attr_show
        if (q == NULL)
                goto out_bdput;
  
@@ -123,7 +117,7 @@ index 210b8e726a974..5e6fc28414028 100644
  
        if (attr == &dev_attr_enable) {
                ret = sprintf(buf, "%u\n", !!q->blk_trace);
-@@ -1671,7 +1677,7 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
+@@ -1671,7 +1677,7 @@ static ssize_t sysfs_blk_trace_attr_show
                ret = sprintf(buf, "%llu\n", q->blk_trace->end_lba);
  
  out_unlock_bdev:
@@ -132,7 +126,7 @@ index 210b8e726a974..5e6fc28414028 100644
  out_bdput:
        bdput(bdev);
  out:
-@@ -1713,7 +1719,7 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1713,7 +1719,7 @@ static ssize_t sysfs_blk_trace_attr_stor
        if (q == NULL)
                goto out_bdput;
  
@@ -141,7 +135,7 @@ index 210b8e726a974..5e6fc28414028 100644
  
        if (attr == &dev_attr_enable) {
                if (!!value == !!q->blk_trace) {
-@@ -1743,7 +1749,7 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1743,7 +1749,7 @@ static ssize_t sysfs_blk_trace_attr_stor
        }
  
  out_unlock_bdev:
@@ -150,6 +144,3 @@ index 210b8e726a974..5e6fc28414028 100644
  out_bdput:
        bdput(bdev);
  out:
--- 
-2.20.1
-
index b02497a6e034081af9a3c91d6c7a3e839b28d9dc..c82cbfabc697047f28c9130675093152f296bb6c 100644 (file)
@@ -1,5 +1,5 @@
-From 3ce9f765dac1051141b48809f8608d840c655b7e Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Jens Axboe <axboe@kernel.dk>
 Date: Sun, 19 Nov 2017 11:52:55 -0700
 Subject: blktrace: fix trace mutex deadlock
 
@@ -15,16 +15,14 @@ attempting to re-acquire the queue trace mutex.
 Fixes: 1f2cac107c59 ("blktrace: fix unlocked access to init/start-stop/teardown")
 Signed-off-by: Jens Axboe <axboe@kernel.dk>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- kernel/trace/blktrace.c | 4 ++--
+ kernel/trace/blktrace.c |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index dc5fd20429d8e..ea18c6997eb23 100644
 --- a/kernel/trace/blktrace.c
 +++ b/kernel/trace/blktrace.c
-@@ -572,7 +572,7 @@ static int __blk_trace_setup(struct request_queue *q, char *name, dev_t dev,
+@@ -572,7 +572,7 @@ static int __blk_trace_setup(struct requ
                return ret;
  
        if (copy_to_user(arg, &buts, sizeof(buts))) {
@@ -33,7 +31,7 @@ index dc5fd20429d8e..ea18c6997eb23 100644
                return -EFAULT;
        }
        return 0;
-@@ -618,7 +618,7 @@ static int compat_blk_trace_setup(struct request_queue *q, char *name,
+@@ -618,7 +618,7 @@ static int compat_blk_trace_setup(struct
                return ret;
  
        if (copy_to_user(arg, &buts.name, ARRAY_SIZE(buts.name))) {
@@ -42,6 +40,3 @@ index dc5fd20429d8e..ea18c6997eb23 100644
                return -EFAULT;
        }
  
--- 
-2.20.1
-
similarity index 75%
rename from queue-4.4/blktrace-fix-unlocked-access-to-init-start-stop-tear.patch
rename to queue-4.4/blktrace-fix-unlocked-access-to-init-start-stop-teardown.patch
index cf1c26d44147cf046ce52bca28c3787461d7ce1b..954c64fb4015ccb30022043bff5cedde2429cd0d 100644 (file)
@@ -1,5 +1,5 @@
-From bf5b9cf66d2ef05afd456e3b524edc72d1ae1452 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Jens Axboe <axboe@kernel.dk>
 Date: Sun, 5 Nov 2017 09:13:48 -0700
 Subject: blktrace: fix unlocked access to init/start-stop/teardown
 
@@ -17,16 +17,14 @@ Fixes: 6da127ad0918 ("blktrace: Add blktrace ioctls to SCSI generic devices")
 Tested-by: Dmitry Vyukov <dvyukov@google.com>
 Signed-off-by: Jens Axboe <axboe@kernel.dk>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- kernel/trace/blktrace.c | 58 ++++++++++++++++++++++++++++++++++-------
+ kernel/trace/blktrace.c |   58 +++++++++++++++++++++++++++++++++++++++---------
  1 file changed, 48 insertions(+), 10 deletions(-)
 
-diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index 5e6fc28414028..dc5fd20429d8e 100644
 --- a/kernel/trace/blktrace.c
 +++ b/kernel/trace/blktrace.c
-@@ -323,7 +323,7 @@ static void blk_trace_cleanup(struct blk_trace *bt)
+@@ -323,7 +323,7 @@ static void blk_trace_cleanup(struct blk
        put_probe_ref();
  }
  
@@ -35,7 +33,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  {
        struct blk_trace *bt;
  
-@@ -336,6 +336,17 @@ int blk_trace_remove(struct request_queue *q)
+@@ -336,6 +336,17 @@ int blk_trace_remove(struct request_queu
  
        return 0;
  }
@@ -65,7 +63,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  {
        struct blk_user_trace_setup buts;
        int ret;
-@@ -567,6 +577,19 @@ int blk_trace_setup(struct request_queue *q, char *name, dev_t dev,
+@@ -567,6 +577,19 @@ int blk_trace_setup(struct request_queue
        }
        return 0;
  }
@@ -85,7 +83,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  EXPORT_SYMBOL_GPL(blk_trace_setup);
  
  #if defined(CONFIG_COMPAT) && defined(CONFIG_X86_64)
-@@ -603,7 +626,7 @@ static int compat_blk_trace_setup(struct request_queue *q, char *name,
+@@ -603,7 +626,7 @@ static int compat_blk_trace_setup(struct
  }
  #endif
  
@@ -94,7 +92,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  {
        int ret;
        struct blk_trace *bt = q->blk_trace;
-@@ -642,6 +665,17 @@ int blk_trace_startstop(struct request_queue *q, int start)
+@@ -642,6 +665,17 @@ int blk_trace_startstop(struct request_q
  
        return ret;
  }
@@ -112,7 +110,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  EXPORT_SYMBOL_GPL(blk_trace_startstop);
  
  /*
-@@ -672,7 +706,7 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -672,7 +706,7 @@ int blk_trace_ioctl(struct block_device
        switch (cmd) {
        case BLKTRACESETUP:
                bdevname(bdev, b);
@@ -121,7 +119,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
                break;
  #if defined(CONFIG_COMPAT) && defined(CONFIG_X86_64)
        case BLKTRACESETUP32:
-@@ -683,10 +717,10 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -683,10 +717,10 @@ int blk_trace_ioctl(struct block_device
        case BLKTRACESTART:
                start = 1;
        case BLKTRACESTOP:
@@ -134,7 +132,7 @@ index 5e6fc28414028..dc5fd20429d8e 100644
                break;
        default:
                ret = -ENOTTY;
-@@ -704,10 +738,14 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -704,10 +738,14 @@ int blk_trace_ioctl(struct block_device
   **/
  void blk_trace_shutdown(struct request_queue *q)
  {
@@ -151,6 +149,3 @@ index 5e6fc28414028..dc5fd20429d8e 100644
  }
  
  /*
--- 
-2.20.1
-
index db1d0def2813bd65ae79be5084a01a205de8f9d6..d50168cc6364703193a231f67f929de88d0177f2 100644 (file)
@@ -1,5 +1,5 @@
-From 983c9cde9359d5198ebd9adfcb1b9378b98d64c8 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Jan Kara <jack@suse.cz>
 Date: Thu, 6 Feb 2020 15:28:12 +0100
 Subject: blktrace: Protect q->blk_trace with RCU
 
@@ -33,15 +33,13 @@ Signed-off-by: Jens Axboe <axboe@kernel.dk>
  - Drop changes in blk_trace_note_message_enabled(), blk_trace_bio_get_cgid()
  - Adjust context]
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- include/linux/blkdev.h       |   2 +-
- include/linux/blktrace_api.h |   6 +-
- kernel/trace/blktrace.c      | 110 +++++++++++++++++++++++++----------
+ include/linux/blkdev.h       |    2 
+ include/linux/blktrace_api.h |    6 +-
+ kernel/trace/blktrace.c      |  110 +++++++++++++++++++++++++++++++------------
  3 files changed, 86 insertions(+), 32 deletions(-)
 
-diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
-index ab819210e0112..6e83ea61436a7 100644
 --- a/include/linux/blkdev.h
 +++ b/include/linux/blkdev.h
 @@ -431,7 +431,7 @@ struct request_queue {
@@ -53,11 +51,9 @@ index ab819210e0112..6e83ea61436a7 100644
        struct mutex            blk_trace_mutex;
  #endif
        /*
-diff --git a/include/linux/blktrace_api.h b/include/linux/blktrace_api.h
-index afc1343df3c7a..e644bfe50019c 100644
 --- a/include/linux/blktrace_api.h
 +++ b/include/linux/blktrace_api.h
-@@ -51,9 +51,13 @@ void __trace_note_message(struct blk_trace *, const char *fmt, ...);
+@@ -51,9 +51,13 @@ void __trace_note_message(struct blk_tra
   **/
  #define blk_add_trace_msg(q, fmt, ...)                                        \
        do {                                                            \
@@ -72,8 +68,6 @@ index afc1343df3c7a..e644bfe50019c 100644
        } while (0)
  #define BLK_TN_MAX_MSG                128
  
-diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
-index ea18c6997eb23..bf9bf3f22edb5 100644
 --- a/kernel/trace/blktrace.c
 +++ b/kernel/trace/blktrace.c
 @@ -319,6 +319,7 @@ static void put_probe_ref(void)
@@ -84,7 +78,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        blk_trace_free(bt);
        put_probe_ref();
  }
-@@ -629,8 +630,10 @@ static int compat_blk_trace_setup(struct request_queue *q, char *name,
+@@ -629,8 +630,10 @@ static int compat_blk_trace_setup(struct
  static int __blk_trace_startstop(struct request_queue *q, int start)
  {
        int ret;
@@ -96,7 +90,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        if (bt == NULL)
                return -EINVAL;
  
-@@ -739,8 +742,8 @@ int blk_trace_ioctl(struct block_device *bdev, unsigned cmd, char __user *arg)
+@@ -739,8 +742,8 @@ int blk_trace_ioctl(struct block_device
  void blk_trace_shutdown(struct request_queue *q)
  {
        mutex_lock(&q->blk_trace_mutex);
@@ -107,7 +101,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
                __blk_trace_startstop(q, 0);
                __blk_trace_remove(q);
        }
-@@ -766,10 +769,14 @@ void blk_trace_shutdown(struct request_queue *q)
+@@ -766,10 +769,14 @@ void blk_trace_shutdown(struct request_q
  static void blk_add_trace_rq(struct request_queue *q, struct request *rq,
                             unsigned int nr_bytes, u32 what)
  {
@@ -124,7 +118,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  
        if (rq->cmd_type == REQ_TYPE_BLOCK_PC) {
                what |= BLK_TC_ACT(BLK_TC_PC);
-@@ -780,6 +787,7 @@ static void blk_add_trace_rq(struct request_queue *q, struct request *rq,
+@@ -780,6 +787,7 @@ static void blk_add_trace_rq(struct requ
                __blk_add_trace(bt, blk_rq_pos(rq), nr_bytes,
                                rq->cmd_flags, what, rq->errors, 0, NULL);
        }
@@ -132,7 +126,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  
  static void blk_add_trace_rq_abort(void *ignore,
-@@ -829,13 +837,18 @@ static void blk_add_trace_rq_complete(void *ignore,
+@@ -829,13 +837,18 @@ static void blk_add_trace_rq_complete(vo
  static void blk_add_trace_bio(struct request_queue *q, struct bio *bio,
                              u32 what, int error)
  {
@@ -153,7 +147,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  
  static void blk_add_trace_bio_bounce(void *ignore,
-@@ -880,10 +893,13 @@ static void blk_add_trace_getrq(void *ignore,
+@@ -880,10 +893,13 @@ static void blk_add_trace_getrq(void *ig
        if (bio)
                blk_add_trace_bio(q, bio, BLK_TA_GETRQ, 0);
        else {
@@ -168,7 +162,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        }
  }
  
-@@ -895,27 +911,35 @@ static void blk_add_trace_sleeprq(void *ignore,
+@@ -895,27 +911,35 @@ static void blk_add_trace_sleeprq(void *
        if (bio)
                blk_add_trace_bio(q, bio, BLK_TA_SLEEPRQ, 0);
        else {
@@ -207,7 +201,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        if (bt) {
                __be64 rpdu = cpu_to_be64(depth);
                u32 what;
-@@ -927,14 +951,17 @@ static void blk_add_trace_unplug(void *ignore, struct request_queue *q,
+@@ -927,14 +951,17 @@ static void blk_add_trace_unplug(void *i
  
                __blk_add_trace(bt, 0, 0, 0, what, 0, sizeof(rpdu), &rpdu);
        }
@@ -226,7 +220,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        if (bt) {
                __be64 rpdu = cpu_to_be64(pdu);
  
-@@ -942,6 +969,7 @@ static void blk_add_trace_split(void *ignore,
+@@ -942,6 +969,7 @@ static void blk_add_trace_split(void *ig
                                bio->bi_iter.bi_size, bio->bi_rw, BLK_TA_SPLIT,
                                bio->bi_error, sizeof(rpdu), &rpdu);
        }
@@ -234,7 +228,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  
  /**
-@@ -961,11 +989,15 @@ static void blk_add_trace_bio_remap(void *ignore,
+@@ -961,11 +989,15 @@ static void blk_add_trace_bio_remap(void
                                    struct request_queue *q, struct bio *bio,
                                    dev_t dev, sector_t from)
  {
@@ -252,7 +246,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  
        r.device_from = cpu_to_be32(dev);
        r.device_to   = cpu_to_be32(bio->bi_bdev->bd_dev);
-@@ -974,6 +1006,7 @@ static void blk_add_trace_bio_remap(void *ignore,
+@@ -974,6 +1006,7 @@ static void blk_add_trace_bio_remap(void
        __blk_add_trace(bt, bio->bi_iter.bi_sector, bio->bi_iter.bi_size,
                        bio->bi_rw, BLK_TA_REMAP, bio->bi_error,
                        sizeof(r), &r);
@@ -260,7 +254,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  
  /**
-@@ -994,11 +1027,15 @@ static void blk_add_trace_rq_remap(void *ignore,
+@@ -994,11 +1027,15 @@ static void blk_add_trace_rq_remap(void
                                   struct request *rq, dev_t dev,
                                   sector_t from)
  {
@@ -278,7 +272,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  
        r.device_from = cpu_to_be32(dev);
        r.device_to   = cpu_to_be32(disk_devt(rq->rq_disk));
-@@ -1007,6 +1044,7 @@ static void blk_add_trace_rq_remap(void *ignore,
+@@ -1007,6 +1044,7 @@ static void blk_add_trace_rq_remap(void
        __blk_add_trace(bt, blk_rq_pos(rq), blk_rq_bytes(rq),
                        rq_data_dir(rq), BLK_TA_REMAP, !!rq->errors,
                        sizeof(r), &r);
@@ -286,7 +280,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  
  /**
-@@ -1024,10 +1062,14 @@ void blk_add_driver_data(struct request_queue *q,
+@@ -1024,10 +1062,14 @@ void blk_add_driver_data(struct request_
                         struct request *rq,
                         void *data, size_t len)
  {
@@ -303,7 +297,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  
        if (rq->cmd_type == REQ_TYPE_BLOCK_PC)
                __blk_add_trace(bt, 0, blk_rq_bytes(rq), 0,
-@@ -1035,6 +1077,7 @@ void blk_add_driver_data(struct request_queue *q,
+@@ -1035,6 +1077,7 @@ void blk_add_driver_data(struct request_
        else
                __blk_add_trace(bt, blk_rq_pos(rq), blk_rq_bytes(rq), 0,
                                BLK_TA_DRV_DATA, rq->errors, len, data);
@@ -311,7 +305,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  }
  EXPORT_SYMBOL_GPL(blk_add_driver_data);
  
-@@ -1526,6 +1569,7 @@ static int blk_trace_remove_queue(struct request_queue *q)
+@@ -1526,6 +1569,7 @@ static int blk_trace_remove_queue(struct
                return -EINVAL;
  
        put_probe_ref();
@@ -319,7 +313,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        blk_trace_free(bt);
        return 0;
  }
-@@ -1686,6 +1730,7 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
+@@ -1686,6 +1730,7 @@ static ssize_t sysfs_blk_trace_attr_show
        struct hd_struct *p = dev_to_part(dev);
        struct request_queue *q;
        struct block_device *bdev;
@@ -327,7 +321,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        ssize_t ret = -ENXIO;
  
        bdev = bdget(part_devt(p));
-@@ -1698,21 +1743,23 @@ static ssize_t sysfs_blk_trace_attr_show(struct device *dev,
+@@ -1698,21 +1743,23 @@ static ssize_t sysfs_blk_trace_attr_show
  
        mutex_lock(&q->blk_trace_mutex);
  
@@ -357,7 +351,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
  
  out_unlock_bdev:
        mutex_unlock(&q->blk_trace_mutex);
-@@ -1729,6 +1776,7 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1729,6 +1776,7 @@ static ssize_t sysfs_blk_trace_attr_stor
        struct block_device *bdev;
        struct request_queue *q;
        struct hd_struct *p;
@@ -365,7 +359,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        u64 value;
        ssize_t ret = -EINVAL;
  
-@@ -1759,8 +1807,10 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1759,8 +1807,10 @@ static ssize_t sysfs_blk_trace_attr_stor
  
        mutex_lock(&q->blk_trace_mutex);
  
@@ -377,7 +371,7 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
                        ret = 0;
                        goto out_unlock_bdev;
                }
-@@ -1772,18 +1822,18 @@ static ssize_t sysfs_blk_trace_attr_store(struct device *dev,
+@@ -1772,18 +1822,18 @@ static ssize_t sysfs_blk_trace_attr_stor
        }
  
        ret = 0;
@@ -401,6 +395,3 @@ index ea18c6997eb23..bf9bf3f22edb5 100644
        }
  
  out_unlock_bdev:
--- 
-2.20.1
-
similarity index 91%
rename from queue-4.4/chardev-add-helper-function-to-register-char-devs-wi.patch
rename to queue-4.4/chardev-add-helper-function-to-register-char-devs-with-a-struct-device.patch
index f408164400ac3fd88bfe35836023e070495c96fd..67408a65c6efc7ec519be72a5c0e29280aee7a21 100644 (file)
@@ -1,8 +1,7 @@
-From 97a8c1f2fc99b003af733258a9da0e81f7a28f65 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Logan Gunthorpe <logang@deltatee.com>
 Date: Fri, 17 Mar 2017 12:48:08 -0600
-Subject: chardev: add helper function to register char devs with a struct
- device
+Subject: chardev: add helper function to register char devs with a struct device
 
 From: Logan Gunthorpe <logang@deltatee.com>
 
@@ -74,17 +73,15 @@ Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
 Reviewed-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- fs/char_dev.c        | 86 ++++++++++++++++++++++++++++++++++++++++++++
- include/linux/cdev.h |  5 +++
+ fs/char_dev.c        |   86 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ include/linux/cdev.h |    5 ++
  2 files changed, 91 insertions(+)
 
-diff --git a/fs/char_dev.c b/fs/char_dev.c
-index f1f3bb8127997..9154a2d7b195a 100644
 --- a/fs/char_dev.c
 +++ b/fs/char_dev.c
-@@ -472,6 +472,85 @@ int cdev_add(struct cdev *p, dev_t dev, unsigned count)
+@@ -472,6 +472,85 @@ int cdev_add(struct cdev *p, dev_t dev,
        return 0;
  }
  
@@ -170,7 +167,7 @@ index f1f3bb8127997..9154a2d7b195a 100644
  static void cdev_unmap(dev_t dev, unsigned count)
  {
        kobj_unmap(cdev_map, dev, count);
-@@ -483,6 +562,10 @@ static void cdev_unmap(dev_t dev, unsigned count)
+@@ -483,6 +562,10 @@ static void cdev_unmap(dev_t dev, unsign
   *
   * cdev_del() removes @p from the system, possibly freeing the structure
   * itself.
@@ -190,8 +187,6 @@ index f1f3bb8127997..9154a2d7b195a 100644
 +EXPORT_SYMBOL(cdev_device_del);
  EXPORT_SYMBOL(__register_chrdev);
  EXPORT_SYMBOL(__unregister_chrdev);
-diff --git a/include/linux/cdev.h b/include/linux/cdev.h
-index f8763615a5f2d..408bc09ce497b 100644
 --- a/include/linux/cdev.h
 +++ b/include/linux/cdev.h
 @@ -4,6 +4,7 @@
@@ -213,6 +208,3 @@ index f8763615a5f2d..408bc09ce497b 100644
  void cdev_del(struct cdev *);
  
  void cd_forget(struct inode *);
--- 
-2.20.1
-
index f4f2fa3064e6682713700d008f2beb92507390d1..b131b0fe3b324b7617637b77710696f680b95c46 100644 (file)
@@ -1,5 +1,5 @@
-From 0aab6dfe4fbb5946ad60d17d44809b87c6db0f7f Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Shijie Luo <luoshijie1@huawei.com>
 Date: Mon, 10 Feb 2020 20:17:52 -0500
 Subject: ext4: add cond_resched() to ext4_protect_reserved_inode
 
@@ -47,16 +47,14 @@ Signed-off-by: Shijie Luo <luoshijie1@huawei.com>
 Signed-off-by: Theodore Ts'o <tytso@mit.edu>
 Cc: stable@kernel.org
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- fs/ext4/block_validity.c | 1 +
+ fs/ext4/block_validity.c |    1 +
  1 file changed, 1 insertion(+)
 
-diff --git a/fs/ext4/block_validity.c b/fs/ext4/block_validity.c
-index ccd80f2b3b19b..d5055b3adcccd 100644
 --- a/fs/ext4/block_validity.c
 +++ b/fs/ext4/block_validity.c
-@@ -152,6 +152,7 @@ static int ext4_protect_reserved_inode(struct super_block *sb, u32 ino)
+@@ -152,6 +152,7 @@ static int ext4_protect_reserved_inode(s
                return PTR_ERR(inode);
        num = (inode->i_size + sb->s_blocksize - 1) >> sb->s_blocksize_bits;
        while (i < num) {
@@ -64,6 +62,3 @@ index ccd80f2b3b19b..d5055b3adcccd 100644
                map.m_lblk = i;
                map.m_len = num - i;
                n = ext4_map_blocks(NULL, inode, &map, 0);
--- 
-2.20.1
-
index 8dd6f27db2cf0514b1763e416bacda9d10740ce3..aa495b6d6628d42c5f08a1b9d0583fd165a0fc0c 100644 (file)
@@ -1,5 +1,5 @@
-From 8a8ddda4cb5f9ea6bcc6b32d5938a978b73ee835 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Sabrina Dubroca <sd@queasysnail.net>
 Date: Wed, 4 Dec 2019 15:35:52 +0100
 Subject: net: ipv6: add net argument to ip6_dst_lookup_flow
 
@@ -16,26 +16,24 @@ Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 [bwh: Backported to 4.4: adjust context]
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- include/net/ipv6.h               | 2 +-
- net/dccp/ipv6.c                  | 6 +++---
- net/ipv6/af_inet6.c              | 2 +-
- net/ipv6/datagram.c              | 2 +-
- net/ipv6/inet6_connection_sock.c | 4 ++--
- net/ipv6/ip6_output.c            | 8 ++++----
- net/ipv6/raw.c                   | 2 +-
- net/ipv6/syncookies.c            | 2 +-
- net/ipv6/tcp_ipv6.c              | 4 ++--
- net/l2tp/l2tp_ip6.c              | 2 +-
- net/sctp/ipv6.c                  | 4 ++--
+ include/net/ipv6.h               |    2 +-
+ net/dccp/ipv6.c                  |    6 +++---
+ net/ipv6/af_inet6.c              |    2 +-
+ net/ipv6/datagram.c              |    2 +-
+ net/ipv6/inet6_connection_sock.c |    4 ++--
+ net/ipv6/ip6_output.c            |    8 ++++----
+ net/ipv6/raw.c                   |    2 +-
+ net/ipv6/syncookies.c            |    2 +-
+ net/ipv6/tcp_ipv6.c              |    4 ++--
+ net/l2tp/l2tp_ip6.c              |    2 +-
+ net/sctp/ipv6.c                  |    4 ++--
  11 files changed, 19 insertions(+), 19 deletions(-)
 
-diff --git a/include/net/ipv6.h b/include/net/ipv6.h
-index c07cf9596b6fb..6258264a0bf73 100644
 --- a/include/net/ipv6.h
 +++ b/include/net/ipv6.h
-@@ -853,7 +853,7 @@ static inline struct sk_buff *ip6_finish_skb(struct sock *sk)
+@@ -853,7 +853,7 @@ static inline struct sk_buff *ip6_finish
  
  int ip6_dst_lookup(struct net *net, struct sock *sk, struct dst_entry **dst,
                   struct flowi6 *fl6);
@@ -44,11 +42,9 @@ index c07cf9596b6fb..6258264a0bf73 100644
                                      const struct in6_addr *final_dst);
  struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
                                         const struct in6_addr *final_dst);
-diff --git a/net/dccp/ipv6.c b/net/dccp/ipv6.c
-index 10eabd1a60aa7..736cc95b52011 100644
 --- a/net/dccp/ipv6.c
 +++ b/net/dccp/ipv6.c
-@@ -209,7 +209,7 @@ static int dccp_v6_send_response(const struct sock *sk, struct request_sock *req
+@@ -209,7 +209,7 @@ static int dccp_v6_send_response(const s
        final_p = fl6_update_dst(&fl6, rcu_dereference(np->opt), &final);
        rcu_read_unlock();
  
@@ -57,7 +53,7 @@ index 10eabd1a60aa7..736cc95b52011 100644
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
                dst = NULL;
-@@ -276,7 +276,7 @@ static void dccp_v6_ctl_send_reset(const struct sock *sk, struct sk_buff *rxskb)
+@@ -276,7 +276,7 @@ static void dccp_v6_ctl_send_reset(const
        security_skb_classify_flow(rxskb, flowi6_to_flowi(&fl6));
  
        /* sk = NULL, but it is safe for now. RST socket required. */
@@ -66,7 +62,7 @@ index 10eabd1a60aa7..736cc95b52011 100644
        if (!IS_ERR(dst)) {
                skb_dst_set(skb, dst);
                ip6_xmit(ctl_sk, skb, &fl6, NULL, 0);
-@@ -879,7 +879,7 @@ static int dccp_v6_connect(struct sock *sk, struct sockaddr *uaddr,
+@@ -879,7 +879,7 @@ static int dccp_v6_connect(struct sock *
        opt = rcu_dereference_protected(np->opt, sock_owned_by_user(sk));
        final_p = fl6_update_dst(&fl6, opt, &final);
  
@@ -75,11 +71,9 @@ index 10eabd1a60aa7..736cc95b52011 100644
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
                goto failure;
-diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
-index 46bf78a2843ac..9d04393e87019 100644
 --- a/net/ipv6/af_inet6.c
 +++ b/net/ipv6/af_inet6.c
-@@ -683,7 +683,7 @@ int inet6_sk_rebuild_header(struct sock *sk)
+@@ -683,7 +683,7 @@ int inet6_sk_rebuild_header(struct sock
                                         &final);
                rcu_read_unlock();
  
@@ -88,8 +82,6 @@ index 46bf78a2843ac..9d04393e87019 100644
                if (IS_ERR(dst)) {
                        sk->sk_route_caps = 0;
                        sk->sk_err_soft = -PTR_ERR(dst);
-diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c
-index 27cdf543c5390..f33154365b643 100644
 --- a/net/ipv6/datagram.c
 +++ b/net/ipv6/datagram.c
 @@ -179,7 +179,7 @@ ipv4_connected:
@@ -101,11 +93,9 @@ index 27cdf543c5390..f33154365b643 100644
        err = 0;
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
-diff --git a/net/ipv6/inet6_connection_sock.c b/net/ipv6/inet6_connection_sock.c
-index a7ca2cde2ecbc..b31ab511c7671 100644
 --- a/net/ipv6/inet6_connection_sock.c
 +++ b/net/ipv6/inet6_connection_sock.c
-@@ -88,7 +88,7 @@ struct dst_entry *inet6_csk_route_req(const struct sock *sk,
+@@ -88,7 +88,7 @@ struct dst_entry *inet6_csk_route_req(co
        fl6->fl6_sport = htons(ireq->ir_num);
        security_req_classify_flow(req, flowi6_to_flowi(fl6));
  
@@ -114,7 +104,7 @@ index a7ca2cde2ecbc..b31ab511c7671 100644
        if (IS_ERR(dst))
                return NULL;
  
-@@ -142,7 +142,7 @@ static struct dst_entry *inet6_csk_route_socket(struct sock *sk,
+@@ -142,7 +142,7 @@ static struct dst_entry *inet6_csk_route
  
        dst = __inet6_csk_dst_check(sk, np->dst_cookie);
        if (!dst) {
@@ -123,8 +113,6 @@ index a7ca2cde2ecbc..b31ab511c7671 100644
  
                if (!IS_ERR(dst))
                        ip6_dst_store(sk, dst, NULL, NULL);
-diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
-index e39dc94486b2c..1e2b8d33d303b 100644
 --- a/net/ipv6/ip6_output.c
 +++ b/net/ipv6/ip6_output.c
 @@ -1057,13 +1057,13 @@ EXPORT_SYMBOL_GPL(ip6_dst_lookup);
@@ -143,7 +131,7 @@ index e39dc94486b2c..1e2b8d33d303b 100644
        if (err)
                return ERR_PTR(err);
        if (final_dst)
-@@ -1071,7 +1071,7 @@ struct dst_entry *ip6_dst_lookup_flow(const struct sock *sk, struct flowi6 *fl6,
+@@ -1071,7 +1071,7 @@ struct dst_entry *ip6_dst_lookup_flow(co
        if (!fl6->flowi6_oif)
                fl6->flowi6_oif = l3mdev_fib_oif(dst->dev);
  
@@ -152,7 +140,7 @@ index e39dc94486b2c..1e2b8d33d303b 100644
  }
  EXPORT_SYMBOL_GPL(ip6_dst_lookup_flow);
  
-@@ -1096,7 +1096,7 @@ struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
+@@ -1096,7 +1096,7 @@ struct dst_entry *ip6_sk_dst_lookup_flow
  
        dst = ip6_sk_dst_check(sk, dst, fl6);
        if (!dst)
@@ -161,11 +149,9 @@ index e39dc94486b2c..1e2b8d33d303b 100644
  
        return dst;
  }
-diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
-index 86c75e97cfec3..67cdcd3d644fa 100644
 --- a/net/ipv6/raw.c
 +++ b/net/ipv6/raw.c
-@@ -889,7 +889,7 @@ static int rawv6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
+@@ -889,7 +889,7 @@ static int rawv6_sendmsg(struct sock *sk
        if (hdrincl)
                fl6.flowi6_flags |= FLOWI_FLAG_KNOWN_NH;
  
@@ -174,11 +160,9 @@ index 86c75e97cfec3..67cdcd3d644fa 100644
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
                goto out;
-diff --git a/net/ipv6/syncookies.c b/net/ipv6/syncookies.c
-index aee87282d3521..fb3ba2a511196 100644
 --- a/net/ipv6/syncookies.c
 +++ b/net/ipv6/syncookies.c
-@@ -231,7 +231,7 @@ struct sock *cookie_v6_check(struct sock *sk, struct sk_buff *skb)
+@@ -231,7 +231,7 @@ struct sock *cookie_v6_check(struct sock
                fl6.fl6_sport = inet_sk(sk)->inet_sport;
                security_req_classify_flow(req, flowi6_to_flowi(&fl6));
  
@@ -187,11 +171,9 @@ index aee87282d3521..fb3ba2a511196 100644
                if (IS_ERR(dst))
                        goto out_free;
        }
-diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
-index 6a36fcc5c4e11..b4ffcec732b49 100644
 --- a/net/ipv6/tcp_ipv6.c
 +++ b/net/ipv6/tcp_ipv6.c
-@@ -245,7 +245,7 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr,
+@@ -245,7 +245,7 @@ static int tcp_v6_connect(struct sock *s
  
        security_sk_classify_flow(sk, flowi6_to_flowi(&fl6));
  
@@ -200,7 +182,7 @@ index 6a36fcc5c4e11..b4ffcec732b49 100644
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
                goto failure;
-@@ -831,7 +831,7 @@ static void tcp_v6_send_response(const struct sock *sk, struct sk_buff *skb, u32
+@@ -831,7 +831,7 @@ static void tcp_v6_send_response(const s
         * Underlying function will use this to retrieve the network
         * namespace
         */
@@ -209,11 +191,9 @@ index 6a36fcc5c4e11..b4ffcec732b49 100644
        if (!IS_ERR(dst)) {
                skb_dst_set(buff, dst);
                ip6_xmit(ctl_sk, buff, &fl6, NULL, tclass);
-diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c
-index af04a8a682697..2b5230ef8536a 100644
 --- a/net/l2tp/l2tp_ip6.c
 +++ b/net/l2tp/l2tp_ip6.c
-@@ -619,7 +619,7 @@ static int l2tp_ip6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
+@@ -619,7 +619,7 @@ static int l2tp_ip6_sendmsg(struct sock
  
        security_sk_classify_flow(sk, flowi6_to_flowi(&fl6));
  
@@ -222,11 +202,9 @@ index af04a8a682697..2b5230ef8536a 100644
        if (IS_ERR(dst)) {
                err = PTR_ERR(dst);
                goto out;
-diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c
-index dd097e065f39d..1a6849add0e34 100644
 --- a/net/sctp/ipv6.c
 +++ b/net/sctp/ipv6.c
-@@ -268,7 +268,7 @@ static void sctp_v6_get_dst(struct sctp_transport *t, union sctp_addr *saddr,
+@@ -268,7 +268,7 @@ static void sctp_v6_get_dst(struct sctp_
        final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final);
        rcu_read_unlock();
  
@@ -235,7 +213,7 @@ index dd097e065f39d..1a6849add0e34 100644
        if (!asoc || saddr) {
                t->dst = dst;
                memcpy(fl, &_fl, sizeof(_fl));
-@@ -326,7 +326,7 @@ static void sctp_v6_get_dst(struct sctp_transport *t, union sctp_addr *saddr,
+@@ -326,7 +326,7 @@ static void sctp_v6_get_dst(struct sctp_
                fl6->saddr = laddr->a.v6.sin6_addr;
                fl6->fl6_sport = laddr->a.v6.sin6_port;
                final_p = fl6_update_dst(fl6, rcu_dereference(np->opt), &final);
@@ -244,6 +222,3 @@ index dd097e065f39d..1a6849add0e34 100644
  
                if (IS_ERR(bdst))
                        continue;
--- 
-2.20.1
-
similarity index 73%
rename from queue-4.4/net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6.patch
rename to queue-4.4/net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6_dst_lookup.patch
index ea49ee3dfa13afa1024819310207c1a53328e9e1..bd0ddbeaac6d5a47b4a3d28a4d6413580b5956f5 100644 (file)
@@ -1,5 +1,5 @@
-From e3a32350aae0a76746648667d9515e286910ed50 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Sabrina Dubroca <sd@queasysnail.net>
 Date: Wed, 4 Dec 2019 15:35:53 +0100
 Subject: net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
 
@@ -28,23 +28,21 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  - Drop changes in lwt_bpf.c, mlx5, and rxe
  - Adjust filename, context, indentation]
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/infiniband/core/addr.c |  6 +++---
- drivers/net/geneve.c           |  4 +++-
- drivers/net/vxlan.c            | 10 ++++------
- include/net/addrconf.h         |  6 ++++--
- net/ipv6/addrconf_core.c       | 11 ++++++-----
- net/ipv6/af_inet6.c            |  2 +-
- net/mpls/af_mpls.c             |  7 +++----
- net/tipc/udp_media.c           |  9 ++++++---
+ drivers/infiniband/core/addr.c |    6 +++---
+ drivers/net/geneve.c           |    4 +++-
+ drivers/net/vxlan.c            |   10 ++++------
+ include/net/addrconf.h         |    6 ++++--
+ net/ipv6/addrconf_core.c       |   11 ++++++-----
+ net/ipv6/af_inet6.c            |    2 +-
+ net/mpls/af_mpls.c             |    7 +++----
+ net/tipc/udp_media.c           |    9 ++++++---
  8 files changed, 30 insertions(+), 25 deletions(-)
 
-diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c
-index 68835de07e071..a8349100854ef 100644
 --- a/drivers/infiniband/core/addr.c
 +++ b/drivers/infiniband/core/addr.c
-@@ -293,9 +293,9 @@ static int addr6_resolve(struct sockaddr_in6 *src_in,
+@@ -293,9 +293,9 @@ static int addr6_resolve(struct sockaddr
        fl6.saddr = src_in->sin6_addr;
        fl6.flowi6_oif = addr->bound_dev_if;
  
@@ -57,11 +55,9 @@ index 68835de07e071..a8349100854ef 100644
  
        if (ipv6_addr_any(&fl6.saddr)) {
                ret = ipv6_dev_get_saddr(addr->net, ip6_dst_idev(dst)->dev,
-diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
-index 1988bc00de3c7..ec13e2ae6d16e 100644
 --- a/drivers/net/geneve.c
 +++ b/drivers/net/geneve.c
-@@ -781,7 +781,9 @@ static struct dst_entry *geneve_get_v6_dst(struct sk_buff *skb,
+@@ -781,7 +781,9 @@ static struct dst_entry *geneve_get_v6_d
                fl6->daddr = geneve->remote.sin6.sin6_addr;
        }
  
@@ -72,11 +68,9 @@ index 1988bc00de3c7..ec13e2ae6d16e 100644
                netdev_dbg(dev, "no route to %pI6\n", &fl6->daddr);
                return ERR_PTR(-ENETUNREACH);
        }
-diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
-index 752f44a0e3afc..d6ae6d3c98ed8 100644
 --- a/drivers/net/vxlan.c
 +++ b/drivers/net/vxlan.c
-@@ -1864,7 +1864,6 @@ static struct dst_entry *vxlan6_get_route(struct vxlan_dev *vxlan,
+@@ -1864,7 +1864,6 @@ static struct dst_entry *vxlan6_get_rout
  {
        struct dst_entry *ndst;
        struct flowi6 fl6;
@@ -84,7 +78,7 @@ index 752f44a0e3afc..d6ae6d3c98ed8 100644
  
        memset(&fl6, 0, sizeof(fl6));
        fl6.flowi6_oif = oif;
-@@ -1873,11 +1872,10 @@ static struct dst_entry *vxlan6_get_route(struct vxlan_dev *vxlan,
+@@ -1873,11 +1872,10 @@ static struct dst_entry *vxlan6_get_rout
        fl6.flowi6_mark = skb->mark;
        fl6.flowi6_proto = IPPROTO_UDP;
  
@@ -100,8 +94,6 @@ index 752f44a0e3afc..d6ae6d3c98ed8 100644
  
        *saddr = fl6.saddr;
        return ndst;
-diff --git a/include/net/addrconf.h b/include/net/addrconf.h
-index af032e5405f62..27a1833c7b00f 100644
 --- a/include/net/addrconf.h
 +++ b/include/net/addrconf.h
 @@ -192,8 +192,10 @@ struct ipv6_stub {
@@ -117,11 +109,9 @@ index af032e5405f62..27a1833c7b00f 100644
        void (*udpv6_encap_enable)(void);
        void (*ndisc_send_na)(struct net_device *dev, const struct in6_addr *daddr,
                              const struct in6_addr *solicited_addr,
-diff --git a/net/ipv6/addrconf_core.c b/net/ipv6/addrconf_core.c
-index bfa941fc11650..129324b36fb60 100644
 --- a/net/ipv6/addrconf_core.c
 +++ b/net/ipv6/addrconf_core.c
-@@ -107,15 +107,16 @@ int inet6addr_notifier_call_chain(unsigned long val, void *v)
+@@ -107,15 +107,16 @@ int inet6addr_notifier_call_chain(unsign
  }
  EXPORT_SYMBOL(inet6addr_notifier_call_chain);
  
@@ -143,11 +133,9 @@ index bfa941fc11650..129324b36fb60 100644
  };
  EXPORT_SYMBOL_GPL(ipv6_stub);
  
-diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
-index 9d04393e87019..37a562fc13d5b 100644
 --- a/net/ipv6/af_inet6.c
 +++ b/net/ipv6/af_inet6.c
-@@ -841,7 +841,7 @@ static struct pernet_operations inet6_net_ops = {
+@@ -841,7 +841,7 @@ static struct pernet_operations inet6_ne
  static const struct ipv6_stub ipv6_stub_impl = {
        .ipv6_sock_mc_join = ipv6_sock_mc_join,
        .ipv6_sock_mc_drop = ipv6_sock_mc_drop,
@@ -156,11 +144,9 @@ index 9d04393e87019..37a562fc13d5b 100644
        .udpv6_encap_enable = udpv6_encap_enable,
        .ndisc_send_na = ndisc_send_na,
        .nd_tbl = &nd_tbl,
-diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
-index c2ce7dec51980..50d9138b2a1cc 100644
 --- a/net/mpls/af_mpls.c
 +++ b/net/mpls/af_mpls.c
-@@ -470,16 +470,15 @@ static struct net_device *inet6_fib_lookup_dev(struct net *net,
+@@ -470,16 +470,15 @@ static struct net_device *inet6_fib_look
        struct net_device *dev;
        struct dst_entry *dst;
        struct flowi6 fl6;
@@ -180,11 +166,9 @@ index c2ce7dec51980..50d9138b2a1cc 100644
  
        dev = dst->dev;
        dev_hold(dev);
-diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c
-index cb39f1c4251ea..ac20794392420 100644
 --- a/net/tipc/udp_media.c
 +++ b/net/tipc/udp_media.c
-@@ -200,10 +200,13 @@ static int tipc_udp_send_msg(struct net *net, struct sk_buff *skb,
+@@ -200,10 +200,13 @@ static int tipc_udp_send_msg(struct net
                        .saddr = src->ipv6,
                        .flowi6_proto = IPPROTO_UDP
                };
@@ -201,6 +185,3 @@ index cb39f1c4251ea..ac20794392420 100644
                ttl = ip6_dst_hoplimit(ndst);
                err = udp_tunnel6_xmit_skb(ndst, ub->ubsock->sk, skb,
                                           ndst->dev, &src->ipv6,
--- 
-2.20.1
-
index 6efaee166da1ab8f3a9221a3dce4dde06af52616..75554502b156c72a6ad0b9be5db472968e5e4fad 100644 (file)
@@ -1,5 +1,5 @@
-From 1d25f0caeabb1ff4e0494022f4905583ccc3e9ad Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Date: Tue, 14 Feb 2017 10:23:34 -0800
 Subject: ptp: create "pins" together with the rest of attributes
 
@@ -15,18 +15,16 @@ Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 [bwh: Backported to 4.9: adjust context]
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_clock.c   | 20 +++++++++++---------
- drivers/ptp/ptp_private.h |  7 ++++---
- drivers/ptp/ptp_sysfs.c   | 39 +++++++++------------------------------
+ drivers/ptp/ptp_clock.c   |   20 +++++++++++---------
+ drivers/ptp/ptp_private.h |    7 ++++---
+ drivers/ptp/ptp_sysfs.c   |   39 +++++++++------------------------------
  3 files changed, 24 insertions(+), 42 deletions(-)
 
-diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
-index 113b66f1fc9ed..5f5d54f5153fb 100644
 --- a/drivers/ptp/ptp_clock.c
 +++ b/drivers/ptp/ptp_clock.c
-@@ -214,16 +214,17 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -214,16 +214,17 @@ struct ptp_clock *ptp_clock_register(str
        mutex_init(&ptp->pincfg_mux);
        init_waitqueue_head(&ptp->tsev_wq);
  
@@ -63,7 +61,7 @@ index 113b66f1fc9ed..5f5d54f5153fb 100644
        mutex_destroy(&ptp->tsevq_mux);
        mutex_destroy(&ptp->pincfg_mux);
  no_slot:
-@@ -272,8 +273,9 @@ int ptp_clock_unregister(struct ptp_clock *ptp)
+@@ -272,8 +273,9 @@ int ptp_clock_unregister(struct ptp_cloc
        /* Release the clock's resources. */
        if (ptp->pps_source)
                pps_unregister_source(ptp->pps_source);
@@ -74,8 +72,6 @@ index 113b66f1fc9ed..5f5d54f5153fb 100644
  
        posix_clock_unregister(&ptp->clock);
        return 0;
-diff --git a/drivers/ptp/ptp_private.h b/drivers/ptp/ptp_private.h
-index 9c5d41421b651..d95888974d0c6 100644
 --- a/drivers/ptp/ptp_private.h
 +++ b/drivers/ptp/ptp_private.h
 @@ -54,6 +54,8 @@ struct ptp_clock {
@@ -98,11 +94,9 @@ index 9c5d41421b651..d95888974d0c6 100644
 +void ptp_cleanup_pin_groups(struct ptp_clock *ptp);
  
  #endif
-diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
-index a55a6eb4dfde9..731d0423c8aa7 100644
 --- a/drivers/ptp/ptp_sysfs.c
 +++ b/drivers/ptp/ptp_sysfs.c
-@@ -268,25 +268,14 @@ static ssize_t ptp_pin_store(struct device *dev, struct device_attribute *attr,
+@@ -268,25 +268,14 @@ static ssize_t ptp_pin_store(struct devi
        return count;
  }
  
@@ -132,7 +126,7 @@ index a55a6eb4dfde9..731d0423c8aa7 100644
        ptp->pin_dev_attr = kzalloc(n_pins * sizeof(*ptp->pin_dev_attr),
                                    GFP_KERNEL);
        if (!ptp->pin_dev_attr)
-@@ -310,28 +299,18 @@ static int ptp_populate_pins(struct ptp_clock *ptp)
+@@ -310,28 +299,18 @@ static int ptp_populate_pins(struct ptp_
        ptp->pin_attr_group.name = "pins";
        ptp->pin_attr_group.attrs = ptp->pin_attr;
  
@@ -166,6 +160,3 @@ index a55a6eb4dfde9..731d0423c8aa7 100644
 +      kfree(ptp->pin_attr);
 +      kfree(ptp->pin_dev_attr);
  }
--- 
-2.20.1
-
similarity index 66%
rename from queue-4.4/ptp-do-not-explicitly-set-drvdata-in-ptp_clock_regis.patch
rename to queue-4.4/ptp-do-not-explicitly-set-drvdata-in-ptp_clock_register.patch
index c48e31a313cc14ac63505d6295f8ec52b7b87258..c70a9deb2018394fcc867ca78c57d952e3049d6d 100644 (file)
@@ -1,5 +1,5 @@
-From e07336a2fcddd851f89dfcbfda427edebd1291c5 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Date: Tue, 14 Feb 2017 10:23:31 -0800
 Subject: ptp: do not explicitly set drvdata in ptp_clock_register()
 
@@ -14,16 +14,14 @@ Acked-by: Richard Cochran <richardcochran@gmail.com>
 Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_clock.c | 2 --
+ drivers/ptp/ptp_clock.c |    2 --
  1 file changed, 2 deletions(-)
 
-diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
-index 60a5e0c63a136..113b66f1fc9ed 100644
 --- a/drivers/ptp/ptp_clock.c
 +++ b/drivers/ptp/ptp_clock.c
-@@ -220,8 +220,6 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -220,8 +220,6 @@ struct ptp_clock *ptp_clock_register(str
        if (IS_ERR(ptp->dev))
                goto no_device;
  
@@ -32,6 +30,3 @@ index 60a5e0c63a136..113b66f1fc9ed 100644
        err = ptp_populate_sysfs(ptp);
        if (err)
                goto no_sysfs;
--- 
-2.20.1
-
index 876af2f6d195338c56655c961a0bd6f551b6075f..a2d97cb433bc840da2fdfc76ae5e4751d11ff153 100644 (file)
@@ -1,5 +1,5 @@
-From 0e637f58378032270601f378e5a23b473527d9a3 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: YueHaibing <yuehaibing@huawei.com>
 Date: Fri, 23 Nov 2018 09:54:55 +0800
 Subject: ptp: Fix pass zero to ERR_PTR() in ptp_clock_register
 
@@ -20,16 +20,14 @@ Signed-off-by: YueHaibing <yuehaibing@huawei.com>
 Acked-by: Richard Cochran <richardcochran@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_clock.c | 5 ++++-
+ drivers/ptp/ptp_clock.c |    5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)
 
-diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
-index 5f5d54f5153fb..a29772667f79b 100644
 --- a/drivers/ptp/ptp_clock.c
 +++ b/drivers/ptp/ptp_clock.c
-@@ -222,8 +222,10 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -222,8 +222,10 @@ struct ptp_clock *ptp_clock_register(str
        ptp->dev = device_create_with_groups(ptp_class, parent, ptp->devid,
                                             ptp, ptp->pin_attr_groups,
                                             "ptp%d", ptp->index);
@@ -41,7 +39,7 @@ index 5f5d54f5153fb..a29772667f79b 100644
  
        /* Register a new PPS source. */
        if (info->pps) {
-@@ -234,6 +236,7 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -234,6 +236,7 @@ struct ptp_clock *ptp_clock_register(str
                pps.owner = info->owner;
                ptp->pps_source = pps_register_source(&pps, PTP_PPS_DEFAULTS);
                if (!ptp->pps_source) {
@@ -49,6 +47,3 @@ index 5f5d54f5153fb..a29772667f79b 100644
                        pr_err("failed to register pps source\n");
                        goto no_pps;
                }
--- 
-2.20.1
-
similarity index 86%
rename from queue-4.4/ptp-fix-the-race-between-the-release-of-ptp_clock-an.patch
rename to queue-4.4/ptp-fix-the-race-between-the-release-of-ptp_clock-and-cdev.patch
index 0d43e62271c44c4bea78424b7abd9f882d18b879..56bab639363fa1088cbd589c74aaba7e0cec6853 100644 (file)
@@ -1,5 +1,5 @@
-From fa40eab18c05963de6eaefd898a7ee28e1899c2a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Vladis Dronov <vdronov@redhat.com>
 Date: Fri, 27 Dec 2019 03:26:27 +0100
 Subject: ptp: fix the race between the release of ptp_clock and cdev
 
@@ -91,19 +91,17 @@ Signed-off-by: Vladis Dronov <vdronov@redhat.com>
 Acked-by: Richard Cochran <richardcochran@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_clock.c     | 31 ++++++++++++++-----------------
- drivers/ptp/ptp_private.h   |  2 +-
- include/linux/posix-clock.h | 19 +++++++++++--------
- kernel/time/posix-clock.c   | 31 +++++++++++++------------------
+ drivers/ptp/ptp_clock.c     |   31 ++++++++++++++-----------------
+ drivers/ptp/ptp_private.h   |    2 +-
+ include/linux/posix-clock.h |   19 +++++++++++--------
+ kernel/time/posix-clock.c   |   31 +++++++++++++------------------
  4 files changed, 39 insertions(+), 44 deletions(-)
 
-diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
-index a29772667f79b..977b52dbcbba2 100644
 --- a/drivers/ptp/ptp_clock.c
 +++ b/drivers/ptp/ptp_clock.c
-@@ -171,9 +171,9 @@ static struct posix_clock_operations ptp_clock_ops = {
+@@ -171,9 +171,9 @@ static struct posix_clock_operations ptp
        .read           = ptp_read,
  };
  
@@ -115,7 +113,7 @@ index a29772667f79b..977b52dbcbba2 100644
  
        mutex_destroy(&ptp->tsevq_mux);
        mutex_destroy(&ptp->pincfg_mux);
-@@ -205,7 +205,6 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -205,7 +205,6 @@ struct ptp_clock *ptp_clock_register(str
        }
  
        ptp->clock.ops = ptp_clock_ops;
@@ -123,7 +121,7 @@ index a29772667f79b..977b52dbcbba2 100644
        ptp->info = info;
        ptp->devid = MKDEV(major, index);
        ptp->index = index;
-@@ -218,15 +217,6 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -218,15 +217,6 @@ struct ptp_clock *ptp_clock_register(str
        if (err)
                goto no_pin_groups;
  
@@ -139,7 +137,7 @@ index a29772667f79b..977b52dbcbba2 100644
        /* Register a new PPS source. */
        if (info->pps) {
                struct pps_source_info pps;
-@@ -242,8 +232,18 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
+@@ -242,8 +232,18 @@ struct ptp_clock *ptp_clock_register(str
                }
        }
  
@@ -169,7 +167,7 @@ index a29772667f79b..977b52dbcbba2 100644
        ptp_cleanup_pin_groups(ptp);
  no_pin_groups:
        mutex_destroy(&ptp->tsevq_mux);
-@@ -277,7 +275,6 @@ int ptp_clock_unregister(struct ptp_clock *ptp)
+@@ -277,7 +275,6 @@ int ptp_clock_unregister(struct ptp_cloc
        if (ptp->pps_source)
                pps_unregister_source(ptp->pps_source);
  
@@ -177,8 +175,6 @@ index a29772667f79b..977b52dbcbba2 100644
        ptp_cleanup_pin_groups(ptp);
  
        posix_clock_unregister(&ptp->clock);
-diff --git a/drivers/ptp/ptp_private.h b/drivers/ptp/ptp_private.h
-index d95888974d0c6..15346e840caa9 100644
 --- a/drivers/ptp/ptp_private.h
 +++ b/drivers/ptp/ptp_private.h
 @@ -40,7 +40,7 @@ struct timestamp_event_queue {
@@ -190,8 +186,6 @@ index d95888974d0c6..15346e840caa9 100644
        struct ptp_clock_info *info;
        dev_t devid;
        int index; /* index into clocks.map */
-diff --git a/include/linux/posix-clock.h b/include/linux/posix-clock.h
-index 83b22ae9ae12a..b39420a0321c3 100644
 --- a/include/linux/posix-clock.h
 +++ b/include/linux/posix-clock.h
 @@ -104,29 +104,32 @@ struct posix_clock_operations {
@@ -243,8 +237,6 @@ index 83b22ae9ae12a..b39420a0321c3 100644
  
  /**
   * posix_clock_unregister() - unregister a clock
-diff --git a/kernel/time/posix-clock.c b/kernel/time/posix-clock.c
-index e24008c098c6b..45a0a26023d4b 100644
 --- a/kernel/time/posix-clock.c
 +++ b/kernel/time/posix-clock.c
 @@ -25,8 +25,6 @@
@@ -256,7 +248,7 @@ index e24008c098c6b..45a0a26023d4b 100644
  /*
   * Returns NULL if the posix_clock instance attached to 'fp' is old and stale.
   */
-@@ -168,7 +166,7 @@ static int posix_clock_open(struct inode *inode, struct file *fp)
+@@ -168,7 +166,7 @@ static int posix_clock_open(struct inode
                err = 0;
  
        if (!err) {
@@ -265,7 +257,7 @@ index e24008c098c6b..45a0a26023d4b 100644
                fp->private_data = clk;
        }
  out:
-@@ -184,7 +182,7 @@ static int posix_clock_release(struct inode *inode, struct file *fp)
+@@ -184,7 +182,7 @@ static int posix_clock_release(struct in
        if (clk->ops.release)
                err = clk->ops.release(clk);
  
@@ -274,7 +266,7 @@ index e24008c098c6b..45a0a26023d4b 100644
  
        fp->private_data = NULL;
  
-@@ -206,38 +204,35 @@ static const struct file_operations posix_clock_file_operations = {
+@@ -206,38 +204,35 @@ static const struct file_operations posi
  #endif
  };
  
@@ -324,6 +316,3 @@ index e24008c098c6b..45a0a26023d4b 100644
  }
  EXPORT_SYMBOL_GPL(posix_clock_unregister);
  
--- 
-2.20.1
-
index b09dc025c9522c62942c70040b9ac4ecdcfe1d8c..b753c69b324209a42d37273b2b6a81c27a41ca75 100644 (file)
@@ -1,5 +1,5 @@
-From cff306c18d002a4a0ea187cae2115fc75d7f073a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Vladis Dronov <vdronov@redhat.com>
 Date: Mon, 13 Jan 2020 14:00:09 +0100
 Subject: ptp: free ptp device pin descriptors properly
 
@@ -24,16 +24,14 @@ Signed-off-by: Vladis Dronov <vdronov@redhat.com>
 Acked-by: Richard Cochran <richardcochran@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_clock.c | 4 ++--
+ drivers/ptp/ptp_clock.c |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
-index 977b52dbcbba2..efe68b13704d8 100644
 --- a/drivers/ptp/ptp_clock.c
 +++ b/drivers/ptp/ptp_clock.c
-@@ -175,6 +175,7 @@ static void ptp_clock_release(struct device *dev)
+@@ -175,6 +175,7 @@ static void ptp_clock_release(struct dev
  {
        struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev);
  
@@ -41,7 +39,7 @@ index 977b52dbcbba2..efe68b13704d8 100644
        mutex_destroy(&ptp->tsevq_mux);
        mutex_destroy(&ptp->pincfg_mux);
        ida_simple_remove(&ptp_clocks_map, ptp->index);
-@@ -275,9 +276,8 @@ int ptp_clock_unregister(struct ptp_clock *ptp)
+@@ -275,9 +276,8 @@ int ptp_clock_unregister(struct ptp_cloc
        if (ptp->pps_source)
                pps_unregister_source(ptp->pps_source);
  
@@ -52,6 +50,3 @@ index 977b52dbcbba2..efe68b13704d8 100644
        return 0;
  }
  EXPORT_SYMBOL(ptp_clock_unregister);
--- 
-2.20.1
-
index 339fb86683fe403bae0ec5daf804c6c55c4fe864..48dd873efa440d27775bd42193631d59b3dad81b 100644 (file)
@@ -1,5 +1,5 @@
-From f988e8551a81f003ad32e2c403ea528e953b566f Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
+From foo@baz Wed 13 May 2020 08:37:35 AM CEST
+From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Date: Tue, 14 Feb 2017 10:23:33 -0800
 Subject: ptp: use is_visible method to hide unused attributes
 
@@ -16,16 +16,14 @@ of later) before userspace gets notified about new ptp class device.
 Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
 Signed-off-by: David S. Miller <davem@davemloft.net>
 Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
- drivers/ptp/ptp_sysfs.c | 125 ++++++++++++++++++----------------------
+ drivers/ptp/ptp_sysfs.c |  125 +++++++++++++++++++++---------------------------
  1 file changed, 55 insertions(+), 70 deletions(-)
 
-diff --git a/drivers/ptp/ptp_sysfs.c b/drivers/ptp/ptp_sysfs.c
-index 302e626fe6b01..a55a6eb4dfde9 100644
 --- a/drivers/ptp/ptp_sysfs.c
 +++ b/drivers/ptp/ptp_sysfs.c
-@@ -46,27 +46,6 @@ PTP_SHOW_INT(n_periodic_outputs, n_per_out);
+@@ -46,27 +46,6 @@ PTP_SHOW_INT(n_periodic_outputs, n_per_o
  PTP_SHOW_INT(n_programmable_pins, n_pins);
  PTP_SHOW_INT(pps_available, pps);
  
@@ -53,7 +51,7 @@ index 302e626fe6b01..a55a6eb4dfde9 100644
  static ssize_t extts_enable_store(struct device *dev,
                                  struct device_attribute *attr,
                                  const char *buf, size_t count)
-@@ -91,6 +70,7 @@ static ssize_t extts_enable_store(struct device *dev,
+@@ -91,6 +70,7 @@ static ssize_t extts_enable_store(struct
  out:
        return err;
  }
@@ -69,7 +67,7 @@ index 302e626fe6b01..a55a6eb4dfde9 100644
  
  static ssize_t period_store(struct device *dev,
                            struct device_attribute *attr,
-@@ -151,6 +132,7 @@ static ssize_t period_store(struct device *dev,
+@@ -151,6 +132,7 @@ static ssize_t period_store(struct devic
  out:
        return err;
  }
@@ -77,7 +75,7 @@ index 302e626fe6b01..a55a6eb4dfde9 100644
  
  static ssize_t pps_enable_store(struct device *dev,
                                struct device_attribute *attr,
-@@ -177,6 +159,57 @@ static ssize_t pps_enable_store(struct device *dev,
+@@ -177,6 +159,57 @@ static ssize_t pps_enable_store(struct d
  out:
        return err;
  }
@@ -135,7 +133,7 @@ index 302e626fe6b01..a55a6eb4dfde9 100644
  
  static int ptp_pin_name2index(struct ptp_clock *ptp, const char *name)
  {
-@@ -235,26 +268,11 @@ static ssize_t ptp_pin_store(struct device *dev, struct device_attribute *attr,
+@@ -235,26 +268,11 @@ static ssize_t ptp_pin_store(struct devi
        return count;
  }
  
@@ -210,6 +208,3 @@ index 302e626fe6b01..a55a6eb4dfde9 100644
 -out1:
 -      return err;
  }
--- 
-2.20.1
-
index 83a0824a4803d9d854fe9411f9c9dc24c5237263..850df501372fe1e096456fd370567aec30eb49ec 100644 (file)
@@ -16,19 +16,19 @@ batman-adv-fix-batadv_nc_random_weight_tq.patch
 scripts-decodecode-fix-trapping-instruction-formatting.patch
 phy-micrel-disable-auto-negotiation-on-startup.patch
 phy-micrel-ensure-interrupts-are-reenabled-on-resume.patch
+binfmt_elf-do-not-move-brk-for-interp-less-et_exec.patch
 ext4-add-cond_resched-to-ext4_protect_reserved_inode.patch
 net-ipv6-add-net-argument-to-ip6_dst_lookup_flow.patch
-net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6.patch
-blktrace-fix-potential-deadlock-between-delete-sysfs.patch
-blktrace-fix-unlocked-access-to-init-start-stop-tear.patch
+net-ipv6_stub-use-ip6_dst_lookup_flow-instead-of-ip6_dst_lookup.patch
+blktrace-fix-potential-deadlock-between-delete-sysfs-ops.patch
+blktrace-fix-unlocked-access-to-init-start-stop-teardown.patch
 blktrace-fix-trace-mutex-deadlock.patch
 blktrace-protect-q-blk_trace-with-rcu.patch
 blktrace-fix-dereference-after-null-check.patch
-ptp-do-not-explicitly-set-drvdata-in-ptp_clock_regis.patch
+ptp-do-not-explicitly-set-drvdata-in-ptp_clock_register.patch
 ptp-use-is_visible-method-to-hide-unused-attributes.patch
 ptp-create-pins-together-with-the-rest-of-attributes.patch
-chardev-add-helper-function-to-register-char-devs-wi.patch
+chardev-add-helper-function-to-register-char-devs-with-a-struct-device.patch
 ptp-fix-pass-zero-to-err_ptr-in-ptp_clock_register.patch
-ptp-fix-the-race-between-the-release-of-ptp_clock-an.patch
+ptp-fix-the-race-between-the-release-of-ptp_clock-and-cdev.patch
 ptp-free-ptp-device-pin-descriptors-properly.patch
-binfmt_elf-do-not-move-brk-for-interp-less-et_exec.patch