summaryrefslogtreecommitdiffstats
path: root/zarb-ml/mageia-dev/2011-July/006543.html
blob: 80f985b001f80b33362f112104993793810523cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
 <HEAD>
   <TITLE> [Mageia-dev] [Mageia 2 specifications ] Grub2
   </TITLE>
   <LINK REL="Index" HREF="index.html" >
   <LINK REL="made" HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20%5BMageia%202%20specifications%20%5D%20Grub2&In-Reply-To=%3C201107121629.31748.jjorge%40free.fr%3E">
   <META NAME="robots" CONTENT="index,nofollow">
   <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
   <LINK REL="Previous"  HREF="006541.html">
   <LINK REL="Next"  HREF="006544.html">
 </HEAD>
 <BODY BGCOLOR="#ffffff">
   <H1>[Mageia-dev] [Mageia 2 specifications ] Grub2</H1>
    <B>Jos&#233; Jorge</B> 
    <A HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20%5BMageia%202%20specifications%20%5D%20Grub2&In-Reply-To=%3C201107121629.31748.jjorge%40free.fr%3E"
       TITLE="[Mageia-dev] [Mageia 2 specifications ] Grub2">jjorge at free.fr
       </A><BR>
    <I>Tue Jul 12 16:29:31 CEST 2011</I>
    <P><UL>
        <LI>Previous message: <A HREF="006541.html">[Mageia-dev] [Mageia 2 specifications ] Grub2
</A></li>
        <LI>Next message: <A HREF="006544.html">[Mageia-dev] [Mageia 2 specifications ] Grub2
</A></li>
         <LI> <B>Messages sorted by:</B> 
              <a href="date.html#6543">[ date ]</a>
              <a href="thread.html#6543">[ thread ]</a>
              <a href="subject.html#6543">[ subject ]</a>
              <a href="author.html#6543">[ author ]</a>
         </LI>
       </UL>
    <HR>  
<!--beginarticle-->
<PRE>Le mardi 12 juillet 2011 15:12:52, Anne nicolas a &#233;crit :
&gt;<i> Yet another burning subject that needs time to think about it and
</I>&gt;<i> eventually migrate to.
</I>&gt;<i> 
</I>&gt;<i> <A HREF="https://bugs.mageia.org/show_bug.cgi?id=2121">https://bugs.mageia.org/show_bug.cgi?id=2121</A>
</I>&gt;<i> 
</I>&gt;<i> Grub 2 is coming now regularly in proposals. What should  we do about it :
</I>&gt;<i> - Stay with Grub 1 - pb ? maintainance ? restrictions ?
</I>&gt;<i> - Switch to Grub 2 : smooth migration, tests, integration...
</I>
SWITCH!

We can switch Cauldron now, to get massive tests, now that KDM knows it.

I feel it is specially important that drakboot, gdm and kdm work nicely with 
it (ie. no regression).

- Test also multiboot with Ubuntu and Fedora (auto-detection)

And still keep GRUB1 till Mageia 3, to have a simple go back avalaible for 
people who will have problems with GRUB2.
</PRE>











































































<!--endarticle-->
    <HR>
    <P><UL>
        <!--threads-->
	<LI>Previous message: <A HREF="006541.html">[Mageia-dev] [Mageia 2 specifications ] Grub2
</A></li>
	<LI>Next message: <A HREF="006544.html">[Mageia-dev] [Mageia 2 specifications ] Grub2
</A></li>
         <LI> <B>Messages sorted by:</B> 
              <a href="date.html#6543">[ date ]</a>
              <a href="thread.html#6543">[ thread ]</a>
              <a href="subject.html#6543">[ subject ]</a>
              <a href="author.html#6543">[ author ]</a>
         </LI>
       </UL>

<hr>
<a href="https://www.mageia.org/mailman/listinfo/mageia-dev">More information about the Mageia-dev
mailing list</a><br>
</body></html>
rtal(newSViv(bad))); PUSHs(sv_2mortal(newSViv(used))); } unsigned int next(unused, cluster) void *unused unsigned int cluster CODE: RETVAL = next(cluster); OUTPUT: RETVAL void set_next(unused, cluster, val) void *unused unsigned int cluster unsigned int val CODE: set_next(cluster, val); void allocate_fat_flag(size) int size CODE: fat_flag_map = calloc(size, 1); if (!fat_flag_map) { free_all(); croak("allocate_fat_flag: not enough memory"); } int checkFat(cluster, type, name) unsigned int cluster int type char *name CODE: int nb = 0; if (!fat_flag_map) { free_all(); croak("Bad FAT: trying to use null pointer"); } for (; cluster < bad_cluster_value; cluster = next(cluster)) { if (cluster == 0) { free_all(); croak("Bad FAT: unterminated chain for %s\n", name); } if (cluster >= nb_clusters + 2) { free_all(); croak("Bad FAT: chain outside filesystem for %s\n", name); } if (fat_flag_map[cluster]) { free_all(); croak("Bad FAT: cluster %d is cross-linked for %s\n", cluster, name); } fat_flag_map[cluster] = type; nb++; } RETVAL = nb; OUTPUT: RETVAL unsigned int flag(cluster) unsigned int cluster CODE: if (!fat_flag_map) { free_all(); croak("Bad FAT: trying to use null pointer"); } if (cluster >= nb_clusters + 2) { free_all(); croak("Bad FAT: going outside filesystem"); } RETVAL = fat_flag_map[cluster]; OUTPUT: RETVAL void set_flag(cluster, flag) unsigned int cluster int flag CODE: if (!fat_flag_map) { free_all(); croak("Bad FAT: trying to use null pointer"); } if (cluster >= nb_clusters + 2) { free_all(); croak("Bad FAT: going outside filesystem"); } fat_flag_map[cluster] = flag; void allocate_fat_remap(size) int size CODE: fat_remap_size = size; fat_remap = (unsigned int *) calloc(size, sizeof(unsigned int *)); if (!fat_remap) { free_all(); croak("allocate_fat_remap: not enough memory"); } unsigned int fat_remap(cluster) unsigned int cluster CODE: if (!fat_remap) { free_all(); croak("fat_remap: trying to use null pointer"); } if (cluster >= bad_cluster_value) { RETVAL = cluster; /* special cases */ } else { if (cluster >= fat_remap_size) { free_all(); croak("fat_remap: cluster %d >= %d in fat_remap", cluster, fat_remap_size); } RETVAL = fat_remap[cluster]; } OUTPUT: RETVAL void set_fat_remap(cluster, val) unsigned int cluster unsigned int val CODE: if (!fat_remap) { free_all(); croak("set_fat_remap: trying to use null pointer"); } if (cluster >= fat_remap_size) { free_all(); croak("set_fat_remap: cluster %d >= %d in set_fat_remap", cluster, fat_remap_size); } if (val < bad_cluster_value && val >= fat_remap_size) { free_all(); croak("set_fat_remap: remapping cluster %d to cluster %d >= %d in set_fat_remap", cluster, val, fat_remap_size); } fat_remap[cluster] = val;