]> git.pld-linux.org Git - packages/kernel.git/blame - evms-linux-2.4.18-common-files.patch
- obsolete
[packages/kernel.git] / evms-linux-2.4.18-common-files.patch
CommitLineData
48b9868f
AM
1diff -Naur linux-2002-03-06/Documentation/Configure.help evms-2002-03-06/Documentation/Configure.help
2--- linux-2002-03-06/Documentation/Configure.help Wed Mar 6 09:29:44 2002
3+++ evms-2002-03-06/Documentation/Configure.help Tue Feb 26 07:35:50 2002
2fb59530 4@@ -1671,6 +1671,196 @@
48b9868f
AM
5 called on26.o. You must also have a high-level driver for the type
6 of device that you want to support.
7
8+EVMS Kernel Runtime
9+CONFIG_EVMS
10+ EVMS runtime driver. This is a plugin-based framework for volume
11+ management, and combines support for partitioning, software RAID,
12+ LVM, and more into a single interface.
13+
14+ User-space tools are required to perform administration of EVMS logical
15+ volumes. Please visit <http://www.sourceforge.net/projects/evms> for
16+ more details on downloading and installing these tools.
17+
18+ This driver is also available as a pair of modules called evms.o and
19+ evms_passthru.o ( = code which can be inserted and removed from the
20+ running kernel whenever you want). If you want to compile it as a module,
21+ say M here and read <file:Documentation/modules.txt>.
22+
23+EVMS Local Device Manager Plugin
24+CONFIG_EVMS_LOCAL_DEV_MGR_PLUGIN
25+ Support for local IDE and SCSI devices. This plugin is required if EVMS
26+ support is selected.
27+
28+ This plugin is also available as a kernel module called ldev_mgr.o.
29+
30+EVMS DOS Partition Manager Plugin
31+CONFIG_EVMS_DOS_PARTITION_PLUGIN
32+ Support for recognizing all partitions using the ever-popular DOS
33+ partitioning scheme (MBRs & EBRs). 99% of the time you will need
34+ this plugin to do anything useful with EVMS.
35+
36+ This plugin also contains support for recognizing BSD disklabels,
37+ UNIXWARE partitions, Solaris-X86 partitions, and OS/2 DLAT entries.
38+
39+ This plugin is also available as a kernel module called dos_part.o.
40+
2fb59530
AM
41+EVMS GPT Partition Manager Plugin
42+CONFIG_EVMS_GPT_PARTITION_PLUGIN
43+ Support for recognizing all partitions using the new EFI GUID partitioning
44+ scheme that is used by IA-64 machines. You should only need to enable this
45+ plugin if you are running Linux on an IA-64 machine. All other architectures
46+ can say 'N' here.
47+
48+ This plugin is also available as a kernel module called gpt_part.o
49+
50+EVMS S/390 Partition Manager Plugin
51+CONFIG_EVMS_S390_PART_PLUGIN
52+ Support for recognizing all partitions created on S/390 machines. This
53+ plugin recognizes CDL, LDL, and CMS partition formats. You should only need
54+ to enable this plugin if you are running Linux on an S/390. All other
55+ architectures can say 'N' here.
56+
57+ This plugin is also available as a kernel module called s390_part.o
58+
48b9868f
AM
59+EVMS SnapShot Feature Plugin
60+CONFIG_EVMS_SNAPSHOT_PLUGIN
61+ This feature plugin lets you create a snapshot of any volume
62+ under EVMS control using any other device under under EVMS
63+ control as the target for the snapshot volume.
64+
65+ This plugin is also available as a kernel module called snapshot.o.
66+
67+EVMS DriveLink Feature Plugin
68+CONFIG_EVMS_DRIVELINK_PLUGIN
69+ This feature plugin lets you combine multiple devices into a
70+ single virtual block device. The size of the virtual block
71+ device is approximately equal to the sum of all its components.
72+ It currently supports combining up to 60 devices (partitions,
73+ disks, or logical volumes).
74+
75+ This plugin is also available as a kernel module called evms_drivelink.o.
76+
77+EVMS Bad Block Relocation (BBR) Feature
78+CONFIG_EVMS_BBR_PLUGIN
79+ BBR is designed to remap I/O write failures to another safe
80+ location on disk. Note that most disk drives have BBR built
81+ into them, so software BBR will only be activated when all
82+ hardware BBR replacement sectors have been used.
83+
84+ This plugin is also available as a kernel module called evms_bbr.o.
85+
86+EVMS Linux LVM Plugin
87+CONFIG_EVMS_LVM_PLUGIN
88+ The LVM plugin is responsible for providing compatibility with the Linux
89+ LVM. This plugin recognizes disks and partitions that are LVM physical
90+ volumes (PVs), and assembles the appropriate volume groups (VGs). LVM
91+ logical volumes (LVs) are exported as EVMS volumes with full read/write
92+ support. In addition, support for striped and snapshotted volumes is
93+ included. The corresponding EVMS Engine plugin must also be installed in
94+ order to perform any administration of LVM VGs and LVs.
95+
96+ This plugin is also available as a kernel module called lvm_vge.o.
97+
98+EVMS MD Plugin
99+CONFIG_EVMS_MD_PLUGIN
100+ The MD plugin is responsible for providing compatibility with the Linux
101+ Software RAID driver (MD). It allows several devices to be combined into
102+ one logical device. This can be used to simply append one disk or
103+ partition to another, or to combine several redundant disks into a
104+ RAID 1/4/5 device so as to provide protection against hard disk failures.
105+
106+ This plugin is also available as a kernel module called md_core.o.
107+
108+EVMS MD RAID-Linear Plugin
109+CONFIG_EVMS_MD_LINEAR_PERS
110+ The RAID-Linear personality combines disks and/or partitions simply by
111+ appending one to the other.
112+
113+ This plugin is also available as a kernel module called md_linear.o.
114+
115+EVMS MD RAID-0 Plugin
116+CONFIG_EVMS_MD_RAID0_PERS
117+ The RAID-0 personality combines disks and/or partitions into one
118+ logical device using striping. This method writes data evenly across
119+ all members in the device in order to increase the throughput rate if
120+ each member resides on a distinct disk.
121+
122+ This plugin is also available as a kernel module called md_raid0.o.
123+
124+EVMS MD RAID-1 Plugin
125+CONFIG_EVMS_MD_RAID1_PERS
126+ The RAID-1 personality implements mirroring, in which a logical device
127+ consists of several disks that are exact copies of each other. In the
128+ event of a mirror failure, the RAID-1 personality will continue to use
129+ the remaining mirrors in the set, providing an error free device to the
130+ higher levels of the kernel. In a set with N drives, the available space
131+ is the capacity of a single drive, and the set protects against the
132+ failure of N-1 drives.
133+
134+ This plugin is also available as a kernel module called md_raid1.o.
135+
136+EVMS MD RAID-4/RAID-5 Plugin
137+CONFIG_EVMS_MD_RAID5_PERS
138+ A RAID-5 set of N drives with a capacity of C MB per drive provides
139+ the capacity of C * (N-1) MB, and protects against a failure of a
140+ single drive. For a given sector (row) number, (N-1) drives contain
141+ data sectors, and one drive contains the parity protection. For a
142+ RAID-4 set, the parity blocks are present on a single drive, while
143+ a RAID-5 set distributes the parity across all drives in one of the
144+ available parity distribution methods.
145+
146+ This plugin is also available as a kernel module called md_raid5.o.
147+
148+EVMS AIX LVM Plugin
149+CONFIG_EVMS_AIX_PLUGIN
150+ The AIX LVM plugin is responsible for providing compatibility with the
151+ AIX LVM. This plugin recognizes disks and partitions that are AIX disks,
152+ and assembles the appropriate volume groups. AIX logical volumes are
153+ exported as EVMS volumes with full read/write support. In addition,
154+ support for striped volumes is included, and support for mirroring is
155+ under development.
156+
157+ You should only need to select this option if you are running on a PPC
158+ machine and want to access AIX LVM volumes. The user-space plugin for
159+ AIX will be available in the future.
160+
161+ This plugin is also available as a kernel module called AIXlvm_vge.o.
162+
163+EVMS OS/2 LVM Plugin
164+CONFIG_EVMS_OS2_PLUGIN
165+ Support for recognizing the type 0x35 partitions that later versions
166+ of OS/2 use in its Logical Volume Manager. Provides binary
167+ compatibility and includes Drive Linking and Bad Block Relocation
168+ emulation. The user-space plugin for OS/2 will be available in the future.
169+
170+ This plugin is also available as a kernel module called os2lvm_vge.o.
171+
172+EVMS Clustering Plugin
173+CONFIG_EVMS_ECR_PLUGIN
174+
175+ The EVMS Clustering Plugin is still under design and development.
176+ Best to just say 'n' here.
177+
178+ This plugin is available as a kernel module called evms_ecr.o.
179+
180+EVMS Debug Level
181+CONFIG_EVMS_INFO_CRITICAL
182+ Set the level for kernel messages from EVMS. Each level on the list
183+ produces message for that level and all levels above it. Thus, level
184+ "Critical" only logs the most critical messages (and thus the fewest),
185+ whereas level "Everything" produces more information that will probably
186+ ever be useful. Level "Default" is a good starting point. Level "Debug"
187+ is good if you are having problems with EVMS and want more basic info
188+ on what's going on during the volume discovery process.
189+
190+ EVMS also supports a boot-time kernel parameter to set the info level.
191+ To use this method, specify "evms_info_level=5" at boot time, or add the
192+ line "append = "evms_info_level=5"" to your lilo.conf file (replacing 5
193+ with your desired info level). See include/linux/evms/evms.h for the
194+ numerical definitions of the info levels. To use this boot-time parameter,
195+ the EVMS core driver must be statically built into the kernel (not as a
196+ module).
197+
198 Logical Volume Manager (LVM) support
199 CONFIG_BLK_DEV_LVM
200 This driver lets you combine several hard disks, hard disk
201diff -Naur linux-2002-03-06/MAINTAINERS evms-2002-03-06/MAINTAINERS
202--- linux-2002-03-06/MAINTAINERS Wed Mar 6 09:29:44 2002
203+++ evms-2002-03-06/MAINTAINERS Mon Mar 4 09:15:39 2002
204@@ -525,6 +525,13 @@
205 W: http://opensource.creative.com/
206 S: Maintained
207
208+ENTERPRISE VOLUME MANAGEMENT SYSTEM (EVMS)
209+P: Mark Peloquin, Steve Pratt, Kevin Corry
210+M: peloquin@us.ibm.com, slpratt@us.ibm.com, corryk@us.ibm.com
211+L: evms-devel@lists.sourceforge.net
212+W: http://www.sourceforge.net/projects/evms/
213+S: Supported
214+
215 ETHEREXPRESS-16 NETWORK DRIVER
216 P: Philip Blundell
217 M: Philip.Blundell@pobox.com
218diff -Naur linux-2002-03-06/Makefile evms-2002-03-06/Makefile
219--- linux-2002-03-06/Makefile Wed Mar 6 09:29:44 2002
220+++ evms-2002-03-06/Makefile Tue Feb 26 07:34:46 2002
221@@ -185,6 +185,7 @@
222 DRIVERS-$(CONFIG_MD) += drivers/md/mddev.o
223 DRIVERS-$(CONFIG_BLUEZ) += drivers/bluetooth/bluetooth.o
224 DRIVERS-$(CONFIG_HOTPLUG_PCI) += drivers/hotplug/vmlinux-obj.o
225+DRIVERS-$(CONFIG_EVMS) += drivers/evms/evmsdrvr.o
226
227 DRIVERS := $(DRIVERS-y)
228
229diff -Naur linux-2002-03-06/arch/i386/config.in evms-2002-03-06/arch/i386/config.in
230--- linux-2002-03-06/arch/i386/config.in Wed Mar 6 09:29:44 2002
231+++ evms-2002-03-06/arch/i386/config.in Tue Feb 26 07:35:06 2002
232@@ -298,6 +298,8 @@
233
234 source drivers/block/Config.in
235
236+source drivers/evms/Config.in
237+
238 source drivers/md/Config.in
239
240 if [ "$CONFIG_NET" = "y" ]; then
241diff -Naur linux-2002-03-06/arch/ia64/config.in evms-2002-03-06/arch/ia64/config.in
242--- linux-2002-03-06/arch/ia64/config.in Wed Mar 6 09:29:44 2002
243+++ evms-2002-03-06/arch/ia64/config.in Wed Mar 6 09:28:30 2002
244@@ -136,6 +136,7 @@
245 source drivers/pnp/Config.in
246 source drivers/block/Config.in
247 source drivers/message/i2o/Config.in
248+source drivers/evms/Config.in
249 source drivers/md/Config.in
250
251 mainmenu_option next_comment
252diff -Naur linux-2002-03-06/arch/ppc/config.in evms-2002-03-06/arch/ppc/config.in
253--- linux-2002-03-06/arch/ppc/config.in Wed Mar 6 09:29:44 2002
254+++ evms-2002-03-06/arch/ppc/config.in Tue Feb 26 07:35:25 2002
255@@ -241,6 +241,7 @@
256 source drivers/mtd/Config.in
257 source drivers/pnp/Config.in
258 source drivers/block/Config.in
259+source drivers/evms/Config.in
260 source drivers/md/Config.in
261
262 if [ "$CONFIG_NET" = "y" ]; then
d9443e25
AM
263diff -Naur linux-2002-03-06/arch/parisc/config.in evms-2002-03-06/arch/parisc/config.in
264--- linux-2002-03-06/arch/parisc/config.in Wed Mar 6 09:29:44 2002
265+++ evms-2002-03-06/arch/parisc/config.in Wed Mar 6 09:27:06 2002
266@@ -106,6 +106,8 @@
267
268 source drivers/block/Config.in
269
270+source drivers/evms/Config.in
271+
272 if [ "$CONFIG_NET" = "y" ]; then
273 source net/Config.in
274 fi
48b9868f
AM
275diff -Naur linux-2002-03-06/arch/s390/config.in evms-2002-03-06/arch/s390/config.in
276--- linux-2002-03-06/arch/s390/config.in Wed Mar 6 09:29:44 2002
277+++ evms-2002-03-06/arch/s390/config.in Wed Mar 6 07:47:50 2002
278@@ -57,6 +57,8 @@
279
280 source drivers/s390/Config.in
281
282+source drivers/evms/Config.in
283+
284 if [ "$CONFIG_NET" = "y" ]; then
285 source net/Config.in
286 fi
287diff -Naur linux-2002-03-06/arch/s390x/config.in evms-2002-03-06/arch/s390x/config.in
288--- linux-2002-03-06/arch/s390x/config.in Wed Mar 6 09:29:44 2002
289+++ evms-2002-03-06/arch/s390x/config.in Wed Mar 6 09:27:06 2002
290@@ -61,6 +61,8 @@
291
292 source drivers/s390/Config.in
293
294+source drivers/evms/Config.in
295+
296 if [ "$CONFIG_NET" = "y" ]; then
297 source net/Config.in
298 fi
299diff -Naur linux-2002-03-06/drivers/Makefile evms-2002-03-06/drivers/Makefile
300--- linux-2002-03-06/drivers/Makefile Wed Mar 6 09:29:44 2002
301+++ evms-2002-03-06/drivers/Makefile Tue Feb 26 07:36:13 2002
302@@ -8,7 +8,7 @@
303
304 mod-subdirs := dio mtd sbus video macintosh usb input telephony sgi ide \
305 message/i2o message/fusion scsi md ieee1394 pnp isdn atm \
306- fc4 net/hamradio i2c acpi bluetooth
307+ fc4 net/hamradio i2c acpi bluetooth evms
308
309 subdir-y := parport char block net sound misc media cdrom hotplug
310 subdir-m := $(subdir-y)
311@@ -46,5 +46,6 @@
312 subdir-$(CONFIG_ACPI) += acpi
313
314 subdir-$(CONFIG_BLUEZ) += bluetooth
315+subdir-$(CONFIG_EVMS) += evms
316
317 include $(TOPDIR)/Rules.make
318diff -Naur linux-2002-03-06/drivers/block/genhd.c evms-2002-03-06/drivers/block/genhd.c
319--- linux-2002-03-06/drivers/block/genhd.c Wed Mar 6 09:29:44 2002
320+++ evms-2002-03-06/drivers/block/genhd.c Tue Feb 26 07:36:28 2002
321@@ -130,6 +130,32 @@
322 EXPORT_SYMBOL(get_gendisk);
323
324
325+/**
326+ * walk_gendisk - issue a command for every registered gendisk
327+ * @walk: user-specified callback
328+ * @data: opaque data for the callback
329+ *
330+ * This function walks through the gendisk chain and calls back
331+ * into @walk for every element.
332+ */
333+int
334+walk_gendisk(int (*walk)(struct gendisk *, void *), void *data)
335+{
336+ struct gendisk *gp;
337+ int error = 0;
338+
339+ read_lock(&gendisk_lock);
340+ for (gp = gendisk_head; gp; gp = gp->next)
341+ if ((error = walk(gp, data)))
342+ break;
343+ read_unlock(&gendisk_lock);
344+
345+ return error;
346+}
347+
348+EXPORT_SYMBOL(walk_gendisk);
349+
350+
351 #ifdef CONFIG_PROC_FS
352 int
353 get_partition_list(char *page, char **start, off_t offset, int count)
354diff -Naur linux-2002-03-06/include/linux/genhd.h evms-2002-03-06/include/linux/genhd.h
355--- linux-2002-03-06/include/linux/genhd.h Wed Mar 6 09:29:44 2002
356+++ evms-2002-03-06/include/linux/genhd.h Tue Feb 26 07:36:57 2002
357@@ -92,6 +92,7 @@
358 extern void add_gendisk(struct gendisk *gp);
359 extern void del_gendisk(struct gendisk *gp);
360 extern struct gendisk *get_gendisk(kdev_t dev);
361+extern int walk_gendisk(int (*walk)(struct gendisk *, void *), void *);
362
363 #endif /* __KERNEL__ */
364
d9443e25
AM
365diff -Naur linux-2002-03-06/include/linux/sysctl.h evms-2002-03-06/include/linux/sysctl.h
366--- linux-2002-03-06/include/linux/sysctl.h Wed Mar 6 09:29:44 2002
367+++ evms-2002-03-06/include/linux/sysctl.h Tue Feb 26 07:36:57 2002
368@@ -553,7 +553,8 @@
369 DEV_HWMON=2,
370 DEV_PARPORT=3,
371 DEV_RAID=4,
372- DEV_MAC_HID=5
373+ DEV_MAC_HID=5,
374+ DEV_EVMS=6
375 };
376
377 /* /proc/sys/dev/cdrom */
378@@ -569,6 +570,18 @@
379 /* /proc/sys/dev/parport */
380 enum {
381 DEV_PARPORT_DEFAULT=-3
382+};
383+
384+/* /proc/sys/dev/evms */
385+enum {
386+ DEV_EVMS_INFO_LEVEL=1,
387+ DEV_EVMS_MD=2
388+};
389+
390+/* /proc/sys/dev/evms/raid */
391+enum {
392+ DEV_EVMS_MD_SPEED_LIMIT_MIN=1,
393+ DEV_EVMS_MD_SPEED_LIMIT_MAX=2
394 };
395
396 /* /proc/sys/dev/raid */
48b9868f
AM
397diff -Naur linux-2002-03-06/init/main.c evms-2002-03-06/init/main.c
398--- linux-2002-03-06/init/main.c Wed Mar 6 09:29:44 2002
399+++ evms-2002-03-06/init/main.c Tue Feb 26 07:37:19 2002
400@@ -269,6 +269,7 @@
401 { "ftlc", 0x2c10 },
402 { "ftld", 0x2c18 },
403 { "mtdblock", 0x1f00 },
404+ { "evms", 0x3f00 },
405 { NULL, 0 }
406 };
407
408diff -Naur linux-2002-03-06/kernel/ksyms.c evms-2002-03-06/kernel/ksyms.c
409--- linux-2002-03-06/kernel/ksyms.c Wed Mar 6 09:29:44 2002
410+++ evms-2002-03-06/kernel/ksyms.c Tue Mar 5 14:53:51 2002
411@@ -311,6 +311,8 @@
412 EXPORT_SYMBOL(refile_buffer);
413 EXPORT_SYMBOL(max_sectors);
414 EXPORT_SYMBOL(max_readahead);
415+EXPORT_SYMBOL(is_swap_partition);
416+EXPORT_SYMBOL(root_device_name);
417
418 /* tty routines */
419 EXPORT_SYMBOL(tty_hangup);
This page took 0.328612 seconds and 4 git commands to generate.