diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-12-14 10:11:49 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-12-14 10:11:49 -0800 |
commit | 6680ebc7a39c4a9661004adb6c8f4abc98fa6322 (patch) | |
tree | 29fd4895eed432713f7d8c7d55f610fa8cb2e5d9 | |
parent | 0fbed24161fea03303a09a83f8c3c94f2446980f (diff) | |
download | patches-6680ebc7a39c4a9661004adb6c8f4abc98fa6322.tar.gz |
4.10-rc1 early changes
-rw-r--r-- | 0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch | 107 | ||||
-rw-r--r-- | c06.patch | 6 | ||||
-rw-r--r-- | csdio2.patch | 2 | ||||
-rw-r--r-- | d02.patch | 38 | ||||
-rw-r--r-- | d07.patch | 2 | ||||
-rw-r--r-- | d11.patch | 10 | ||||
-rw-r--r-- | d15.patch | 2 | ||||
-rw-r--r-- | driver-core-add-class_attr_wo.patch | 27 | ||||
-rw-r--r-- | driver-core-class-add-class_groups-support.patch | 76 | ||||
-rw-r--r-- | driver-core-devcoredump-convert-to-use-class_groups.patch | 42 | ||||
-rw-r--r-- | driver-core-firmware_class-convert-to-use-class_groups.patch | 42 | ||||
-rw-r--r-- | p23.patch | 6 | ||||
-rw-r--r-- | p30.patch | 2 | ||||
-rw-r--r-- | pci_groups.patch | 8 | ||||
-rw-r--r-- | series | 5 | ||||
-rw-r--r-- | staging-exfat-add-filesystem-to-the-build.patch | 6 | ||||
-rw-r--r-- | usb-core-add-missing-license-information.patch | 178 |
17 files changed, 60 insertions, 499 deletions
diff --git a/0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch b/0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch index 883487076ab0fd..54cf7641bf6804 100644 --- a/0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch +++ b/0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch @@ -18,25 +18,22 @@ coredumps, it's still a work in progress. Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- - arch/x86/kernel/cpu/mcheck/mce.c | 12 +++++++--- - drivers/block/drbd/drbd_int.h | 6 ++++- - drivers/block/drbd/drbd_main.c | 5 ++++ - drivers/staging/lustre/include/linux/libcfs/libcfs.h | 2 + - drivers/staging/lustre/lnet/libcfs/linux/linux-debug.c | 11 ++++++++- - drivers/staging/lustre/lnet/libcfs/module.c | 2 + - drivers/video/fbdev/uvesafb.c | 19 ++++++++++++----- - fs/nfs/cache_lib.c | 12 ++++++++-- - include/linux/reboot.h | 2 + - kernel/ksysfs.c | 6 ++++- - kernel/reboot.c | 3 ++ - kernel/sysctl.c | 4 +++ - lib/kobject_uevent.c | 3 ++ - security/Kconfig | 17 +++++++++++++++ - 14 files changed, 89 insertions(+), 15 deletions(-) + arch/x86/kernel/cpu/mcheck/mce.c | 12 ++++++++---- + drivers/block/drbd/drbd_int.h | 6 +++++- + drivers/block/drbd/drbd_main.c | 5 +++++ + drivers/video/fbdev/uvesafb.c | 19 ++++++++++++++----- + fs/nfs/cache_lib.c | 12 ++++++++++-- + include/linux/reboot.h | 2 ++ + kernel/ksysfs.c | 6 +++++- + kernel/reboot.c | 3 +++ + kernel/sysctl.c | 4 ++++ + lib/kobject_uevent.c | 3 +++ + security/Kconfig | 17 +++++++++++++++++ + 11 files changed, 76 insertions(+), 13 deletions(-) --- a/arch/x86/kernel/cpu/mcheck/mce.c +++ b/arch/x86/kernel/cpu/mcheck/mce.c -@@ -2283,15 +2283,16 @@ static ssize_t set_bank(struct device *s +@@ -2337,15 +2337,16 @@ static ssize_t set_bank(struct device *s } static ssize_t @@ -56,7 +53,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> { char *p; -@@ -2304,6 +2305,10 @@ static ssize_t set_trigger(struct device +@@ -2358,6 +2359,10 @@ static ssize_t set_trigger(struct device return strlen(mce_helper) + !!p; } @@ -67,7 +64,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> static ssize_t set_ignore_ce(struct device *s, struct device_attribute *attr, -@@ -2361,7 +2366,6 @@ static ssize_t store_int_with_restart(st +@@ -2415,7 +2420,6 @@ static ssize_t store_int_with_restart(st return ret; } @@ -107,72 +104,6 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> /* in 2.6.x, our device mapping and config info contains our virtual gendisks * as member "struct gendisk *vdisk;" ---- a/drivers/staging/lustre/include/linux/libcfs/libcfs.h -+++ b/drivers/staging/lustre/include/linux/libcfs/libcfs.h -@@ -125,8 +125,10 @@ extern struct miscdevice libcfs_dev; - /** - * The path of debug log dump upcall script. - */ -+#ifndef CONFIG_READONLY_USERMODEHELPER - extern char lnet_upcall[1024]; - extern char lnet_debug_log_upcall[1024]; -+#endif - - extern struct cfs_wi_sched *cfs_sched_rehash; - ---- a/drivers/staging/lustre/lnet/libcfs/linux/linux-debug.c -+++ b/drivers/staging/lustre/lnet/libcfs/linux/linux-debug.c -@@ -57,7 +57,14 @@ - - #include <linux/kallsyms.h> - -+#ifdef CONFIG_READONLY_USERMODEHELPER -+static const - char lnet_upcall[1024] = "/usr/lib/lustre/lnet_upcall"; -+#endif -+ -+#ifdef CONFIG_READONLY_USERMODEHELPER -+static const -+#endif - char lnet_debug_log_upcall[1024] = "/usr/lib/lustre/lnet_debug_log_upcall"; - - /** -@@ -74,7 +81,7 @@ void libcfs_run_debug_log_upcall(char *f - "PATH=/sbin:/bin:/usr/sbin:/usr/bin", - NULL}; - -- argv[0] = lnet_debug_log_upcall; -+ argv[0] = (char *)lnet_debug_log_upcall; - - LASSERTF(file, "called on a null filename\n"); - argv[1] = file; /* only need to pass the path of the file */ -@@ -100,7 +107,7 @@ void libcfs_run_upcall(char **argv) - "PATH=/sbin:/bin:/usr/sbin:/usr/bin", - NULL}; - -- argv[0] = lnet_upcall; -+ argv[0] = (char *)lnet_upcall; - argc = 1; - while (argv[argc]) - argc++; ---- a/drivers/staging/lustre/lnet/libcfs/module.c -+++ b/drivers/staging/lustre/lnet/libcfs/module.c -@@ -366,6 +366,7 @@ static struct ctl_table lnet_table[] = { - .proc_handler = &proc_cpt_table, - }, - -+#ifndef CONFIG_READONLY_USERMODEHELPER - { - .procname = "upcall", - .data = lnet_upcall, -@@ -380,6 +381,7 @@ static struct ctl_table lnet_table[] = { - .mode = 0644, - .proc_handler = &proc_dostring, - }, -+#endif - { - .procname = "catastrophe", - .data = &libcfs_catastrophe, --- a/drivers/video/fbdev/uvesafb.c +++ b/drivers/video/fbdev/uvesafb.c @@ -30,7 +30,11 @@ static struct cb_id uvesafb_cn_id = { @@ -324,7 +255,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- a/kernel/sysctl.c +++ b/kernel/sysctl.c -@@ -669,6 +669,7 @@ static struct ctl_table kern_table[] = { +@@ -662,6 +662,7 @@ static struct ctl_table kern_table[] = { }, #endif #ifdef CONFIG_UEVENT_HELPER @@ -332,7 +263,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> { .procname = "hotplug", .data = &uevent_helper, -@@ -677,6 +678,7 @@ static struct ctl_table kern_table[] = { +@@ -670,6 +671,7 @@ static struct ctl_table kern_table[] = { .proc_handler = proc_dostring, }, #endif @@ -340,7 +271,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> #ifdef CONFIG_CHR_DEV_SG { .procname = "sg-big-buff", -@@ -1093,6 +1095,7 @@ static struct ctl_table kern_table[] = { +@@ -1079,6 +1081,7 @@ static struct ctl_table kern_table[] = { .proc_handler = proc_dointvec, }, #endif @@ -348,7 +279,7 @@ Not-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> { .procname = "poweroff_cmd", .data = &poweroff_cmd, -@@ -1100,6 +1103,7 @@ static struct ctl_table kern_table[] = { +@@ -1086,6 +1089,7 @@ static struct ctl_table kern_table[] = { .mode = 0644, .proc_handler = proc_dostring, }, diff --git a/c06.patch b/c06.patch index a6efc40c0b82ad..ffbb2e2cf61568 100644 --- a/c06.patch +++ b/c06.patch @@ -4,7 +4,7 @@ --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c -@@ -1368,6 +1368,13 @@ static int zram_remove(struct zram *zram +@@ -1369,6 +1369,13 @@ static int zram_remove(struct zram *zram } /* zram-control sysfs attributes */ @@ -18,7 +18,7 @@ static ssize_t hot_add_show(struct class *class, struct class_attribute *attr, char *buf) -@@ -1382,6 +1389,7 @@ static ssize_t hot_add_show(struct class +@@ -1383,6 +1390,7 @@ static ssize_t hot_add_show(struct class return ret; return scnprintf(buf, PAGE_SIZE, "%d\n", ret); } @@ -26,7 +26,7 @@ static ssize_t hot_remove_store(struct class *class, struct class_attribute *attr, -@@ -1412,23 +1420,19 @@ static ssize_t hot_remove_store(struct c +@@ -1413,23 +1421,19 @@ static ssize_t hot_remove_store(struct c mutex_unlock(&zram_index_mutex); return ret ? ret : count; } diff --git a/csdio2.patch b/csdio2.patch index 1a66ab8d8a9edd..8ce227bbed74e9 100644 --- a/csdio2.patch +++ b/csdio2.patch @@ -1394,7 +1394,7 @@ Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> +#endif --- a/include/uapi/linux/Kbuild +++ b/include/uapi/linux/Kbuild -@@ -93,6 +93,7 @@ header-y += coff.h +@@ -94,6 +94,7 @@ header-y += coff.h header-y += connector.h header-y += const.h header-y += cramfs_fs.h diff --git a/d02.patch b/d02.patch index c08738f3ea2631..b39ec91134cf54 100644 --- a/d02.patch +++ b/d02.patch @@ -4,7 +4,7 @@ --- a/drivers/infiniband/hw/nes/nes.c +++ b/drivers/infiniband/hw/nes/nes.c -@@ -817,7 +817,7 @@ static struct pci_driver nes_pci_driver +@@ -816,7 +816,7 @@ static struct pci_driver nes_pci_driver .remove = nes_remove, }; @@ -13,7 +13,7 @@ { unsigned int devfn = 0xffffffff; unsigned char bus_number = 0xff; -@@ -836,7 +836,7 @@ static ssize_t nes_show_adapter(struct d +@@ -835,7 +835,7 @@ static ssize_t nes_show_adapter(struct d return snprintf(buf, PAGE_SIZE, "%x:%x\n", bus_number, devfn); } @@ -22,7 +22,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -845,7 +845,7 @@ static ssize_t nes_store_adapter(struct +@@ -844,7 +844,7 @@ static ssize_t nes_store_adapter(struct return strnlen(buf, count); } @@ -31,7 +31,7 @@ { u32 eeprom_cmd = 0xdead; u32 i = 0; -@@ -861,7 +861,7 @@ static ssize_t nes_show_ee_cmd(struct de +@@ -860,7 +860,7 @@ static ssize_t nes_show_ee_cmd(struct de return snprintf(buf, PAGE_SIZE, "0x%x\n", eeprom_cmd); } @@ -40,7 +40,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -882,7 +882,7 @@ static ssize_t nes_store_ee_cmd(struct d +@@ -881,7 +881,7 @@ static ssize_t nes_store_ee_cmd(struct d return strnlen(buf, count); } @@ -49,7 +49,7 @@ { u32 eeprom_data = 0xdead; u32 i = 0; -@@ -899,7 +899,7 @@ static ssize_t nes_show_ee_data(struct d +@@ -898,7 +898,7 @@ static ssize_t nes_show_ee_data(struct d return snprintf(buf, PAGE_SIZE, "0x%x\n", eeprom_data); } @@ -58,7 +58,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -920,7 +920,7 @@ static ssize_t nes_store_ee_data(struct +@@ -919,7 +919,7 @@ static ssize_t nes_store_ee_data(struct return strnlen(buf, count); } @@ -67,7 +67,7 @@ { u32 flash_cmd = 0xdead; u32 i = 0; -@@ -937,7 +937,7 @@ static ssize_t nes_show_flash_cmd(struct +@@ -936,7 +936,7 @@ static ssize_t nes_show_flash_cmd(struct return snprintf(buf, PAGE_SIZE, "0x%x\n", flash_cmd); } @@ -76,7 +76,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -958,7 +958,7 @@ static ssize_t nes_store_flash_cmd(struc +@@ -957,7 +957,7 @@ static ssize_t nes_store_flash_cmd(struc return strnlen(buf, count); } @@ -85,7 +85,7 @@ { u32 flash_data = 0xdead; u32 i = 0; -@@ -975,7 +975,7 @@ static ssize_t nes_show_flash_data(struc +@@ -974,7 +974,7 @@ static ssize_t nes_show_flash_data(struc return snprintf(buf, PAGE_SIZE, "0x%x\n", flash_data); } @@ -94,7 +94,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -996,12 +996,12 @@ static ssize_t nes_store_flash_data(stru +@@ -995,12 +995,12 @@ static ssize_t nes_store_flash_data(stru return strnlen(buf, count); } @@ -109,7 +109,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -1012,7 +1012,7 @@ static ssize_t nes_store_nonidx_addr(str +@@ -1011,7 +1011,7 @@ static ssize_t nes_store_nonidx_addr(str return strnlen(buf, count); } @@ -118,7 +118,7 @@ { u32 nonidx_data = 0xdead; u32 i = 0; -@@ -1029,7 +1029,7 @@ static ssize_t nes_show_nonidx_data(stru +@@ -1028,7 +1028,7 @@ static ssize_t nes_show_nonidx_data(stru return snprintf(buf, PAGE_SIZE, "0x%x\n", nonidx_data); } @@ -127,7 +127,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -1050,12 +1050,12 @@ static ssize_t nes_store_nonidx_data(str +@@ -1049,12 +1049,12 @@ static ssize_t nes_store_nonidx_data(str return strnlen(buf, count); } @@ -142,7 +142,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -1066,7 +1066,7 @@ static ssize_t nes_store_idx_addr(struct +@@ -1065,7 +1065,7 @@ static ssize_t nes_store_idx_addr(struct return strnlen(buf, count); } @@ -151,7 +151,7 @@ { u32 idx_data = 0xdead; u32 i = 0; -@@ -1083,7 +1083,7 @@ static ssize_t nes_show_idx_data(struct +@@ -1082,7 +1082,7 @@ static ssize_t nes_show_idx_data(struct return snprintf(buf, PAGE_SIZE, "0x%x\n", idx_data); } @@ -160,7 +160,7 @@ const char *buf, size_t count) { char *p = (char *)buf; -@@ -1104,11 +1104,7 @@ static ssize_t nes_store_idx_data(struct +@@ -1103,11 +1103,7 @@ static ssize_t nes_store_idx_data(struct return strnlen(buf, count); } @@ -173,7 +173,7 @@ { u32 wqm_quanta_value = 0xdead; u32 i = 0; -@@ -1125,12 +1121,8 @@ static ssize_t nes_show_wqm_quanta(struc +@@ -1124,12 +1120,8 @@ static ssize_t nes_show_wqm_quanta(struc return snprintf(buf, PAGE_SIZE, "0x%X\n", wqm_quanta_value); } @@ -188,7 +188,7 @@ { unsigned long wqm_quanta_value; u32 wqm_config1; -@@ -1155,26 +1147,16 @@ static ssize_t nes_store_wqm_quanta(stru +@@ -1154,26 +1146,16 @@ static ssize_t nes_store_wqm_quanta(stru return strnlen(buf, count); } diff --git a/d07.patch b/d07.patch index 5778bbc0a0d0f6..26e38169ecf6b7 100644 --- a/d07.patch +++ b/d07.patch @@ -4,7 +4,7 @@ --- a/drivers/net/ethernet/ibm/ehea/ehea_main.c +++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c -@@ -3560,14 +3560,12 @@ static int check_module_parm(void) +@@ -3554,14 +3554,12 @@ static int check_module_parm(void) return ret; } diff --git a/d11.patch b/d11.patch index 332e64ac370d4c..3f591a2b7d463f 100644 --- a/d11.patch +++ b/d11.patch @@ -87,7 +87,7 @@ &driver_attr_group.attr, --- a/drivers/s390/net/netiucv.c +++ b/drivers/s390/net/netiucv.c -@@ -2041,8 +2041,8 @@ out_netdev: +@@ -2020,8 +2020,8 @@ out_netdev: return NULL; } @@ -98,7 +98,7 @@ { char username[9]; char userdata[17]; -@@ -2103,11 +2103,10 @@ out_free_ndev: +@@ -2082,11 +2082,10 @@ out_free_ndev: netiucv_free_netdevice(dev); return rc; } @@ -113,7 +113,7 @@ { struct iucv_connection *cp; struct net_device *ndev; -@@ -2153,8 +2152,7 @@ static ssize_t remove_write (struct devi +@@ -2132,8 +2131,7 @@ static ssize_t remove_write (struct devi IUCV_DBF_TEXT(data, 2, "remove_write: unknown device\n"); return -EINVAL; } @@ -125,7 +125,7 @@ &driver_attr_connection.attr, --- a/drivers/s390/net/qeth_core_main.c +++ b/drivers/s390/net/qeth_core_main.c -@@ -5740,8 +5740,8 @@ static struct ccwgroup_driver qeth_core_ +@@ -5736,8 +5736,8 @@ static struct ccwgroup_driver qeth_core_ .restore = qeth_core_restore, }; @@ -136,7 +136,7 @@ { int err; -@@ -5750,7 +5750,7 @@ static ssize_t qeth_core_driver_group_st +@@ -5746,7 +5746,7 @@ static ssize_t qeth_core_driver_group_st return err ? err : count; } diff --git a/d15.patch b/d15.patch index df935a57f83bf8..ac57eafabe0a46 100644 --- a/d15.patch +++ b/d15.patch @@ -5,7 +5,7 @@ --- a/drivers/s390/net/ctcm_main.c +++ b/drivers/s390/net/ctcm_main.c -@@ -1771,15 +1771,15 @@ static struct ccwgroup_driver ctcm_group +@@ -1770,15 +1770,15 @@ static struct ccwgroup_driver ctcm_group .restore = ctcm_pm_resume, }; diff --git a/driver-core-add-class_attr_wo.patch b/driver-core-add-class_attr_wo.patch deleted file mode 100644 index 4fe5eaa76eeb48..00000000000000 --- a/driver-core-add-class_attr_wo.patch +++ /dev/null @@ -1,27 +0,0 @@ -From foo@baz Tue Nov 22 18:29:57 CET 2016 -Date: Tue, 22 Nov 2016 18:29:57 +0100 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] driver core: add CLASS_ATTR_WO() - -Some class subsystems are open-coding CLASS_ATTR_WO because the driver -core never provided it. Add the macro to device.h so that we can go -around and fix up the individual subsystems as needed. - -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - ---- - include/linux/device.h | 2 ++ - 1 file changed, 2 insertions(+) - ---- a/include/linux/device.h -+++ b/include/linux/device.h -@@ -463,6 +463,8 @@ struct class_attribute { - struct class_attribute class_attr_##_name = __ATTR_RW(_name) - #define CLASS_ATTR_RO(_name) \ - struct class_attribute class_attr_##_name = __ATTR_RO(_name) -+#define CLASS_ATTR_WO(_name) \ -+ struct class_attribute class_attr_##_name = __ATTR_WO(_name) - - extern int __must_check class_create_file_ns(struct class *class, - const struct class_attribute *attr, diff --git a/driver-core-class-add-class_groups-support.patch b/driver-core-class-add-class_groups-support.patch deleted file mode 100644 index bc31f3f6af655b..00000000000000 --- a/driver-core-class-add-class_groups-support.patch +++ /dev/null @@ -1,76 +0,0 @@ -From foo@baz Wed Nov 23 12:03:37 CET 2016 -Date: Wed, 23 Nov 2016 12:03:37 +0100 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] driver core: class: add class_groups support - -struct class needs to have a set of default groups that are added, as -adding individual attributes does not work well in the long run. So add -support for that. - -Future patches will convert the existing usages of class_attrs to use -class_groups and then class_attrs will go away. - -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - ---- - drivers/base/class.c | 15 +++++++++++++++ - include/linux/device.h | 2 ++ - 2 files changed, 17 insertions(+) - ---- a/drivers/base/class.c -+++ b/drivers/base/class.c -@@ -163,6 +163,18 @@ static void klist_class_dev_put(struct k - put_device(dev); - } - -+static int class_add_groups(struct class *cls, -+ const struct attribute_group **groups) -+{ -+ return sysfs_create_groups(&cls->p->subsys.kobj, groups); -+} -+ -+static void class_remove_groups(struct class *cls, -+ const struct attribute_group **groups) -+{ -+ return sysfs_remove_groups(&cls->p->subsys.kobj, groups); -+} -+ - int __class_register(struct class *cls, struct lock_class_key *key) - { - struct subsys_private *cp; -@@ -203,6 +215,8 @@ int __class_register(struct class *cls, - kfree(cp); - return error; - } -+ error = class_add_groups(class_get(cls), cls->class_groups); -+ class_put(cls); - error = add_class_attrs(class_get(cls)); - class_put(cls); - return error; -@@ -213,6 +227,7 @@ void class_unregister(struct class *cls) - { - pr_debug("device class '%s': unregistering\n", cls->name); - remove_class_attrs(cls); -+ class_remove_groups(cls, cls->class_groups); - kset_unregister(&cls->p->subsys); - } - ---- a/include/linux/device.h -+++ b/include/linux/device.h -@@ -360,6 +360,7 @@ int subsys_virtual_register(struct bus_t - * @name: Name of the class. - * @owner: The module owner. - * @class_attrs: Default attributes of this class. -+ * @class_groups: Default attributes of this class. - * @dev_groups: Default attributes of the devices that belong to the class. - * @dev_kobj: The kobject that represents this class and links it into the hierarchy. - * @dev_uevent: Called when a device is added, removed from this class, or a -@@ -388,6 +389,7 @@ struct class { - struct module *owner; - - struct class_attribute *class_attrs; -+ const struct attribute_group **class_groups; - const struct attribute_group **dev_groups; - struct kobject *dev_kobj; - diff --git a/driver-core-devcoredump-convert-to-use-class_groups.patch b/driver-core-devcoredump-convert-to-use-class_groups.patch deleted file mode 100644 index b6e1575f92bc39..00000000000000 --- a/driver-core-devcoredump-convert-to-use-class_groups.patch +++ /dev/null @@ -1,42 +0,0 @@ -From foo@baz Wed Nov 23 12:05:55 CET 2016 -Date: Wed, 23 Nov 2016 12:05:55 +0100 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] driver core: devcoredump: convert to use class_groups - -Convert devcoredump to use class_groups instead of class_attrs as that's -the correct way to handle lists of class attribute files. - -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - ---- - drivers/base/devcoredump.c | 10 ++++++---- - 1 file changed, 6 insertions(+), 4 deletions(-) - ---- a/drivers/base/devcoredump.c -+++ b/drivers/base/devcoredump.c -@@ -160,18 +160,20 @@ static ssize_t disabled_store(struct cla - - return count; - } -+static CLASS_ATTR_RW(disabled); - --static struct class_attribute devcd_class_attrs[] = { -- __ATTR_RW(disabled), -- __ATTR_NULL -+static struct attribute *devcd_class_attrs[] = { -+ &class_attr_disabled.attr, -+ NULL, - }; -+ATTRIBUTE_GROUPS(devcd_class); - - static struct class devcd_class = { - .name = "devcoredump", - .owner = THIS_MODULE, - .dev_release = devcd_dev_release, - .dev_groups = devcd_dev_groups, -- .class_attrs = devcd_class_attrs, -+ .class_groups = devcd_class_groups, - }; - - static ssize_t devcd_readv(char *buffer, loff_t offset, size_t count, diff --git a/driver-core-firmware_class-convert-to-use-class_groups.patch b/driver-core-firmware_class-convert-to-use-class_groups.patch deleted file mode 100644 index ce2c8db777c41d..00000000000000 --- a/driver-core-firmware_class-convert-to-use-class_groups.patch +++ /dev/null @@ -1,42 +0,0 @@ -From foo@baz Wed Nov 23 12:06:51 CET 2016 -Date: Wed, 23 Nov 2016 12:06:51 +0100 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] driver core: firmware_class: convert to use class_groups - -Convert the firmware core to use class_groups instead of class_attrs as -that's the correct way to handle lists of class attribute files. - -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ---- - drivers/base/firmware_class.c | 10 ++++++---- - 1 file changed, 6 insertions(+), 4 deletions(-) - ---- a/drivers/base/firmware_class.c -+++ b/drivers/base/firmware_class.c -@@ -546,11 +546,13 @@ static ssize_t timeout_store(struct clas - - return count; - } -+static CLASS_ATTR_RW(timeout); - --static struct class_attribute firmware_class_attrs[] = { -- __ATTR_RW(timeout), -- __ATTR_NULL -+static struct attribute *firmware_class_attrs[] = { -+ &class_attr_timeout.attr, -+ NULL, - }; -+ATTRIBUTE_GROUPS(firmware_class); - - static void fw_dev_release(struct device *dev) - { -@@ -585,7 +587,7 @@ static int firmware_uevent(struct device - - static struct class firmware_class = { - .name = "firmware", -- .class_attrs = firmware_class_attrs, -+ .class_groups = firmware_class_groups, - .dev_uevent = firmware_uevent, - .dev_release = fw_dev_release, - }; diff --git a/p23.patch b/p23.patch index e25525418e8419..6a652165b8467e 100644 --- a/p23.patch +++ b/p23.patch @@ -4,7 +4,7 @@ --- a/drivers/rpmsg/rpmsg_core.c +++ b/drivers/rpmsg/rpmsg_core.c -@@ -275,7 +275,8 @@ field##_show(struct device *dev, \ +@@ -310,7 +310,8 @@ field##_show(struct device *dev, \ struct rpmsg_device *rpdev = to_rpmsg_device(dev); \ \ return sprintf(buf, format_string, rpdev->path); \ @@ -14,7 +14,7 @@ /* for more info, see Documentation/ABI/testing/sysfs-bus-rpmsg */ rpmsg_show_attr(name, id.name, "%s\n"); -@@ -290,15 +291,17 @@ static ssize_t modalias_show(struct devi +@@ -325,15 +326,17 @@ static ssize_t modalias_show(struct devi return sprintf(buf, RPMSG_DEVICE_MODALIAS_FMT "\n", rpdev->id.name); } @@ -39,7 +39,7 @@ /* rpmsg devices and drivers are matched using the service name */ static inline int rpmsg_id_match(const struct rpmsg_device *rpdev, -@@ -393,7 +396,7 @@ static int rpmsg_dev_remove(struct devic +@@ -435,7 +438,7 @@ static int rpmsg_dev_remove(struct devic static struct bus_type rpmsg_bus = { .name = "rpmsg", .match = rpmsg_dev_match, diff --git a/p30.patch b/p30.patch index 30164305ce6064..75d041de3a8e9c 100644 --- a/p30.patch +++ b/p30.patch @@ -4,7 +4,7 @@ --- a/drivers/hwtracing/intel_th/core.c +++ b/drivers/hwtracing/intel_th/core.c -@@ -136,7 +136,6 @@ static int intel_th_remove(struct device +@@ -139,7 +139,6 @@ static int intel_th_remove(struct device static struct bus_type intel_th_bus = { .name = "intel_th", diff --git a/pci_groups.patch b/pci_groups.patch index afd7f8aaaaeb88..5617216362a447 100644 --- a/pci_groups.patch +++ b/pci_groups.patch @@ -6,7 +6,7 @@ --- a/drivers/infiniband/hw/nes/nes.c +++ b/drivers/infiniband/hw/nes/nes.c -@@ -810,13 +810,6 @@ static void nes_remove(struct pci_dev *p +@@ -809,13 +809,6 @@ static void nes_remove(struct pci_dev *p } @@ -20,7 +20,7 @@ static ssize_t adapter_show(struct device_driver *ddp, char *buf) { unsigned int devfn = 0xffffffff; -@@ -1158,35 +1151,29 @@ static DRIVER_ATTR_RW(idx_addr); +@@ -1157,35 +1150,29 @@ static DRIVER_ATTR_RW(idx_addr); static DRIVER_ATTR_RW(idx_data); static DRIVER_ATTR_RW(wqm_quanta); @@ -79,7 +79,7 @@ /** * nes_init_module - module initialization entry point -@@ -1194,20 +1181,13 @@ static void nes_remove_driver_sysfs(stru +@@ -1193,20 +1180,13 @@ static void nes_remove_driver_sysfs(stru static int __init nes_init_module(void) { int retval; @@ -101,7 +101,7 @@ } -@@ -1217,7 +1197,6 @@ static int __init nes_init_module(void) +@@ -1216,7 +1196,6 @@ static int __init nes_init_module(void) static void __exit nes_exit_module(void) { nes_cm_stop(); @@ -2,7 +2,6 @@ 0002-drbd-rename-usermode_helper-to-drbd_usermode_helper.patch 0003-Make-static-usermode-helper-binaries-constant.patch 0004-Introduce-CONFIG_READONLY_USERMODEHELPER.patch -usb-core-add-missing-license-information.patch ## broken patch! # @@ -58,10 +57,6 @@ p29.patch p30.patch p31.patch -driver-core-add-class_attr_wo.patch -driver-core-class-add-class_groups-support.patch -driver-core-devcoredump-convert-to-use-class_groups.patch -driver-core-firmware_class-convert-to-use-class_groups.patch c03.patch c04.patch c05.patch diff --git a/staging-exfat-add-filesystem-to-the-build.patch b/staging-exfat-add-filesystem-to-the-build.patch index 54646b28b582e5..0c72a826dc8353 100644 --- a/staging-exfat-add-filesystem-to-the-build.patch +++ b/staging-exfat-add-filesystem-to-the-build.patch @@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- a/drivers/staging/Kconfig +++ b/drivers/staging/Kconfig -@@ -106,4 +106,6 @@ source "drivers/staging/greybus/Kconfig" +@@ -104,4 +104,6 @@ source "drivers/staging/greybus/Kconfig" source "drivers/staging/vc04_services/Kconfig" @@ -27,10 +27,10 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> endif # STAGING --- a/drivers/staging/Makefile +++ b/drivers/staging/Makefile -@@ -42,3 +42,4 @@ obj-$(CONFIG_ISDN_I4L) += i4l/ +@@ -41,3 +41,4 @@ obj-$(CONFIG_ISDN_I4L) += i4l/ obj-$(CONFIG_KS7010) += ks7010/ obj-$(CONFIG_GREYBUS) += greybus/ - obj-$(CONFIG_BCM2708_VCHIQ) += vc04_services/ + obj-$(CONFIG_BCM2835_VCHIQ) += vc04_services/ +obj-$(CONFIG_EXFAT_FS) += exfat/ --- /dev/null +++ b/drivers/staging/exfat/Kconfig diff --git a/usb-core-add-missing-license-information.patch b/usb-core-add-missing-license-information.patch deleted file mode 100644 index 6c353e4b54fc55..00000000000000 --- a/usb-core-add-missing-license-information.patch +++ /dev/null @@ -1,178 +0,0 @@ -From foo@baz Sun Aug 21 16:22:06 CEST 2016 -Date: Sun, 21 Aug 2016 16:22:06 +0200 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] USB: core: add missing license information - -Some of the USB core files were missing explicit license information. -As all files in the kernel tree are implicitly licensed under the -GPLv2-only, be explicit in case someone get confused looking at -individual files by using the SPDX nomenclature. - -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - ---- - drivers/usb/core/buffer.c | 3 +++ - drivers/usb/core/config.c | 5 +++++ - drivers/usb/core/driver.c | 3 +++ - drivers/usb/core/endpoint.c | 4 +++- - drivers/usb/core/file.c | 2 ++ - drivers/usb/core/generic.c | 2 ++ - drivers/usb/core/hub.c | 2 ++ - drivers/usb/core/message.c | 3 +++ - drivers/usb/core/notify.c | 2 ++ - drivers/usb/core/sysfs.c | 2 ++ - drivers/usb/core/urb.c | 5 +++++ - drivers/usb/core/usb.c | 3 +++ - drivers/usb/core/usb.h | 5 +++++ - 13 files changed, 40 insertions(+), 1 deletion(-) - ---- a/drivers/usb/core/buffer.c -+++ b/drivers/usb/core/buffer.c -@@ -3,6 +3,9 @@ - * - * This implementation plugs in through generic "usb_bus" level methods, - * and should work with all USB controllers, regardless of bus type. -+ * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - #include <linux/module.h> ---- a/drivers/usb/core/config.c -+++ b/drivers/usb/core/config.c -@@ -1,3 +1,8 @@ -+/* -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 -+ */ -+ - #include <linux/usb.h> - #include <linux/usb/ch9.h> - #include <linux/usb/hcd.h> ---- a/drivers/usb/core/driver.c -+++ b/drivers/usb/core/driver.c -@@ -15,6 +15,9 @@ - * (usb_device_id matching changes by Adam J. Richter) - * (C) Copyright Greg Kroah-Hartman 2002-2003 - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 -+ * - * NOTE! This is not actually a driver at all, rather this is - * just a collection of helper routines that implement the - * matching, probing, releasing, suspending and resuming for ---- a/drivers/usb/core/endpoint.c -+++ b/drivers/usb/core/endpoint.c -@@ -5,8 +5,10 @@ - * (C) Copyright 2002,2004 IBM Corp. - * (C) Copyright 2006 Novell Inc. - * -- * Endpoint sysfs stuff -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - * -+ * Endpoint sysfs stuff - */ - - #include <linux/kernel.h> ---- a/drivers/usb/core/file.c -+++ b/drivers/usb/core/file.c -@@ -13,6 +13,8 @@ - * (usb_device_id matching changes by Adam J. Richter) - * (C) Copyright Greg Kroah-Hartman 2002-2003 - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - #include <linux/module.h> ---- a/drivers/usb/core/generic.c -+++ b/drivers/usb/core/generic.c -@@ -15,6 +15,8 @@ - * (usb_device_id matching changes by Adam J. Richter) - * (C) Copyright Greg Kroah-Hartman 2002-2003 - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - #include <linux/usb.h> ---- a/drivers/usb/core/hub.c -+++ b/drivers/usb/core/hub.c -@@ -6,6 +6,8 @@ - * (C) Copyright 1999 Gregory P. Smith - * (C) Copyright 2001 Brad Hards (bhards@bigpond.net.au) - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - #include <linux/kernel.h> ---- a/drivers/usb/core/message.c -+++ b/drivers/usb/core/message.c -@@ -1,5 +1,8 @@ - /* - * message.c - synchronous message handling -+ * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - #include <linux/pci.h> /* for scatterlist macros */ ---- a/drivers/usb/core/notify.c -+++ b/drivers/usb/core/notify.c -@@ -6,6 +6,8 @@ - * notifier functions originally based on those in kernel/sys.c - * but fixed up to not be so broken. - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - ---- a/drivers/usb/core/sysfs.c -+++ b/drivers/usb/core/sysfs.c -@@ -7,6 +7,8 @@ - * - * All of the sysfs file attributes for usb devices and interfaces. - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 - */ - - ---- a/drivers/usb/core/urb.c -+++ b/drivers/usb/core/urb.c -@@ -1,3 +1,8 @@ -+/* -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 -+ */ -+ - #include <linux/module.h> - #include <linux/string.h> - #include <linux/bitops.h> ---- a/drivers/usb/core/usb.c -+++ b/drivers/usb/core/usb.c -@@ -12,6 +12,9 @@ - * (usb_device_id matching changes by Adam J. Richter) - * (C) Copyright Greg Kroah-Hartman 2002-2003 - * -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 -+ * - * NOTE! This is not actually a driver at all, rather this is - * just a collection of helper routines that implement the - * generic USB things that the real drivers can use.. ---- a/drivers/usb/core/usb.h -+++ b/drivers/usb/core/usb.h -@@ -1,3 +1,8 @@ -+/* -+ * Released under the GPLv2 only. -+ * SPDX-License-Identifier: GPL-2.0 -+ */ -+ - #include <linux/pm.h> - #include <linux/acpi.h> - |