Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

[PATCH] remove protection of LANANA-reserved majors

Revert all this. It can cause device-mapper to receive a different major from
earlier kernels and it turns out that the Amanda backup program (via GNU tar,
apparently) checks major numbers on files when performing incremental backups.

Which is a bit broken of Amanda (or tar), but this feature isn't important
enough to justify the churn.

Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Andrew Morton and committed by
Linus Torvalds
2363cc02 c75fd0ee

-20
-2
block/genhd.c
··· 62 62 /* temporary */ 63 63 if (major == 0) { 64 64 for (index = ARRAY_SIZE(major_names)-1; index > 0; index--) { 65 - if (is_lanana_major(index)) 66 - continue; 67 65 if (major_names[index] == NULL) 68 66 break; 69 67 }
-14
drivers/base/core.c
··· 28 28 int (*platform_notify_remove)(struct device * dev) = NULL; 29 29 30 30 /* 31 - * Detect the LANANA-assigned LOCAL/EXPERIMENTAL majors 32 - */ 33 - bool is_lanana_major(unsigned int major) 34 - { 35 - if (major >= 60 && major <= 63) 36 - return 1; 37 - if (major >= 120 && major <= 127) 38 - return 1; 39 - if (major >= 240 && major <= 254) 40 - return 1; 41 - return 0; 42 - } 43 - 44 - /* 45 31 * sysfs bindings for devices. 46 32 */ 47 33
-2
fs/char_dev.c
··· 109 109 /* temporary */ 110 110 if (major == 0) { 111 111 for (i = ARRAY_SIZE(chrdevs)-1; i > 0; i--) { 112 - if (is_lanana_major(i)) 113 - continue; 114 112 if (chrdevs[i] == NULL) 115 113 break; 116 114 }
-2
include/linux/kdev_t.h
··· 87 87 return dev & 0x3ffff; 88 88 } 89 89 90 - bool is_lanana_major(unsigned int major); 91 - 92 90 #else /* __KERNEL__ */ 93 91 94 92 /*