File: ChangeLog

package info (click to toggle)
grub2 2.02+dfsg1-20
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 61,784 kB
  • sloc: ansic: 384,086; asm: 16,323; sh: 13,230; cpp: 1,994; makefile: 1,488; python: 1,458; sed: 423; lex: 393; yacc: 267; awk: 75; lisp: 50; perl: 31
file content (3795 lines) | stat: -rw-r--r-- 128,551 bytes parent folder | download | duplicates (2)
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
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
2017-04-25  Vladimir Serbinenko  <phcoder@gmail.com>

	Increase version to 2.02.

2017-04-12  Vladimir Serbinenko  <phcoder@gmail.com>

	Fix remaining cases of gcc 7 fallthrough warning.
	They are all intended, so just add the relevant comment.

2017-04-04  Andrei Borzenkov  <arvidjaar@gmail.com>

	Add gnulib-fix-gcc7-fallthrough.diff
	As long as the code is not upstream, add it as explicit patch for the
	case of gnulib refresh.

2017-04-04  Andrei Borzenkov  <arvidjaar@gmail.com>

	i386, x86_64, ppc: fix switch fallthrough cases with GCC7
	In util/getroot and efidisk slightly modify exitsing comment to mostly
	retain it but still make GCC7 compliant with respect to fall through
	annotation.

	In grub-core/lib/xzembed/xz_dec_lzma2.c it adds same comments as
	upstream.

	In grub-core/tests/setjmp_tets.c declare functions as "noreturn" to
	suppress GCC7 warning.

	In grub-core/gnulib/regexec.c use new __attribute__, because existing
	annotation is not recognized by GCC7 parser (which requires that comment
	immediately precedes case statement).

	Otherwise add FALLTHROUGH comment.

	Closes: 50598

2017-04-04  Andrei Borzenkov  <arvidjaar@gmail.com>

	btrfs: avoid "used uninitialized" error with GCC7
	sblock was local and so considered new variable on every loop
	iteration.

	Closes: 50597

2017-04-02  Andrei Borzenkov  <arvidjaar@gmail.com>

	acpi: add missing efi_call wrapper to acpi command
	Fixed loading of ACPI tables on EFI (side effect was apparent memory
	corruption ranging from unpredictable behavior to system reset).

	Reported by Nando Eva <nando4eva@ymail.com>

2017-03-15  Vladimir Serbinenko  <phcoder@gmail.com>

	Increment version to GRUB 2.02~rc2.

	Use core2duo for bootcheck test on 64-bit EFI.
	Obviously pentium2 can't run efi64.

2017-03-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	efi: skip iPXE block device.
	iPXE adds Simple File System Protocol to loaded image handle, as side
	effect it also adds Block IO protocol (according to comments, to work
	around some bugs in EDK2). GRUB assumes that every device with Block IO
	is disk and skips network initialization entirely. But iPXE Block IO
	implementation is just a stub which always fails for every operation
	so cannot be used. Attempt to detect and skip such devices.

	We are using media ID which iPXE sets to "iPXE" and block IO size in
	hope that no real device would announce 1B block ...

	Closes: 50518

2017-03-05  phcoder  <phcoder@gmail.com>

	xen: Fix wrong register in relocator.
	This fixes chainloading of some GRUB variants.

2017-02-27  Vladimir Serbinenko  <phcoder@gmail.com>

	video_fb: Fix blue collor if using unoptimized blitter.
	when unmapping the color what matters is the mode of source, not target.

	legacy_initrd: Strip any additional arguments to initrd.

2017-02-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-fs-tester: improve squash4 tests
	1. Make sure files are not multiple of block size. This will ensure tail packing
	for squash4 and may also trigger more codes paths in other filesystems.

	2. Call mksquashfs with -always-use-fragments to force tail packing.

2017-02-25  Andrei Borzenkov  <arvidjaar@gmail.com>

	efi: strip off final NULL from File Path in grub_efi_get_filename
	UEFI 2.6 9.3.6.4 File Path Media Device Path says that Path Name is
	"A NULL-terminated Path string including directory and file names".

	Strip final NULL from Path Name in each File Path node when constructing
	full path. To be on safe side, strip all of them.

	Fixes failure chainloading grub from grub, when loaded grub truncates
	image path and does not find its grub.cfg.

	https://bugzilla.opensuse.org/show_bug.cgi?id=1026344

	This was triggered by commit ce95549cc54b5d6f494608a7c390dba3aab4fba7;
	before it we built Path Name without trailing NULL, and apparently all
	other bootloaders use single File Path node, thus not exposing this bug.

2017-02-24  Andrei Borzenkov  <arvidjaar@gmail.com>

	squash4: fix handling of fragments and sparse files
	1. Do not assume block list and fragment are mutually exclusive. Squash
	can pack file tail as fragment (unless -no-fragments is specified); so
	check read offset and read either from block list or from fragments as
	appropriate.

	2. Support sparse files with zero blocks.

	3. Fix fragment read - frag.offset is absolute fragment position,
	not offset relative to ino.chunk.

	Reported and tested by Carlo Caione <carlo@endlessm.com>

2017-02-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Whitelist sparc64-ieee1275 as having no video modules.
	ieee1275_fb is not built on sparc64 due to virtual address issues.

2017-02-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	script: fix double free in lexer
	yylex_destroy() already frees scanner.

	Found by: Coverity scan.
	CID: 176636

2017-02-07  Vladimir Serbinenko  <phcoder@gmail.com>

	xen: Fix parsing of XZ kernel.
	In case of xz, the uncompressed size is appended to xz data which confuses
	our xz decompressor. Trim it.

2017-02-07  Vladimir Serbinenko  <phcoder@gmail.com>

	xen: Fix handling of GRUB chainloading.
	In case of GRUB we put remapper after domain pages and not at 0x0.
	In this case we use max_addr to put remapper. Unfortunately we increment
	max_addr as well in this case resulting in virt mapping mapping page
	at old max_addr and trying to boot using new max_addr.

	Closes 46014.

2017-02-04  Vladimir Serbinenko  <phcoder@gmail.com>

	linguas: Don't skip ko.po.
	Translation project doesn't require copyright disclaimers. They're independant
	from us. They're responsible for their copyright story.

2017-02-03  Vladimir Serbinenko  <phcoder@gmail.com>

	Fix truncated checksum.h.

	Regenerate checksums.h
	Screenshots contain version, so we need new checksums.

	Release 2.02-rc1.

	Fix mingw compilation.

2017-02-03  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>

	documentation: Clarify documentation for special environment variable "default".
	The current documentation for the special environment variable
	"default" is confusing and unclear.  This patch attempts to clean it
	up.

	In particular, the current documentation refers to the "number or
	title", but then in the example it gives, the menu entries and
	submenus all have numbers *in* their title; furthermore, there is no
	example given about how to choose the number, or any indication about
	whether counting is zero-indexed or 1-indexed.

	Having a cleaner example and presenting all variants (numeric, title,
	and id) should make it clearer to the user.

2017-02-03  Vladimir Serbinenko  <phcoder@gmail.com>

	Avoid causing kernel oops in nilfs2 test.
	1024-byte and 2048-byte blocks don't really work with some kernels, skip
	them as we don't want any oops'es.

	btrfs: Shorten label by one character.
	mkfs.btrfs imposes a slightly lower limit than would be possible in btrfs.

2017-02-02  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-fs-tester: Fix mkudffs invocation.
	With current invocation order of arguments is wrong and path is hardcoded.

	grub-fs-tester: Fix fat test.
	mkfs.vfat ignores -S when invoked on a disk, including loopback device,
	so do an mkfs on underlying image.

2017-02-02  Daniel Kiper  <daniel.kiper@oracle.com>

	i386/relocator: Align stack in grub_relocator64_efi relocator
	Unified Extensible Firmware Interface Specification, Version 2.6,
	section 2.3.4, x64 Platforms, boot services, says among others:
	The stack must be 16-byte aligned. So, do it. Otherwise OS may
	boot only by chance as it happens right now.

2017-02-02  Vladimir Serbinenko  <phcoder@gmail.com>

	i386-ieee1275: Add missing bootcheck target.

	bootcheck-linux-i386: Use -cpu pentium2.
	Most modern kernels are compiled for i686, so use -cpu pentium2
	to avoid spurious failures.

	Use -fPIC with arm64 with clang.
	Currently it doesn't work either way but with -fPIC it should work once
	clang bug is fixed.

	INSTALL: Fix mention of thumb-clang.

	Fix thumb compilation with clang.
	According to EABI only STT_FUNC has convention of lowest bit indicating
	execution mode. R_THM_{JUMP,CALL}* relocations are assumed to be pointing
	to thumb mode unless they use STT_FUNC.

2017-02-01  Vladimir Serbinenko  <phcoder@gmail.com>

	Add missing strtoull_test.c
	It was forgotten in my local directory.

	arm64: Add support for GOT and PCREL32 relocations.

	mkimage: Fix memory leak.

	arm/arm64: Fix improper use of start address.
	It was used instead of loading address of current section or of entire buffer.

	ia64: Fix iterator for relocation entries.
	Don't assume relocation entry size and use sh_entsize properly.

	arm: Fix trampoline generation.
	We used the wrong pointer in this case. It worked only by accident.

	Fix bootcheck-related files compilation.
	We need -static as otherwise linker will set interpreter field and ld.so
	is not available on our initrd's.
	Strip all sections we don't need on binary tests.

2017-01-31  Vladimir Serbinenko  <phcoder@gmail.com>

	Regenerate checksum.h.
	Screenshots checked.
	Using unifont from http://ftp.us.debian.org/debian/pool/main/u/unifont/xfonts-unifont_7.0.06-1_all.deb.

	grub-mkfont: Remove leftover debug statement.

	charset: Trim away RLM and LRM.
	They are not visible but would otherwise end up as [LRM] or [RLM] squares
	with some fonts.

	gfxterm: Fix clearing of cursor.
	If ascent is bigger than height - 2, then we draw over character box but then
	to clear cursor we only draw over character box. So trim ascent if necessarry.

	ia64: Add support for R_IA64_GPREL64I.
	Recent GCC generates those relocations, so we need to support them.

2017-01-30  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-module-verifier: Add mips to all_video whitelist.
	On MIPS video is compiled-in. So all_video is empty. Whitelist it.

	Fix -nopie/-nopie check.
	We don't use lgcc_s but missing lgcc_s or another library cause test to fail.
	So use -nostdlib.
	We need to use -Werror to avoid warning-generated case to be accepted.
	Clang uses -nopie rather than -no-pie. Check both and use whichever one works.
	Additionally android clang passes -pie to the linker even though it doesn't
	define __PIE__. So if compilation without no-pie logic fails add -nopie/-no-pie
	even if __PIE__ is not defined.

	grub-module-verifier: Ignore all_video emptiness on xen.
	It's intentional that it's empty when no video modules
	are available.

2017-01-28  Vladimir Serbinenko  <phcoder@gmail.com>

	Support arm clang 3.8 amd later.
	clang 3.8 and later doesn't support -mllvm -use-arm-movt=0
	whereas older clang doesn't know -mno-movt. So use
	-mno-movt whenever possible and fallback to mllvm variant.

2017-01-27  Carlo Caione  <carlo@endlessm.com>

	exfat: Support files over 4GiB
	file size in grub_fat_data was 32-bit on exfat.

2017-01-27  Vladimir Serbinenko  <phcoder@gmail.com>

	Ensure that grub_reboot doesn't return on emu.
	Use grub_fatal if longjmp fails.

	grub_reboot is marked as noreturn so return would cause
	a crash.

2017-01-27  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-shell: skip font copying when no font is available.

	Don't use -mlong-calls on arm.
	We don't really need it and it's flaky and creates
	bogus symbols with clang.

	configure: Disable movw/movt with clang.
	Those relocations are not compatible with PE and also
	not compatible with custom uboot relocator.
	Disable them.

	grub-fs-tester: Delete directory once we're done.

	grub-fs-tester: Accomodate for slower systems.
	fstime can be more different with xz squashfs.
	Allow difference up to 3 seconds.
	This code is ugly now but rewriting it now is not on the
	table.

	grub-fs-tester: Accomodate for testing in proot containers.
	proot creates hidden files with .proot prefix and name
	derived from real file name. So decrease file name length
	and path depth. For some reason depth 85 also results in
	undeleteable directory, so use 84 instead of 85.

2017-01-24  Andrei Borzenkov  <arvidjaar@gmail.com>

	osdep/linux: handle autofs entries in /proc/self/mountinfo
	These entries have placeholder for device name and so are useless for our
	purpose. grub failed with something like

	grub-install: error: failed to get canonical path of `systemd-1'.

	When we see autofs entry, record it (to keep parent-child relationship) but
	continue to look for real mount. If it is found, we process it as usual. If
	only autofs entry exists, attempt to trigger mount by opening mount point
	and retry. Mount point itself is then kept open to avoid timeout.

	Recent systemd is by default using automount for /boot/efi so this should
	become more popular problem on EFI systems.

	Closes: 49942

2017-01-08  Andrei Borzenkov  <arvidjaar@gmail.com>

	linux: fix "vga=XX deprecated" warning for text mode
	Arguments were in reverse order which resulted in

	text is deprecated. Use set gfxpayload=vga=0 before linux command instead.

2016-12-22  Andrei Borzenkov  <arvidjaar@gmail.com>

	configure: fix check for sys/sysmacros.h under glibc 2.25+
	glibc 2.25 still includes sys/sysmacros.h in sys/types.h but also emits
	deprecation warning. So test for sys/types.h succeeds in configure but later
	compilation fails because we use -Werror by default.

	While this is fixed in current autoconf GIT, we really cannot force everyone
	to use bleeding edge (that is not even released right now). So run test under
	-Werror as well to force proper detection.

	This should have no impact on autoconf 2.70+ as AC_HEADER_MAJOR in this version
	simply checks for header existence.

	Reported and tested by Khem Raj <raj.khem@gmail.com>

2016-12-22  Michael Chang  <mchang@suse.com>

	Fix fwpath in efi netboot
	The path returned by grub_efi_net_config has already been stripped for the
	directory part extracted from cached bootp packet. We should just return the
	result to avoild it be stripped again.

	It fixed the problem that grub.efi as NBP image always looking for grub.cfg and
	platform directory in upper folder rather than current one it gets loaded while
	$prefix is empty. The behavior is inconsistent with other architecture and how
	we would expect empty $prefix going to be in general.

	The only exception to the general rule of empty $prefix is that when loaded
	from platform directory itself, the platform part is stripped thus upper folder
	is used for looking up files. It meets the case for how grub-mknetdir lay out
	the files under tftp root directory, but also hide away this issue to be
	identified as it appears to be just works.

	Also fix possible memory leak by moving grub_efi_get_filename() call after
	grub_efi_net_config().

2016-12-15  Andrei Borzenkov  <arvidjaar@gmail.com>

	efi: properly terminate filepath with NULL in chainloader
	EFI File Path Media Device Path is defined as NULL terminated string;
	but chainloader built file paths without final NULL. This caused error
	with Secure Boot and Linux Foundation PreLoader on Acer with InsydeH20 BIOS.
	Apparently firmware failed verification with EFI_INVALID_PARAMETER which is
	considered fatal error by PreLoader.

	Reported and tested by Giovanni Santini <itachi.sama.amaterasu@gmail.com>

2016-12-14  Magnus Granberg  <zorry@gentoo.org>

	configure: add check for -no-pie if the compiler default to -fPIE
	When Grub is compile with gcc 6.1 that have --enable-defult-pie set.
	It fail with.
	-ffreestanding   -m32 -Wl,-melf_i386 -Wl,--build-id=none  -nostdlib -Wl,-N -Wl,-r,-d   -
	o trig.module  trig_module-trigtables.o
	grep 'MARKER' gcry_whirlpool.marker.new > gcry_whirlpool.marker; rm -f
	gcry_whirlpool.marker.new
	/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: -r and -
	shared may not be used together
	collect2: error: ld returned 1 exit status
	Makefile:26993: recipe for target 'trig.module' failed

	Check that compiler supports -no-pie and add it to linker flags.

2016-12-14  Stanislav Kholmanskikh  <stanislav.kholmanskikh@oracle.com>

	ofnet: implement the receive buffer
	get_card_packet() from ofnet.c allocates a netbuff based on the device's MTU:

	 nb = grub_netbuff_alloc (dev->mtu + 64 + 2);

	In the case when the MTU is large, and the received packet is
	relatively small, this leads to allocation of significantly more memory,
	than it's required. An example could be transmission of TFTP packets
	with 0x400 blksize via a network card with 0x10000 MTU.

	This patch implements a per-card receive buffer in a way similar to efinet.c,
	and makes get_card_packet() allocate a netbuff of the received data size.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-12-14  Stanislav Kholmanskikh  <stanislav.kholmanskikh@oracle.com>

	ofnet: move the allocation of the transmit buffer into a function
	In the current code search_net_devices() uses the "alloc-mem" command
	from the IEEE1275 User Interface for allocation of the transmit buffer
	for the case when GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN is set.

	I don't have hardware where this flag is set to verify if this
	workaround is still needed. However, further changes to ofnet will
	require to execute this workaround one more time. Therefore, to
	avoid possible duplication of code I'm moving this piece of
	code into a function.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-11-24  Alexander Graf  <agraf@suse.de>

	efi: Move fdt helper into own file
	We only support FDT files with EFI on arm and arm64 systems, not
	on x86. So move the helper that finds a prepopulated FDT UUID
	into its own file and only build it for architectures where it
	also gets called.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-11-22  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS updates

2016-11-22  Andrei Borzenkov  <arvidjaar@gmail.com>

	bootp: export next server IP as environment variable
	Network boot autoconfiguration sets default server to next server IP
	(siaddr) from BOOTP/DHCP reply, but manual configuration using net_bootp
	exports only server name. Unfortunately semantic of server name is not
	clearly defined. BOOTP RFC 951 defines it only for client request, and
	DHCP RFC 1541 only mentions it, without any implied usage. It looks like
	this field is mostly empty in server replies.

	Export next server IP as net_<interface>_next_server variable. This allows
	grub configuration script to set $root/$prefix based on information obtained
	by net_bootp.

	Reported and tested by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
	Cc: nikunj@linux.vnet.ibm.com

	v2: change variable name to net_<interface>_next_server as discussed on the list

2016-11-22  Aaro Koskinen  <aaro.koskinen@iki.fi>

	configure.ac: don't require build time grub-mkfont on powerpc-ieee1275
	Don't require build time grub-mkfont on powerpc-ieee1275.

2016-11-14  Dirk Mueller  <dmueller@suse.com>

	grub-mknetdir: Add support for ARM64 EFI

2016-11-12  Joonas Lahtinen  <joonas.lahtinen@linux.intel.com>

	.gitignore: Add grub-core/build-grub-module-verifier

2016-11-10  Alexander Graf  <agraf@suse.de>

	arm efi: Use fdt from firmware when available
	If EFI is nice enough to pass us an FDT using configuration tables on 32bit
	ARM, we should really try and make use of it.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-11-10  Alexander Graf  <agraf@suse.de>

	arm64: Move firmware fdt search into global function
	Searching for a device tree that EFI passes to us via configuration tables
	is nothing architecture specific. Move it into generic code.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-11-05  Corey Hickey  <bugfood-ml@fatooh.org>

	fix detection of non-LUKS CRYPT
	grub_util_get_dm_abstraction() does a string comparison of insufficient
	length. When using a UUID such as "CRYPT-PLAIN-sda6_crypt", the function
	returns GRUB_DEV_ABSTRACTION_LUKS.

	This results in the error:
	    ./grub-probe: error: disk `cryptouuid/sda6_crypt' not found.

	This appears to be a copy/paste error introduced in:
	a10e7a5a8918bea6e2632055129fa9b516fe965a

	The bug was (apparently) latent until revealed by:
	3bca85b4184f74995a7cc2791e432173fde26d34

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: add capability to load p2m list outside of kernel mapping
	Modern pvops linux kernels support a p2m list not covered by the
	kernel mapping. This capability is flagged by an elf-note specifying
	the virtual address the kernel is expecting the p2m list to be mapped
	to.

	In case the elf-note is set by the kernel don't place the p2m list
	into the kernel mapping, but map it to the given address. This will
	allow to support domains with larger memory, as the kernel mapping is
	limited to 2GB and a domain with huge memory in the TB range will have
	a p2m list larger than this.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: modify page table construction
	Modify the page table construction to allow multiple virtual regions
	to be mapped. This is done as preparation for removing the p2m list
	from the initial kernel mapping in order to support huge pv domains.

	This allows a cleaner approach for mapping the relocator page by
	using this capability.

	The interface to the assembler level of the relocator has to be changed
	in order to be able to process multiple page table areas.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: add capability to load initrd outside of initial mapping
	Modern pvops linux kernels support an initrd not covered by the initial
	mapping. This capability is flagged by an elf-note.

	In case the elf-note is set by the kernel don't place the initrd into
	the initial mapping. This will allow to load larger initrds and/or
	support domains with larger memory, as the initial mapping is limited
	to 2GB and it is containing the p2m list.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: factor out allocation of page tables into separate function
	Do the allocation of page tables in a separate function. This will
	allow to do the allocation at different times of the boot preparations
	depending on the features the kernel is supporting.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: factor out allocation of special pages into separate function
	Do the allocation of special pages (start info, console and xenbus
	ring buffers) in a separate function. This will allow to do the
	allocation at different times of the boot preparations depending on
	the features the kernel is supporting.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: factor out p2m list allocation into separate function
	Do the p2m list allocation of the to be loaded kernel in a separate
	function. This will allow doing the p2m list allocation at different
	times of the boot preparations depending on the features the kernel
	is supporting.

	While at this remove superfluous setting of first_p2m_pfn and
	nr_p2m_frames as those are needed only in case of the p2m list not
	being mapped by the initial kernel mapping.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: synchronize xen header
	Get actual version of include/xen/xen.h from the Xen repository in
	order to be able to use constants defined there.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: add elfnote.h to avoid using numbers instead of constants
	Various features and parameters of a pv-kernel are specified via
	elf notes in the kernel image. Those notes are part of the interface
	between the Xen hypervisor and the kernel.

	Instead of using num,bers in the code when interpreting the elf notes
	make use of the header supplied by Xen for that purpose.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: reduce number of global variables in xen loader
	The loader for xen paravirtualized environment is using lots of global
	variables. Reduce the number by making them either local or by putting
	them into a single state structure.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: avoid memleaks on error
	When loading a Xen pv-kernel avoid memory leaks in case of errors.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Juergen Gross  <jgross@suse.com>

	xen: make xen loader callable multiple times
	The loader for xen paravirtualized environment isn't callable multiple
	times as it won't free any memory in case of failure.

	Call grub_relocator_unload() as other modules do it before allocating
	a new relocator or when unloading the module.

	Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>

2016-10-27  Daniel Kiper  <daniel.kiper@oracle.com>

	multiboot2: Add support for relocatable images
	Currently multiboot2 protocol loads image exactly at address specified in
	ELF or multiboot2 header. This solution works quite well on legacy BIOS
	platforms. It is possible because memory regions are placed at predictable
	addresses (though I was not able to find any spec which says that it is
	strong requirement, so, it looks that it is just a goodwill of hardware
	designers). However, EFI platforms are more volatile. Even if required
	memory regions live at specific addresses then they are sometimes simply
	not free (e.g. used by boot/runtime services on Dell PowerEdge R820 and
	OVMF). This means that you are not able to just set up final image
	destination on build time. You have to provide method to relocate image
	contents to real load address which is usually different than load address
	specified in ELF and multiboot2 headers.

	This patch provides all needed machinery to do self relocation in image code.
	First of all GRUB2 reads min_addr (min. load addr), max_addr (max. load addr),
	align (required image alignment), preference (it says which memory regions are
	preferred by image, e.g. none, low, high) from multiboot_header_tag_relocatable
	header tag contained in binary (at this stage load addresses from multiboot2
	and/or ELF headers are ignored). Later loader tries to fulfill request (not only
	that one) and if it succeeds then it informs image about real load address via
	multiboot_tag_load_base_addr tag. At this stage GRUB2 role is finished. Starting
	from now executable must cope with relocations itself using whole static and
	dynamic knowledge provided by boot loader.

	This patch does not provide functionality which could do relocations using
	ELF relocation data. However, I was asked by Konrad Rzeszutek Wilk and Vladimir
	'phcoder' Serbinenko to investigate that thing. It looks that relevant machinery
	could be added to existing code (including this patch) without huge effort.
	Additionally, ELF relocation could live in parallel with self relocation provided
	by this patch. However, during research I realized that first of all we should
	establish the details how ELF relocatable image should look like and how it should
	be build. At least to build proper test/example files.

	So, this patch just provides support for self relocatable images. If ELF file
	with relocs is loaded then GRUB2 complains loudly and ignores it. Support for
	such files will be added later.

	This patch was tested with Xen image which uses that functionality. However, this Xen
	feature is still under development and new patchset will be released in about 2-3 weeks.

	Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>

2016-10-27  Daniel Kiper  <daniel.kiper@oracle.com>

	multiboot2: Do not pass memory maps to image if EFI boot services are enabled
	If image requested EFI boot services then skip multiboot2 memory maps.
	Main reason for not providing maps is because they will likely be
	invalid. We do a few allocations after filling them, e.g. for relocator
	needs. Usually we do not care as we would have finished boot services.
	If we keep boot services then it is easier/safer to not provide maps.
	However, if image needs memory maps and they are not provided by bootloader
	then it should get itself just before ExitBootServices() call.

	Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
	Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>

2016-10-27  Daniel Kiper  <daniel.kiper@oracle.com>

	multiboot2: Add tags used to pass ImageHandle to loaded image
	Add tags used to pass ImageHandle to loaded image if requested.
	It is used by at least ExitBootServices() function.

	Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
	Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>

2016-10-27  Daniel Kiper  <daniel.kiper@oracle.com>

	i386/relocator: Add grub_relocator64_efi relocator
	Add grub_relocator64_efi relocator. It will be used on EFI 64-bit platforms
	when multiboot2 compatible image requests MULTIBOOT_TAG_TYPE_EFI_BS. Relocator
	will set lower parts of %rax and %rbx accordingly to multiboot2 specification.
	On the other hand processor mode, just before jumping into loaded image, will
	be set accordingly to Unified Extensible Firmware Interface Specification,
	Version 2.4 Errata B, section 2.3.4, x64 Platforms, boot services. This way
	loaded image will be able to use EFI boot services without any issues.

	Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
	Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>

2016-10-18  Sakar Arora  <Sakar.Arora@nxp.com>

	net/ip: Fix limit_time calculation in freeing old fragments
	limit_time underflows when current time is less than 90000ms.
	This causes packet fragments received during this time, i.e.,
	till 90000ms pass since timer init, to be rejected.

	Hence, set it to 0 if its less than 90000.

2016-09-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	asm-tests/i386-pc: Check that movl is 5 bytes.
	LLVM 3.9 now emits short form of jump instructions, but it is still using
	32 bit addresses for some movl instructions. Fortunately it was caught early:

	clang ... boot/i386/pc/boot.S
	clang -cc1as: fatal error: error in backend: invalid .org offset '440' (at offset '441')

	Add additional check to catch it during configure run and force -no-integrated-as.

	Closes: 49200

	More details in
	  https://lists.gnu.org/archive/html/grub-devel/2015-02/msg00099.html
	  https://llvm.org/bugs/show_bug.cgi?id=22662

2016-08-13  Pete Batard  <pete@akeo.ie>

	Add missing va_end() to xasprintf() in grub-emu.

2016-07-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	at_keyboard: fix numpad "0" and "." mapping
	Reported for set 1 by fgndevelop <fgndevelop@posteo.org>. Apparently
	set 2 was reversed too.

2016-07-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	dns: fix buffer overflow for data->addresses in recv_hook
	We may get more than one response before exiting out of loop in
	grub_net_dns_lookup, but buffer was allocated for the first response only,
	so storing answers from subsequent replies wrote past allocated size.
	We never really use more than the very first address during lookup so there
	is little point in collecting all of them. Just quit early if we already have
	some reply.

	Code needs serious redesign to actually collect multiple answers
	and select the best fit according to requested type (IPv4 or IPv6).

	Reported and tested by Michael Chang <mchang@suse.com>

2016-07-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	xfs: accept filesystem with meta_uuid
	XFS V5 stores UUID in metadata and compares them with superblock UUID.
	To allow changing of user-visible UUID it stores original value in new
	superblock field (meta_uuid) and sets incompatible flag to indicate that
	new field must be used to verify metadata. Our driver currently does not
	check metadata UUID so simply accept such filesystem.

	Reported-By: Marcos Mello <marcosfrm@outlook.com>
	Reviewd by Jan Kara <jack@suse.cz>

2016-05-03  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: translate pxe prefix to tftp when checking for self-load
	Commit ba218c1 missed legacy pxe and pxe: prefixes which are
	translated to tftp, so comparison failed.

2016-04-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: reset net->stall in grub_net_seek_real
	If we open new connection, we need to reset stall indication, otherwise
	nothing will ever be polled (low level code rely on this field being
	zero when establishing connection).

2016-04-30  Stefan Fritsch  <sf@sfritsch.de>

	http: reset EOF indication in http_seek
	Otherwise next read will stop polling too early due to stale EOF
	indicator, returning incomplete data to caller.

2016-04-24  Mike Gilbert  <floppym@gentoo.org>

	build: Use AC_HEADER_MAJOR to find device macros
	Depending on the OS/libc, device macros are defined in different
	headers. This change ensures we include the right one.

	sys/types.h - BSD
	sys/mkdev.h - Sun
	sys/sysmacros.h - glibc (Linux)

	glibc currently pulls sys/sysmacros.h into sys/types.h, but this may
	change in a future release.

	https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html

2016-04-09  Michael Chang  <mchang@suse.com>

	http: fix superfluous null line in range request header
	At least the apache sever is very unhappy with that extra null line and will
	take more than ten seconds in responding to each range request, which slows
	down a lot the entire http file transfer process or even time out.

2016-03-22  Andrei Borzenkov  <arvidjaar@gmail.com>

	configure: set -fno-pie together with -fno-PIE
	OpenBSD 5.9 apparently defaults to -fpie. We use -fno-PIE when appropriate
	already, but that is not enough - it does not turn off -fpie.

	Actually check for -fPIE is not precise enough. __PIE__ is set for both
	-fpie and -fPIE but with different values. As far as I can tell, both
	options were introduced at the same time, so both should always be supported.

	This fixes compilation on OpenBSD 5.9 which otherwise created insanely big
	lzma_decompress.img.

	Reported, suggested and tested by: Jiri B <jirib@devio.us>

2016-03-20  Andrei Borzenkov  <arvidjaar@gmail.com>

	bootp: check that interface is not NULL in configure_by_dhcp_ack
	grub_net_add_addr may fail with OOM and we use returned interface
	later without any checks.

2016-03-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	bootp: fix memory leak in grub_cmd_dhcpopt

2016-03-15  Aaron Luft  <aluft@lifesize.com>

	Remove the variable oldname which is attempting to free stack space.
	Historically this variable hold previous value of filename that
	had to be freed if allocated previously. Currently this branch
	is entered only if filename was not allocated previously so it
	became redundant. It did not cause real problems because grub_free
	was not called, but code is confusing and causes compilation error
	in some cases.

2016-03-13  Andrei Borzenkov  <arvidjaar@gmail.com>

	Makefile.util.def: add $LIBINTL to grub-macbless flags
	Fixes compilation on OpenBSD 5.9.

	Reported by Jiri B <jirib@devio.us>

2016-03-11  Robert Marshall  <rmarshall@redhat.com>

	Failed config now returns exit code (#1252311)
	Grub would notify the user if the new config was invalid, however, it
	did not exit properly with exit code 1. Added the proper exit code.

	Resolves: rhbz#1252311

2016-03-11  Michael Chang  <mchang@suse.com>

	xen_file: Fix invalid payload size

2016-03-10  Vladimir Serbinenko  <phcoder@gmail.com>

	multiboot2: Remove useless GRUB_PACKED
	Reported by: Daniel Kiper

2016-03-06  Andrei Borzenkov  <arvidjaar@gmail.com>

	20_linux_xen: fix test for GRUB_DEVICE
	Same fix as in 082bc9f.

2016-03-06  Mike Gilbert  <floppym@gentoo.org>

	10_linux: Fix grouping of tests for GRUB_DEVICE
	Commit 7290bb562 causes GRUB_DISABLE_LINUX_UUID to be ignored due to
	mixing of || and && operators. Add some parens to help with that.

2016-02-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS update

2016-02-28  Vladimir Serbinenko  <phcoder@gmail.com>

	Release 2.02~beta3

	grub_arch_sync_dma_caches: Accept volatile address

2016-02-27  Leif Lindholm  <leif.lindholm@linaro.org>

	efidisk: Respect block_io_protocol buffer alignment
	Returned from the OpenProtocol operation, the grub_efi_block_io_media
	structure contains the io_align field, specifying the minimum alignment
	required for buffers used in any data transfers with the device.

	Make grub_efidisk_readwrite() allocate a temporary buffer, aligned to
	this boundary, if the buffer passed to it does not already meet the
	requirements.

	Also sanity check the io_align field in grub_efidisk_open() for
	power-of-two-ness and bail if invalid.

2016-02-27  Vladimir Serbinenko  <phcoder@gmail.com>

	usbtrans: Fix memory coherence and use-after-free.

	ehci: Fix memory coherence
	This is a no-op on x86 but necessarry on ARM and may be necessarry on MIPS.

	arm-uboot: Make self-relocatable to allow loading at any address

	Allow _start == 0 with relocatable images

2016-02-27  Vladimir Serbinenko  <phcoder@gmail.com>

	Provide __bss_start and _end symbols in grub-mkimage.
	For this ensure that all bss sections are merged.

	We need this to correctly prelink non-PE relocatable images.

2016-02-27  Vladimir Serbinenko  <phcoder@gmail.com>

	Encapsulate image layout into a separate structure.
	Currently we pass around a lot of pointer. Instead put all relevant data
	into one structure.

	mkimagexx: Split PE and generic part for relocations.
	As a preparation for U-Boot relocations, split emitting PE-relocations
	from parsing source ELF-relocations.

	mkimage.c: Split into separate files.
	util/grub-mkimagexx.c is included in a special way into mkimage.c.
	Interoperation between defines makes this very tricky. Instead
	just have a clean interface and compile util/grub-mkimage*.c separately
	from mkimage.c

	bsd: Ensure that kernel is loaded before loading module.
	kernel_type may be set to the type of failed kernel. This patching-up is
	easier than to reflow kernel loading routines.

	cat: Don't switch terminal mode when there is nothing to highlight.
	This just pollutes serial console.

	Use console rather than serial_efi0 on arm64-efi in tests

2016-02-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	efidisk: fix misplaced parenthesis in b00e4c2

2016-02-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	efidisk: prevent errors from diskfilter scan of removable drives
	Map EFI_NO_MEDIA to GRUB_ERR_OUT_OF_RANGE that is ignored by diskfilter. This
	actually matches pretty close (we obviously attempt to read outside of media)
	and avoids adding more error codes.

	This affects only internally initiated scans. If read/write from removable is
	explicitly requested, we still return an error and text explanation is more
	clear for user than generic error.

	Reported and tested by Andreas Loew <Andreas.Loew@gmx.net>

2016-02-26  Vladimir Serbinenko  <phcoder@gmail.com>

	Regenerate checksums

	Makefile: Don't delete default_payload.elf if it doesn't exist.

2016-02-25  Josef Bacik  <jbacik@fb.com>

	net: fix ipv6 routing
	ipv6 routing in grub2 is broken, we cannot talk to anything outside our local
	network or anything that doesn't route in our global namespace.  This patch
	fixes this by doing a couple of things

	1) Read the router information off of the router advertisement.  If we have a
	router lifetime we need to take the source address and create a route from it.

	2) Changes the routing stuff slightly to allow you to specify a gateway _and_ an
	interface.  Since the router advertisements come in on the link local address we
	need to associate it with the global address on the card.  So when we are
	processing the router advertisement, either use the SLAAC interface we create
	and add the route to that interface, or loop through the global addresses we
	currently have on our interface and associate it with one of those addresses.
	We need to have a special case here for the default route so that it gets used,
	we do this by setting the masksize to 0 to mean it encompasses all networks.
	The routing code will automatically select the best route so if there is a
	closer match we will use that.

	With this patch I can now talk to ipv6 addresses outside of my local network.
	Thanks,

2016-02-24  Vladimir Serbinenko  <phcoder@gmail.com>

	ieee1275: fix signed comparison

2016-02-23  Andrei Borzenkov  <arvidjaar@gmail.com>

	search: actually skip floppy with --no-floppy
	grub_device_iterate() ignores device when iterator returns 1, not 0.

	Reported by Carlos E. R. <robin.listas@telefonica.net>

2016-02-23  Andrei Borzenkov  <arvidjaar@gmail.com>

	multiboot2: zero reserved field in memory map
	Documentation says, bootloader should set reserved field to zero.

	Reported by Wink Saville <wink@saville.com>

2016-02-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Improve EHCI logging
	Add dprintf's on common error paths and remove some entries which are too
	noisy.

	usb_keyboard: Remove useless include
	This prevents non-PCI machines from having USB.

	Refresh before abort
	This ensures that abort message is actually visible to the user.

2016-02-22  Eric Snowberg  <eric.snowberg@oracle.com>

	ieee1275: prevent buffer over-read
	Prevent buffer over-read in grub_machine_mmap_iterate. This was
	causing phys_base from being calculated properly. This then
	caused the wrong value to be placed in ramdisk_image within
	struct linux_hdrs. Which prevented the ramdisk from loading on
	boot.

	Newer SPARC systems contain more than 8 available memory entries.

	For example on a T5-8 with 2TB of memory, the memory layout could
	look like this:

	T5-8 Memory
	reg                      00000000 30000000 0000003f b0000000
	                         00000800 00000000 00000040 00000000
	                         00001000 00000000 00000040 00000000
	                         00001800 00000000 00000040 00000000
	                         00002000 00000000 00000040 00000000
	                         00002800 00000000 00000040 00000000
	                         00003000 00000000 00000040 00000000
	                         00003800 00000000 00000040 00000000
	available                00003800 00000000 0000003f ffcae000
	                         00003000 00000000 00000040 00000000
	                         00002800 00000000 00000040 00000000
	                         00002000 00000000 00000040 00000000
	                         00001800 00000000 00000040 00000000
	                         00001000 00000000 00000040 00000000
	                         00000800 00000000 00000040 00000000
	                         00000000 70000000 0000003f 70000000
	                         00000000 6eef8000 00000000 00002000
	                         00000000 30400000 00000000 3eaf6000
	name                     memory

2016-02-22  Thomas Huth  <thuth@redhat.com>

	menu_entry: Disable cursor during update_screen()
	When running grub in a VGA console of a KVM pseries guest on PowerPC,
	you can see the cursor sweeping over the whole line when entering a
	character in editor mode. This is visible because grub always refreshes
	the whole line when entering a character in editor mode, and drawing
	characters is quite a slow operation with the firmware used for the
	powerpc pseries guests (SLOF).
	To avoid this ugliness, the cursor should be disabled when refreshing
	the screen contents during update_screen().

2016-02-17  Vladimir Serbinenko  <phcoder@gmail.com>

	default_payload.elf: Always rebuild and remove before build.
	It's difficult to know all dependencies. Since it's manual and cheap
	target anyway, simply always rebuild it.

	default_payload.elf: Include password_pbkdf2.
	Withoout this module we may end up in a system where no password is
	accepted.

	default_payload.elf: Add modules from $(EXTRA_PAYLOAD_MODULES).
	This allows coreboot building system to add extra modules depending
	on user config.

	mm: Avoid integer overflow.

	Remove -Wno-maybe-uninitialized as it may not be present.

	Fix warnings when compiling with -O3

2016-02-14  Vladimir Serbinenko  <phcoder@gmail.com>

	Add wbinvd around bios call.
	Via C3 has problems with cache coherency when transitioning between the modes,
	so flush it around bios calls.

2016-02-12  Eric Snowberg  <eric.snowberg@oracle.com>

	OBP available region contains grub. Start at grub_phys_end.
	This prevents a problem where grub was being overwritten since
	grub_phys_start does not start at a zero offset within the memory
	map.

2016-02-12  Andreas Freimuth  <andreas_freimuth@web.de>

	Add Thinkpad T410s button cmos address.

2016-02-12  Vladimir Serbinenko  <phcoder@gmail.com>

	TODO: Remove obsolete link

2016-02-12  Toomas Soome  <tsoome@me.com>

	lz4: Fix pointer overflow

2016-02-12  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-shell: Update 32-bit OVMF binary name.

2016-02-12  Daniel Kiper  <daniel.kiper@oracle.com>

	relocator: Fix integer underflow.

2016-02-12  Vladimir Serbinenko  <phcoder@gmail.com>

	Change -v to -V for version of shell utils.

	xnu: Add new kernel path to autoconfig.

	arm64: Use cpu timer for timekeeping.

	powerpc: Trim header in tests.

	default_payload: Include syslinuxcfg, all filesystems and xnu.

	xnu: Supply random seed.
	Now we're able to load kernels up to El Capitan.

	Add RNG module.

	yylex: use grub_fatal for exit.
	lexer calls yylex_fatal on fatal internal errors. yylex_fatal itself is
	declared as noreturn and calls exit. Returning from noreturn function has
	unpredictable consequences.

	printf: Fix and test %% behaviour in presence of subsequenbt args.

	Split pmtimer wait and tsc measurement from pmtimer tsc calibration.

	Make grub_cpu_is_tsc_supported generally available.

	Make grub_acpi_find_fadt accessible generically

	Make unaligned types public.
	This simplifies code which has to handle those types.

	Fix emu compilation error on arm.

2016-02-11  Vladimir Serbinenko  <phcoder@gmail.com>

	xnu: Include relocated EFI in heap size.

	xnu: supply ramsize to the kernel.
	Without this info recent kernels crash as they allocate no heap.

2016-02-03  Andrei Borzenkov  <arvidjaar@gmail.com>

	support modules without symbol table
	all_video module does not have any code or data and exists solely for
	.moddeps section to pull in dependencies. This makes all symbols unneeded.

	While in current binutils (last released version as of this commit is 2.26)
	``strip --strip-unneeded'' unintentionally adds section symbols for each
	existing section, this behavior was considered a bug and changed in commit
	14f2c699ddca1e2f706342dffc59a6c7e23e844c to completely strip symbol table
	in this case.

	Older binutils (verified with 2.17) and some other toolchains (at least
	elftoolchain r3223M), both used in FreeBSD, remove symbol table in all_video
	as well.

	Relax run-time check and do not return error for modules without symbol table.
	Add additional checks to module verifier to make sure such modules

	a) have non-empty .moddeps section. Without either externally visible symbols
	or .moddeps modules are completely useless and should not be built.

	b) do not have any relocations.

	Closes: 46986

	v2: add run-time check for empty symbol table if relocations are present as
	    suggested by Vladimir.

2016-02-01  Andrei Borzenkov  <arvidjaar@gmail.com>

	10_linux: avoid multi-device root= kernel argument
	If root filesystem is multidev btrfs, do not attempt to pass all devices as
	kernel root= argument. This results in splitting command line in GRUB due to
	embedded newline and even if we managed to quote it, kernel does not know how
	to interpret it anyway. Multidev btrfs requires user space device scanning,
	so passing single device would not work too.

	This still respects user settings GRUB_DISABLE_LINUX_UUID. Not sure what we
	should do in this case.

	Closes: 45709

2016-01-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Error out if mtools invocation fails.

	arm64: Add support for relocations needed for linaro gcc

	efiemu: Fix compilation failure

	Document cpuid -p

2016-01-22  Robert Elliott  <elliott@hpe.com>

	efiemu: Handle persistent RAM and unknown possible future additions.

2016-01-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Document expr1 expr2 syntax for test command

2016-01-22  Michael Chang  <mchang@suse.com>

	Restore terminal settings on grub-emu exit.

2016-01-22  Vladimir Serbinenko  <phcoder@gmail.com>

	xen_boot: Remove obsolete module type distinctions.

	arm: Ignore qemu clock bug

	i386-ieee1275: Increase maximum heap size to accomodate highres graphi tests

2016-01-20  Colin Watson  <cjwatson@ubuntu.com>

	Remove pragmas related to -Wunreachable-code
	-Wunreachable-code has been a no-op since GCC 4.5; GRUB hasn't been
	compiled with it since 2012; and GCC 6 produces "error:
	'-Wunreachable-code' is not an option that controls warnings" for these.

	Fixes Debian bug #812047.

2016-01-16  Colin Watson  <cjwatson@ubuntu.com>

	loader/bsd: Fix signed/unsigned comparison

	ahci, ehci: Fix typos

2016-01-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-probe: fix memory leak
	Found by: Coverity scan.
	CID: 73783

2016-01-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	tftp: fix memory leaks in open
	If protocol open fails, file is immediately freed, so data was leaked.

	Found by: Coverity scan.
	CID: 96659

2016-01-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	tcp: fix memory leaks
	Found by: Coverity scan.
	CID: 96639, 96647

	net: fix memory leaks
	Found by: Coverity scan.
	CID: 96638, 96648

	legacycfg: fix memory leaks and add NULL check
	Memory leaks found by Coverity scan.
	CID: 96642, 96645

2016-01-15  Andrei Borzenkov  <arvidjaar@gmail.com>

	loader: Unintended sign extension
	CID: 96707, 96699, 96693, 96691, 96711, 96709, 96708, 96703, 96702,
	96700, 96698, 96696, 96695, 96692, 96710, 96705

2016-01-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	script: fix memory leak
	Found by: Coverity scan.
	CID: 96637

	normal: fix memory leak
	Found by: Coverity scan.
	CID: 96641, 96670, 96667

	xnu: fix memory leak
	Found by: Coverity scan.
	CID: 96663

	truecrypt: fix memory leak
	Found by: Coverity scan.
	CID: 156611

	gfxmenu: fix memory leak
	Found by: Coverity scan.
	CID: 96657

	efiemu: fix memory leak
	Found by: Coverity scan.
	CID: 156610

	efidisk: fix memory leak
	Found by: Coverity scan.
	CID: 96644

	verify: fix memory leak
	Found by: Coverity scan.
	CID: 96643

	password_pbkdf2: fix memory leak
	Found by: Coverity scan.
	CID: 96656

	parttool: fix memory leak
	Found by: Coverity scan.
	CID: 96652

2016-01-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	nativedisk: fix memory leak
	Based on Coverity scan.
	CID: 96660

	Extended to also cover other error return places.

2016-01-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	acpi: fix memory leak
	Found by: Coverity scan.
	CID: 96673

2016-01-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-install: include ehci in list of native modules
	This matches behavior of "nativedisk" command.

	Reported and tested by Smith Henry <sh37092@gmail.com>

2016-01-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-mkimage: remove redundant NULL check
	Found by: Coverity scan.
	CID: 73737

2016-01-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: remove dead and redundant code
	server cannot be NULL at this point (we return error earlier if it is).
	Also structure is zalloc'ed, so no need to explicitly initialize
	members to 0.

	Found by: Coverity scan.
	CID: 73837

2016-01-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	hostdisk: fix device detection
	Condition was apparently reversed so GRUB assumed all devices were
	files. This later made it skip BLKFLSBUF ioctl on Linux which caused
	various page cache coherency issues. Observed were

	- failure to validate blocklist install (read content did not match
	  just written)

	- failure to detect Linux MD on disk after online hot addition
	  (GRUB got stale superblock)

	Closes: 46691

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	setup: fix NULL pointer dereference
	Check return value of grub_guess_root_devices

	Found by: Coverity scan.
	CID: 73638, 73751

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	mkimage: fix unintended sign extension
	Found by: Coverity scan.
	CID: 73691, 73717

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	util/getroot: delete dead code
	is_part cannot be non-zero at this point.

	Found by: Coveruty scan.
	CID: 73838

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	loader/multiboot: fix unintended sign extension
	Found by: Coveruty scan.
	CID: 73700, 73763

	kern/elf: fix unintended sign extension
	Found by: Coverity scan.
	CID: 73729, 73735, 73758, 73760

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	xfs: fix possible inode corruption in directory scan
	grub_xfs_iterate_dir did not restore first character after inline
	name when match was found. Dependning on XFS format this character
	could be inode number and we could return to the same node later in
	find_file if processing cycled symlinks.

	CID: 86724

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	rescue_parser: restructure code to avoid Coverity false positive
	If line contains single word, line and argv[0] are aliases, so
	no NULL dereference is possible, but Coverity does not know it.
	Change code to avoid ambiguity and also remove redundant call to
	grub_strchr.

	CID: 86725

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-mklayout: check subscript bounds
	Found by: Coverity scan.
	CID: 73686

	grub-probe: fix memory leak
	Found by: Coverity scan.
	CID: 73783

	gfxmenu: fix memory leak
	Found by: Coverity scan.
	CID: 73766

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	util/setup: fix grub_util_path_list leak
	Add helper grub_util_free_path_list and use it where appropriate.

	Found by: Coverity scan.
	CID: 73727

2016-01-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	setup: fix memory leak
	Found by: Coverity scan.
	CID: 73680, 73715

	efiemu: check return value of grub_efiemu_write_value
	Found by: Coverity scan.
	CID: 73590

	efiemu: change code to avoid Coverity false positive
	CID: 73623

	efiemu: fix unintended sign extension
	Found by: Coverity scan.
	CID: 73883, 73637

	hfs: fix memory leak
	Found by: Coverity scan.
	CID: 156531

	grub-module-verifier: fix unintended sign extension
	Found by: Coverity scan.
	CID: 156533, 156532

2016-01-08  Vladimir Serbinenko  <phcoder@gmail.com>

	Tests: Support arm-efi

2016-01-07  Vladimir Serbinenko  <phcoder@gmail.com>

	arm64/setjmp: Add missing move for arg1 == 0 case.

	grub-shell: Support arm64-efi

2016-01-07  Mark Salter  <msalter@redhat.com>

	arm-efi: Reduce timer event frequency by 10
	Timer event to keep grub msec counter was running at 1000HZ. This was too
	fast for UEFI timer driver and resulted in a 10x slowdown in grub time
	versus wallclock. Reduce the timer event frequency and increase tick
	increment accordingly to keep better time.

2016-01-07  Vladimir Serbinenko  <phcoder@gmail.com>

	x86_64-efi: Automatically add -bios OVMF.fd to qemu in tests.

	Allow GRUB_QEMU_OPTS to override machine.

	arm64: Disable tests that need native drivers.

	Disable NetBSD bootcheck on EFI until it supports ACPI on EFI.

	grub-shell: Use new cbfstool syntax.

	grub-shell: On i386-ieee1275 don't try to switch to console.
	console goes to serial as well, so this doesn't stop garbage from going
	to serial. But it creates garbage itself.

	hddboot_test: reenable on OVMF
	OVMF now supports booting from disks.

	iee1275/datetime: Fix off-by-1 error.

2016-01-07  Vladimir Serbinenko  <phcoder@gmail.com>

	Adjust bootcheck tests for multiboot/coreboot/qemu to match real support.
	coreboot has ACPI while 2 others don't. *BSD need ACPI and have trouble
	without it. Don't even attempt to boot *BSD on multiboot or qemu targets.

	On coreboot boot all *BSD except 32-bit NetBSD which apparently does some
	early BIOS calls.

2016-01-05  Vladimir Serbinenko  <phcoder@gmail.com>

	minixfs_test: Check if mkfs.minixfs supports -B option.

	Add memdisk support to grub-emu.
	Use it to add custom files, so that tests which need them work.

	Move file loading functions to grub-emu.
	So that we can use it in grub-emu as well as utils.

	Disable progress indicator in grub-shell.
	This disables progress indicator for tests. This in turn fixes test
	flakiness as they ended up timing-dependent.

	Update checksums

2016-01-02  Andrei Borzenkov  <arvidjaar@gmail.com>

	acpihalt: add GRUB_ACPI_OPCODE_CREATE_DWORD_FIELD (0x8a)
	Fixes ACPI halt on ASUSTeK P8B75-V,
	Bios: American Megatrends v: 0414 date: 04/24/2012

	Reported-By: Goh Lip <g.lip@gmx.com>

2016-01-02  Andrei Borzenkov  <arvidjaar@gmail.com>

	acpihalt: fix GRUB_DSDT_TEST compilation

2016-01-01  Andrei Borzenkov  <arvidjaar@gmail.com>

	Add missing BUILD_EXEEXT

2015-12-31  Vladimir Serbinenko  <phcoder@gmail.com>

	configure.ac: Reorder efiemu check to after link format check.
	efiemu is supposed to be disabled when compiling through exe format.
	Unfortunately format was determined only after efiemu check. Reorder to fix the
	problem

2015-12-31  Andrey Borzenkov  <arvidjaar@gmail.com>

	remove temporary .bin files (kernel and modules)

	add dejavu built fonts to cleanfiles

2015-12-31  Andrei Borzenkov  <arvidjaar@gmail.com>

	Add grub-module-verifier files to EXTRA_DIST

2015-12-31  Vladimir Serbinenko  <phcoder@gmail.com>

	configure: Add -fno-unwind-tables if supported.
	Unwind tables are useless for us bt consume space if present. Ensure that they
	are not.

	module-verifier: allow limited-range relocations on sparc64.
	clang as incomplete mcmodel=large support. As we don't currently need full
	mcmodel=large support for sparc64, relax those checks.

	Disable build-time module check on emu.
	On emu some checks can be laxer like check for relocation range. Additionally
	module loading in emu is rarely used. So skip this check rather than making
	it laxer for all platforms. In ideal we may want to have slightly different
	check for emu but for now this is good enough.

	configure: Fix grub_cv_cc_fno_unwind_tables check.
	Check tries -fno-dwarf2-cfi-asm but adds -fno-asynchronous-unwind-tables
	to TARGET_CFLAGS. Fix this.

	Add -mno-stack-arg-probe on mingw.
	This argument disables generation of calls to __chkstk_ms. Those calls are
	useless on GRUB as function is dummy. Yet they increase module size and
	use limited-range relocations which may not work under some memory layouts.
	We currently don't use such layouts on concerned platforms but lt's correct
	this.

	Strip .ARM.exidx
	This section is generated by clang and is useful only for debugging.
	It contains exotic relocations, so strip them to avoid them interferring
	with module loading.

	module-verifier: Check range-limited relative relocations.
	Check that they point to the same module, so will end up in the same
	chunk of memory.

	xen/relocator: Use local symbol to ensure that code is relocation-free.

	backtrace: Fix register call syntax

	Verify modules on build-time rather than failing in runtime.

	sparc64: Fix assembly to let compiler to fill in memory references.
	This fixes the use of not fully relocatable (they assume that variables are
	under 4G limit in virtual memory) references.

2015-12-30  Andrey Borzenkov  <arvidjaar@gmail.com>

	30_os-prober: derive --class from os-prober generated label
	Currently only Windows gets distinguished icons, everything else is displayed
	using the same generic one. Add additional --class based on os-prober returned
	label, which usually is expected to match primary distribution name.

	Also use it for Windows as well - chainloader prober may actually return
	different strings (Windows, MS-DOS, Windows9xME).

2015-12-30  Vladimir Serbinenko  <phcoder@gmail.com>

	backtrace: Remove assembly assumption that grub_backtrace_pointer is under 4G

2015-12-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	menu: fix line count calculation for long lines
	It gave one extra screen line if length was exactly equal to screen
	width.

	Reported by Michael Chang.
	Also-By: Michael Chang <mchang@suse.com>

2015-12-29  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-mkrescue: Delete temporary file
	Reported by: Thomas Schmitt

	grub-mount: Fix oath parsing.
	Brackets detection was copied from somewhere else and makes no sense in case
	of grub-mount and prevents user from accessing and files with ) in them.

	exfat: Fix stream extension flag parsing.

2015-12-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	devmapper: check for valid device abstraction in get_grub_dev
	This was lost when code was refactored. Patch restores previous behavior.

	It is still not clear whether this is the right one. Due to the way we
	detect DM abstraction, partitions on DM are skipped, we fall through to
	generic detection which ends up in assuming parent device is BIOS disk.

	It is useful to install GRUB on VM disk from the host. But it also means
	that GRUB will mistakenly allow install on real system as well.

	For now let's fix regression; future behavior needs to be discussed.

	Closes: 45163

2015-12-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	windows: correct LBA in generated EFI HDD media paths
	GRUB keeps partition offset and size in units of 512B sectors. Media paths
	are defined in terms of LBA which are presumed to match HDD sector size.

	This is probably cosmetic (EFI requires that partition is searched by GUID)
	and still incorrect if GPT was created using different logical block size.
	But current code is obviously wrong and new has better chances to be correct.

2015-12-17  Robert Elliott  <elliott@hpe.com>

	lsefimmap: support persistent memory and other UEFI 2.5 features
	This should accompany
		76ce1de740 Translate UEFI persistent memory type

	1. Add a string for the EfiPersistentMemory type 14 that was
	added in UEFI 2.5.

	2. Decode the memory attributes that were added in UEFI 2.5:
	* NV (non-volatile)
	* MORE_RELIABLE (higher reliable, e.g., mirrored memory in a system
	  with partial memory mirroring)
	* RO (read-only)

	3. Use proper IEC binary units (KiB, MiB, etc.) for power-of-two
	values rather than misusing SI power-of-ten units (KB, MB, etc.)

	4. The lsmmap command only decodes memory ranges sizes up to GiB scale
	units.  Persistent memory ranges will reach into the TiB scale.
	Since 64-bit size field supports TiB, PiB, and EiB, decode all of
	them for completeness.

	5. In the lsefimmap command, rewrite the print statements to
	* avoid rounding
	* avoid a big nested if/else tree.

	For example: In the sixth entry below, the value of 309MB implies
	316416KB but is really reporting 316436KB.

	Widen the size column to 6 digits to accommodate typical cases.
	The worst case value would require 14 digits; if that happens,
	let the columns get out of sync.

	Old format:
	Type      Physical start  - end             #Pages     Size Attributes
	conv-mem  0000000000000000-0000000000092fff 00000093  588KB UC WC WT WB
	reserved  0000000000093000-0000000000093fff 00000001    4KB UC WC WT WB
	conv-mem  0000000000094000-000000000009ffff 0000000c   48KB UC WC WT WB
	conv-mem  0000000000100000-000000000fffffff 0000ff00  255MB UC WC WT WB
	BS-code   0000000010000000-0000000010048fff 00000049  292KB UC WC WT WB
	conv-mem  0000000010049000-000000002354dfff 00013505  309MB UC WC WT WB
	ldr-data  000000002354e000-000000003ecfffff 0001b7b2  439MB UC WC WT WB
	BS-data   000000003ed00000-000000003ed7ffff 00000080  512KB UC WC WT WB
	conv-mem  000000003ed80000-000000006af5ffff 0002c1e0  705MB UC WC WT WB
	reserved  000000006af60000-000000006b55ffff 00000600    6MB UC WC WT WB
	BS-data   000000006b560000-000000006b560fff 00000001    4KB UC WC WT WB
	RT-data   000000006b561000-000000006b5e1fff 00000081  516KB RT UC WC WT WB
	BS-data   000000006b5e2000-000000006ecfafff 00003719   55MB UC WC WT WB
	BS-code   000000006ecfb000-000000006ecfbfff 00000001    4KB UC WC WT WB
	conv-mem  000000006ecfc000-00000000711fafff 000024ff   36MB UC WC WT WB
	BS-data   00000000711fb000-000000007128dfff 00000093  588KB UC WC WT WB
	Unk 0d    0000000880000000-0000000e7fffffff 00600000   24GB UC WC WT WB NV
	reserved  0000001680000000-0000001c7fffffff 00600000   24GB UC WC WT WB NV

	New format:
	Type      Physical start  - end             #Pages        Size Attributes
	conv-mem  0000000000000000-0000000000092fff 00000093    588KiB UC WC WT WB
	reserved  0000000000093000-0000000000093fff 00000001      4KiB UC WC WT WB
	conv-mem  0000000000094000-000000000009ffff 0000000c     48KiB UC WC WT WB
	conv-mem  0000000000100000-000000000fffffff 0000ff00    255MiB UC WC WT WB
	BS-code   0000000010000000-0000000010048fff 00000049    292KiB UC WC WT WB
	conv-mem  0000000010049000-000000002354dfff 00013505 316436KiB UC WC WT WB
	ldr-data  000000002354e000-000000003ecfffff 0001b7b2 450248KiB UC WC WT WB
	BS-data   000000003ed00000-000000003ed7ffff 00000080    512KiB UC WC WT WB
	conv-mem  000000003ed80000-000000006af5ffff 0002c1e0 722816KiB UC WC WT WB
	reserved  000000006af60000-000000006b55ffff 00000600      6MiB UC WC WT WB
	BS-data   000000006b560000-000000006b560fff 00000001      4KiB UC WC WT WB
	RT-data   000000006b561000-000000006b5e1fff 00000081    516KiB RT UC WC WT WB
	BS-data   000000006b5e2000-000000006ecfafff 00003719  56420KiB UC WC WT WB
	BS-code   000000006ecfb000-000000006ecfbfff 00000001      4KiB UC WC WT WB
	conv-mem  000000006ecfc000-0000000071222fff 00002527  38044KiB UC WC WT WB
	BS-data   0000000071223000-00000000712ddfff 000000bb    748KiB UC WC WT WB
	persist   0000000880000000-0000000e7fffffff 00600000     24GiB UC WC WT WB NV
	reserved  0000001680000000-0000001c7fffffff 00600000     24GiB UC WC WT WB NV

2015-12-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	kernel: print and reset grub_errno after each embedded config line
	Otherwise it causes subsequent file open to fail, because grub_file_open
	misinterprets set grub_errno for grub_file_get_device_name failure.

	Closes: 46540

2015-12-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	Erase backspaced character in grub_username_get
	It probably does not work across linefeed, but hopefully user names are not
	that long (and nobody is using terminal that small).

2015-12-16  Hector Marco-Gisbert  <hecmargi@upv.es>

	Fix security issue when reading username and password
	This patch fixes two integer underflows at:
	  * grub-core/lib/crypto.c
	  * grub-core/normal/auth.c

	CVE-2015-8370

	Also-By: Andrey Borzenkov <arvidjaar@gmail.com>

2015-12-15  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS: more additions
	Also-By: Robert Elliott <elliott@hpe.com>

2015-12-15  Robert Elliott  <elliott@hpe.com>

	Translate UEFI persistent memory type
	Define
	* GRUB_EFI_PERSISTENT_MEMORY (UEFI memory map type 14) per UEFI 2.5
	* GRUB_MEMORY_PERSISTENT (E820 type 7) per ACPI 3.0
	* GRUB_MEMORY_PERSISTENT_LEGACY (E820 unofficial type 12) per ACPI 3.0

	and translate GRUB_EFI_PERSISTENT_MEMORY to GRUB_MEMORY_PERSISTENT in
	grub_efi_mmap_iterate().

	Includes
	* adding the E820 names to lsmmap
	* handling the E820 types in make_efi_memtype()

	Suggested-by: Vladimir 'φ-coder/phcoder' Serbinenko <phcoder@gmail.com>
	Suggested-by: Andrei Borzenkov <arvidjaar@gmail.com>

2015-12-14  Vladimir Serbinenko  <phcoder@gmail.com>

	Document bootlocation discovery limitations and xen platform limitations

2015-12-07  Josef Bacik  <jbacik@fb.com>

	tcp: ack when we get an OOO/lost packet
	While adding tcp window scaling support I was finding that I'd get some packet
	loss or reordering when transferring from large distances and grub would just
	timeout.  This is because we weren't ack'ing when we got our OOO packet, so the
	sender didn't know it needed to retransmit anything, so eventually it would fill
	the window and stop transmitting, and we'd time out.  Fix this by ACK'ing when
	we don't find our next sequence numbered packet.  With this fix I no longer time
	out.  Thanks,

2015-12-01  Michael Chang  <mchang@suse.com>

	i386: fix TSC calibration using PIT
	Condition was accidentally reversed, so PIT calibration always failed
	when PIT was present and always succeeded when PIT was missing, but in
	the latter case resulted in absurdly fast clock.

	Reported and tested by Vitaly Kuznetsov <vkuznets@redhat.com>

2015-11-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	Do not include generated gnulib headers in tarball
	gnulib files are already handled by recursive make distdir invocation.
	Including all generated headers (after make completed) causes build
	failure if target system is different (different compile version etc).

2015-11-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	Replace numbers with grub_memory_type_t enums

2015-11-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	configure: fix macports flex version detection
	Macports add extra information after version itself:

	$flex --version
	flex 2.5.35 Apple(flex-31)

	We require at least felx 2.5.35 so do not need to care about prehistoric
	"flex version n.n.n"; just use second field always.

	Reported by Peter Cheung <mcheung63@hotmail.com>

2015-11-27  Vladimir Serbinenko  <phcoder@gmail.com>

	tsc: Use alternative delay sources whenever appropriate.
	PIT isn't available on some of new hardware including Hyper-V. So
	use pmtimer for calibration. Moreover pmtimer calibration is faster, so
	use it on coreboor where booting time is important.

	Based on patch by Michael Chang.

2015-11-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	efi: really mark memory of unknown type as reserved
	9be4c45dbe3c877d1f4856e99ee15133c6cd2261 added switch case between
	fall through cases, causing all memory regions of unknown type to be
	marked as available.

	Move default case into its own block and add explicit FALLTHROUGH
	annotation.

	Reported by Elliott, Robert (Persistent Memory) <elliott@hpe.com>

2015-11-24  Josef Bacik  <jbacik@fb.com>

	net: reset nb->data per dns record lookup loop
	We were resetting nb->data every time we tried a new server, but we need to do
	it every time we try for a different record, otherwise we don't end up falling
	back to the A record properly.  Thanks,

2015-11-18  Andrei Borzenkov  <arvidjaar@gmail.com>

	unix: do not close stdin in grub_passwd_get
	This makes it impossible to read from stdin without controlling tty:

	10:/mnt # echo -e passwd\\npasswd | setsid ./grub-mkpasswd-pbkdf2
	Enter password:
	Reenter password: ./grub-mkpasswd-pbkdf2: error: failure to read password.
	10:/mnt

2015-11-17  Andrei Borzenkov  <arvidjaar@gmail.com>

	lsefisystab: add missing comma after 7994077

2015-11-14  Pavel Bludov  <pbludov@gmail.com>

	Add some UUIDs found in the hardware

2015-11-13  Konstantin Vlasov  <kvlasov@odin.com>

	gfxterm: fix calculation of terminal-top and terminal-height
	They used screen width, not height.

2015-11-12  Paulo Flabiano Smorigo  <pfsmorigo@linux.vnet.ibm.com>

	ofdisk: add sas disks to the device list

2015-11-12  Vladimir Serbinenko  <phcoder@gmail.com>

	multiboot: Don't rely on particular ordering of options.

	multiboot_mbi: Fix handling of --quirk-bad-kludge.

2015-11-12  Fu Wei  <fu.wei@linaro.org>

	xen_boot: Remove useless file_name_index variable.

	Document ARM64 xen commands

2015-11-11  Vladimir Serbinenko  <phcoder@gmail.com>

	asm-tests/i386-pc: Check that near jumps are 2 bytes.
	We already check that jump over 300 bytes gap is 3 bytes in code16-mode.
	Some clang versions generate 3-byte opcode for short jumps which makes
	boot.img blow over 512-byte limit. Enforce -no-integrated-as in such cases

2015-11-11  Paulo Flabiano Smorigo  <pfsmorigo@linux.vnet.ibm.com>

	ofdisk: add a comment about vscsi method

2015-11-09  Vladimir Serbinenko  <phcoder@gmail.com>

	fdt.mod: Move license tag to the right file.

2015-11-09  Fu Wei  <fu.wei@linaro.org>

	fdt.mod: Add missing license tag.

2015-11-09  Vladimir Serbinenko  <phcoder@gmail.com>

	kern/elf: Ignore cast-align warnings

2015-11-09  Vladimir Serbinenko  <phcoder@gmail.com>

	cbfs: Fix corner case and compilation with recdent gcc
	Accept the header to touch the jump address at 0xfffffff0.

	Fix compilation for 64-bit EFI with recent GCC.

2015-11-08  Vladimir Serbinenko  <phcoder@gmail.com>

	fstester: Enforce LC_ALL=C

	Adapt build-system to use imported xen headers.

	Import xen headers directly into GRUB

	cbfs: Check for ptr range sanity.
	Triaged by Andrei and enhanced with suggestions by Aaron Durbin
	Also-By: Andrei Borzenkov <arvidjaar@gmail.com>

	Remove reliance C.UTF-8

	genmoddep.awk: Add a test that we have no circular dependencies

	Makefile.core.def: Break circular dependency on arm64.

	autogen: Use cp instead of ln -s.
	libgcrypt-grub shouldn't be modified directly anyway. With this patch
	tarball without contrib can be unpacked on FAT and stay usable for
	out-of-tree compile on full POSIX FS (compile on FAT not tested).

2015-11-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	partmap_test: check that parted is available
	Skip test if parted is unavailable instead of returning false failure.

2015-11-07  grub-devel@iam.tj  <grub-devel@iam.tj>

	cryptodisk: teach grub_cryptodisk_insert() about partitions (bug #45889)
	It is not possible to configure encrypted containers on multiple partitions of
	the same disk; after the first one all subsequent fail with

	disk/cryptodisk.c:978: already mounted as crypto0

	Store partition offset in cryptomount descriptor to distinguish between them.

2015-11-07  Andrey Borzenkov  <arvidjaar@gmail.com>

	doc: document config_directory and config_file variables

2015-11-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	unix/getroot: remove unused MAJOR definition
	We use major() everywhere, these definitions just add to confusion.

	Add comments to code for commit d313218

2015-11-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	devmapper/getroot: use makedev instead of direct shift
	Fixes device detection with large number of devices.

	Reported by Tim Wallberg <twalberg@comcast.net>

2015-11-06  Andrei Borzenkov  <arvidjaar@gmail.com>

	mkimage: zero fill alignment space
	This did not cause real problem but is good for reproducible builds. I hit
	it with recent bootinfoscript that displays embedded config; I was puzzled
	by random garbage at the end.

	Prezero memory buffer used to assemble core.img. This makes individual
	memset redundant. Also ensure buffer is filled with zeroes in several other
	places.

	Also remove redundant zeroing code where we fill in the whole memory block
	anyway.

2015-11-06  Vladimir Serbinenko  <phcoder@gmail.com>

	configure.ac: Explicitly add -mno-sse3 on x86.

	README: Remove dead link to the wiki

2015-10-29  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS: mention powerpc64le support

2015-10-29  Ignat Korchagin  <ignat>

	tcp: Fix uninited mac address when accepting connection.

2015-10-29  Fu Wei  <fu.wei@linaro.org>

	arm64: Add support for xen boot protocol.

2015-10-29  Vladimir Serbinenko  <phcoder@gmail.com>

	arm64: Move FDT functions to separate module

2015-10-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	efi: fix warnings with recent GCC
	../../grub-core/term/efi/console.c:128:32: error: suggest parentheses around '&&' within '||' [-Werror=parentheses]
	   if (key.unicode_char >= 0x20 && key.unicode_char <= 0x7f

2015-10-26  Eric Snowberg  <eric.snowberg@oracle.com>

	ofdisk: Fix devpath freeing logic.

2015-10-26  Paulo Flabiano Smorigo  <pfsmorigo@linux.vnet.ibm.com>

	Implement cross-endian ELF load for powerpc

2015-10-25  Peter Jones  <pjones@redhat.com>

	Use EFI_SIMPLE_TEXT_INPUT_EX to support key combinations.

2015-10-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	configure: find options to force endian on MIPS

2015-10-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	configure: force o32 ABI on MIPS
	GRUB code expects O32 or N32. N32 is less tested than O32, so we prefer to
	compile with O32. Some systems (e.g. GNU Guix) default to using newer
	n64 or n32 ABI. Try to find suitable options to force o32.

	For GCC this is simply -mabi=32. While clang supports this option as well,
	o32 ABI is valid for MIPS target and n32/64 ABI are valid for MIPS64 target
	only, so use "-target mips/mipsel -mabi=32".

	Reported-By: Mark H Weaver <mhw@netris.org>
	Also-By: Mark H Weaver <mhw@netris.org>

2015-10-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: avoid closing NULL socket in DNS lookup
	Refactor code so that we do not store NULL pointers in array
	of in-flight DNS servers.

	Reported-By: Josef Bacik <jbacik@fb.com>

2015-10-11  Andrei Borzenkov  <arvidjaar@gmail.com>

	install: --compress argument is not optional
	Fixes crash if argument is not specified. Also use `|' to separate choices
	in list of compression methods to align it with --core-compress.

2015-10-11  Vladimir Serbinenko  <phcoder@gmail.com>

	mips: Make setjmp code N32-compliant.

	mips: Make the assembly-code N32-compatible.
	There are no $t4 or $t5 in N32 but there are $a4 and $a5.

2015-10-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	progress: avoid NULL dereference for net files
	From original patch by dann frazier <dann.frazier@canonical.com>:

	  grub_net_fs_open() saves off a copy of the file structure it gets passed and
	  uses it to create a bufio structure. It then overwrites the passed in file
	  structure with this new bufio structure. Since file->name doesn't get set
	  until we return back to grub_file_open(), it means that only the bufio
	  structure gets a valid file->name. The "real" file's name is left
	  uninitialized. This leads to a crash when the progress module hook is called
	  on it.

	grub_net_fs_open() already saved copy of file name as ->net->name, so change
	progress module to use it.

	Also, grub_file_open may leave file->name as NULL if grub_strdup fails. Check
	for it.

	Also-By: dann frazier <dann.frazier@canonical.com>

2015-10-10  Andrei Borzenkov  <arvidjaar@gmail.com>

	file: ignore host disk in blocklist check
	It cannot work anyway because host disk cannot be read. This fixes hostfs access
	on native Windows build where filenames start with '\' or do not have initial
	separator at all (d:\foo).

	Issue was observed when running grub-fstest on Windows. On UNIX image name is
	canonicalized to always start with `/' so this was not noticed.

	This has side effect of allowing relative path names on host, but this already
	was the case with `ls' command, so it just extends it to all commands.

	Reported-By: Arch Stack <archstacker@gmail.com>
	Also-By: Arch Stack <archstacker@gmail.com>

2015-10-09  Vladimir Serbinenko  <phcoder@gmail.com>

	mips/dl: Handle addend in RELA entries.

	gfxmenu/model: Delete empty file.

2015-10-09  Alexander Bluhm  <bluhm@genua.de>

	ufs: Fix parameters to grub_memset.
	len = 0 made simply no sense. Fix parameters to be in line with read.

2015-10-07  Stanislav Kholmanskikh  <stanislav.kholmanskikh@oracle.com>

	ofnet: Do not set SUFFIX for sun4v network devices
	sun4v vnet devices do not implement the support of duplex and speed
	instance attributes. An attempt to open such a device with
	the attributes will fail:

	ok select net:speed=auto,duplex=auto
	Unknown key 'speed'
	Unknown key 'duplex'
	Manual Configuration: Host IP, boot server and filename must be specified
	WARNING: /virtual-devices@100/channel-devices@200/network@0: Can't open OBP standard TFTP package

	Can't open device
	ok

	Therefore, let's not set SUFFIX for such devices.

2015-10-07  Eric Snowberg  <eric.snowberg@oracle.com>

	sparc64 - use correct drive name within grub_util_sparc_setup
	Incorrect drive name was being passed into grub_util_sparc_setup,
	causing the grub-install to fail.

2015-09-13  Andrei Borzenkov  <arvidjaar@gmail.com>

	cryptodisk: strip parenthesis from backing device name
	Otherwise subsequent disk open fails.

	Reported-By: Klemens Nanni <contact@autoboot.org>

2015-08-22  Felix Zielcke  <fzielcke@z-51.de>

	disk/ldm, partmap/msdos.c: fix spelling error

2015-08-13  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: do not try to load protocol module via itself
	Otherwise we get infinite recursion.

	Closes: 45729

2015-08-09  Josef Bacik  <jbacik@fb.com>

	efinet: handle get_status() on buggy firmware properly
	The EFI spec indicates that get_status() should return the address of the buffer
	we passed into transmit to indicate the the buffer was transmitted.  However we
	have boxes where the firmware returns some arbitrary address instead, which
	makes grub think that we've not sent anything.  So since we have the SNP stuff
	opened in exclusive mode just assume any non-NULL txbuf means that our transmit
	occurred properly.  This makes grub able to do its networking stuff properly on
	our broken firmware.  Thanks,

	cc: Peter Jones <pjones@redhat.com>

2015-08-09  Andrei Borzenkov  <arvidjaar@gmail.com>

	linguas.sh: fix error when removing non-existing autogenerated files

2015-07-28  Vladimir Serbinenko  <phcoder@gmail.com>

	ahci: Ensure that bus mastering is set.
	Fixes ahci_test failing on several platforms.

2015-07-27  Vladimir Serbinenko  <phcoder@gmail.com>

	archelp: Never pass NULL as mtime.
	Moves complexity from fs code (NULL check) to common code (passing non-NULL).

	HFS: Convert to fshelp.
	HFS doesn't handle "." and ".." properly. Convert it to fshelp to reuse the
	logic.

	FAT: Convert to fshelp.
	exFAT doesn't handle "." and ".." correctly, convert it to fshelp to
	reuse the same logic.

	BFS: Convert to fshelp.
	BFS doesn't handle ".." correctly, so convert it to fshelp to reuse the logic.

	fshelp: Add handling of "." and ".." and grub_fshelp_find_file_lookup.
	Recent tests have discovered that many of our filesystems have flawed
	handling of "." and "..". Rather than attempting to fix it in filesystems
	themselves, make the common code fshelp aware of "." and ".." and handle
	them in this layer. Add grub_fshelp_find_file_lookup for easy conversion
	of BFS, HFS and exFAT which have the same problem and don't use fshelp.

	Switch procfs to use archelp.
	This fixes handling of "." and "..".

	grub-install: Use a+ in fopen rather than r+.
	r+ does not create a file if none exists.

	Add transform_data as a variant of data with substitutions.
	This fixrs name mismatch for grub.chrp with
	transform_program_name='s,grub,grub2,g'

2015-07-24  Ignat Korchagin  <ignat@cloudflare.com>

	efi: fix GetVariable return status check in 81ca24a
	GetVariable should return EFI_BUFFER_TOO_SMALL if given buffer of size
	zero; commit incorrectly checked for EFI_SUCCESS.

2015-07-24  Vladimir Serbinenko  <phcoder@gmail.com>

	zfs_test: Skip dotdot in volume root test.
	Given special semantics of ZFS it's far from clear what the expected
	result is. Just skip it for now

	xfs_test: Test both crc and non-crc filesystems.

	xfs: Fix handling of symlink with crc-enabled filesystem.

	reiserfs: Fix handling of first entry in the directory.
	Fixes garbage being added to "." filename.

2015-07-23  Ignat Korchagin  <ignat@cloudflare.com>

	efi: fix memory leak in variable handling

2015-07-23  Vladimir Serbinenko  <phcoder@gmail.com>

	exclude.pot: Add missing blacklisted strings.

	archelp: Fix handling of dot and dotdot at the end of the name.
	Fixes cpio_test and tar_test.

	arm-emu: Add __aeabi_memcpy* and __aeabi_memclr* symbols.
	Fixes compilation with clang.

2015-07-22  Vladimir Serbinenko  <phcoder@gmail.com>

	fwstart: Fix loading of address of read_spd_fail.

	fwstart: Add missing argument to p2align.
	Resulting binary is unchanged as it happens we were already aligned
	by chance.

2015-07-22  Vladimir Serbinenko  <phcoder@gmail.com>

	fwstart: Replace blt with bltz.
	blt A, $zero, B and bltz A, B are equivalent but clang recognizes only
	later, so use it.

	Resulting binary is unchanged.

2015-07-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Remove mips_attributes.
	mips_attributes was introduced to work around clang problems with
	-msoft-float. Those problems are now fixed and moreover .gnu_attributes
	itself is unportable and creates problem with clang.

	Revert "mips: Fix soft-float handling."

	This partially reverts commit 6a4ecd276ed39f66be0ad6ff0f8ff67598098605.

2015-07-22  Vladimir Serbinenko  <phcoder@gmail.com>

	ARM: provide __aeabi_memclr* and __aeabi_memcpy* symbols
	Fixes compilation with recent clang.

	diskfilter: Make name a const char to fix compilation error.

	dmraid_nvidia: Set a name to usable value to avoid null dereference.
	Reported by: Andrei Borzenkov

	configure.ac: Handle powerpc64le compiler
	Also-by: Paulo Flabiano Smorigo <pfsmorigo@linux.vnet.ibm.com>

2015-07-20  Bernhard Übelacker  <bernhardu@vr-web.de>

	loader/linux: Make trailer initrd entry aligned again.
	Regression from commit:
	  loader/linux: do not pad initrd with zeroes at the end
	  a8c473288d3f0a5e17a903a5121dea1a695dda3b

	Wimboot fails since the change above because it expects the "trailer"
	initrd element on an aligned address.
	This issue shows only when newc_name is used and the last initrd
	entry has a not aligned size.

2015-07-16  Vladimir Serbinenko  <phcoder@gmail.com>

	XFS: Fix wrong alignment treatment.

	grub_ext2_read_block: Fix return type on error.

2015-07-05  Andrei Borzenkov  <arvidjaar@gmail.com>

	use TARGET_LDFLAGS in grub_PROG_OBJCOPY_ABSOLUTE
	That's what Makefile will use and it is required if unusual flags
	must be passed to linker (e.g. to build ppc32 code on ppc64le with clang).

2015-06-26  Michael Chang  <mchang@suse.com>

	Fix missing byte order conversion in get_btrfs_fs_prefix function
	Since btrfs on-disk format uses little-endian, the searched item types
	(ROOT_REF, INODE_REF) need converting the byte order in order to
	function properly on big-endian systems.

2015-06-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	chainloader: fix resoource leak
	Found by: Coverity scan.
	CID: 96651

	loader/bsd: fix memory leak
	Found by: Coverity scan.
	CID: 96662, 96665

2015-06-20  Andrei Borzenkov  <arvidjaar@gmail.com>

	loader/bsd: free memory leaks
	Found by: Coverity scan.
	CID: 96671, 96658, 96653

	search_wrap: fix memory leak
	Found by: Coverity scan.
	CID: 96675

	password_pbkdf2: fix memory leak
	Found by: Coverity scan.
	CID: 96676

	normal: fix memory leak
	Found by: Coverity scan.
	CID: 96677

	efi/serial: fix memory leak
	Found by: Coverity scan.
	CID: 96678

	ohci: fix memory leak
	Found by: Coverity scan.
	CID: 96679

	loader/bsd: free memory leaks
	Found by: Coverity scan.
	CID: 96682

	multiboot: fix memory leak
	Found by: Coverity scan.
	CID: 96684

	normal: fix memory leak
	Found by: Coverity scan.
	CID: 96685

	loader/bsd: fix memory leak
	Found by: Coverity scan.
	CID: 96686

	reed_solomon: fix memory leak
	Found by: Coverity scan.
	CID: 96688

	usb: fix use after free
	Found by: Coverity scan.
	CID: 96704

	xnu: fix use after free
	Found by: Coverity scan.
	CID: 96706

	disk/scsi: fix use after free
	Found by: Coverity scan.
	CID: 96713

	efi/chainloader: fix use after free
	Found by: Coverity scan.
	CID: 96714

	search: fix use after free
	Found by: Coverity scan.
	CID: 96715

	NEWS: emu libusb support removed

2015-06-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-probe: fix memory leak in probe (ofpath)
	Found by: Coverity scan.
	CID: 73772

2015-06-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-probe: restructure code to make static analysis easier
	Current code in probe() could not be verified to not contain memory leaks.
	Restructure code and ensure grub_device_close is always called at the end of
	loop.

	Calms down Coverity scan.
	CID: 73739

2015-06-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	zfs: fix memory leak
	Found by: Coverity scan.
	CID: 73647

	xfs: silence Coverity overflow warning
	inode size cannot really overflow integer, but Coverity does not know it.
	CID: 96602

	zfs: memory leak
	Found by Coverity scan.
	CID: 96603

	unix/getroot: memory leak
	Found by Coverity scan.
	CID: 96605

	unix/relpath: memory leak
	Found by Coverity scan.
	CID: 96606

2015-06-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	syslinux_parse: assorted issues found by Coverity
	1. Remove unneeded NULL check
	CID: 96607

	2. Do not allocate storage for initrd, copy it directly from input
	buffer. Avoids memory leak in failure path.
	CID: 96604

	3. Unchecked error return from print()
	CID: 96601, 73595

2015-06-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	syslinux_parse: make print_escaped actually stop before `to'
	The only current user is mboot.c32 which unfortunately is not covered
	by regression tests.

2015-06-18  Andrei Borzenkov  <arvidjaar@gmail.com>

	fat: fix handling of "." and ".." directory entries
	Emulate dot and dotdot in root directory. For other directories do not
	add separator between name and extension for these two special entries.

	Closes: 45335

2015-06-18  Andrei Borzenkov  <arvidjaar@gmail.com>

	tests: regression tests for "." and ".." directory entries

2015-06-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	efinet: enable hardware filters when opening interface
	Exclusive open on SNP will close all existing protocol instances which
	may disable all receive filters on interface. Reinstall them after we
	opened protocol exclusively.

	Also follow UEFI specification recommendation and stop interfaces when
	closing them:

	Unexpected system errors, reboots and hangs can occur if an OS is loaded
	and the network devices are not Shutdown() and Stopped().

	Also by: Mark Salter <msalter@redhat.com>
	Closes: 45204

2015-06-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS: mention libgcc removal

2015-06-15  Paulo Flabiano Smorigo  <pfsmorigo@linux.vnet.ibm.com>

	Add flag for powerpc ieee1275 to avoid unneeded optimizations

2015-06-12  Mark Salter  <msalter@redhat.com>

	Fix exit to EFI firmware
	The current code for EFI grub_exit() calls grub_efi_fini() before
	returning to firmware. In the case of ARM, this leaves a timer
	event running which could lead to a firmware crash. This patch
	changes this so that grub_machine_fini() is called with a NORETURN
	flag. This allows machine-specific shutdown to happen as well
	as the shutdown done by grub_efi_fini().

2015-06-12  Paul Menzel  <paulepanter@users.sourceforge.net>

	disk/ahci.c: Use defines `GRUB_AHCI_HBA_PORT_CMD_SPIN_UP` and `GRUB_AHCI_HBA_PORT_CMD_POWER_ON`
	Instead of hard coding `2` and `4` use the macros defined already at the
	top of the file. As a consequence, wrap the now too long line.

2015-06-12  Andrei Borzenkov  <arvidjaar@gmail.com>

	NEWS: XFS v5 support

2015-06-12  Jan Kara  <jack@suse.cz>

	xfs: V5 filesystem format support
	Add support for new XFS on disk format. We have to handle optional
	filetype fields in directory entries, additional CRC, LSN, UUID entries
	in some structures, etc.

	xfs: Add helpers for inode size
	Add helpers to return size of XFS inode on disk and when loaded in
	memory.

2015-06-04  Toomas Soome  <tsoome@me.com>

	multiboot_header_tag_module_align fix to confirm multiboot specification

2015-06-02  Leif Lindholm  <leif.lindholm@linaro.org>

	configure.ac: clean up arm64 soft-float handling
	Fix compilation with gcc 5.1 (avoid internal compiler error), by
	replacing explicit -march +nofp+nosimd options with -mgeneral-regs-only.

	This also enables the removal of some further conditional build flag
	setting.

2015-06-01  dann frazier  <dann.frazier@canonical.com>

	arm64/setjmp: Add missing license macro
	Including the setjmp module in an arm64-efi image will cause it to
	immediately exit with an "incompatible license" error.

	The source file includes a GPLv3+ boilerplate, so fix this by declaring a
	GPLv3+ license using the GRUB_MOD_LICENSE macro.

2015-05-31  Paul Menzel  <paulepanter@users.sourceforge.net>

	disk/ahci.c: Add port number to port debug messages
	Currently, some messages cannot be mapped to the port they belong to as
	the port number is missing from the output. So add `port: n` to the
	debug messages.

2015-05-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	Clarify use of superusers variable and menu entry access
	superusers controls both CLI and editing. Also explicitly mention that
	empty superusers disables them.

	"Access to menuentry" is a bit vague - change to "execute menuentry"
	to make it obvious, what access is granted.

2015-05-30  Paul Menzel  <paulepanter@users.sourceforge.net>

	Correct spelling of *scheduled*
	Run the command below

		$ git grep -l schedulded | xargs sed -i 's/schedulded/scheduled/g'

	and revert the change in `ChangeLog-2015`.

	Including "miscellaneous" spelling fix noted by richardvoigt@gmail.com

2015-05-30  Toomas Soome  <tsoome@me.com>

	zfs extensible_dataset and large_blocks feature support
	large blocks basically use extensible dataset feature, or to be exact,
	setting recordsize above 128k will trigger large_block feature to be
	enabled and storing such blocks is using feature extensible dataset. so
	the extensible dataset is prerequisite.

	Changes implement read support extensible dataset… instead of fixed DMU
	types they dont specify type, making it possible to use fat zap objects
	from bonus area.

2015-05-27  Vladimir Serbinenko  <phcoder@gmail.com>

	multiboot1: never place modules in low memory.
	While in theory permitted by the spec, modules rarely fit in low memory
	anyway and not every kernel is able to handle modules in low memory anyway.
	At least VMWare is known not to be able to handle modules at arbitrary
	locations.

2015-05-24  Paul Menzel  <paulepanter@users.sourceforge.net>

	disk/ahci: Use defines `GRUB_ATA_STATUS_BUSY` and `GRUB_ATA_STATUS_DRQ`
	Instead of hard coding `0x88` use the macros defined in `disk/ata.h`.

2015-05-19  Paul Menzel  <paulepanter@users.sourceforge.net>

	cb_timestamps.c: Add new time stamp descriptions
	Add the descriptions of the “core”, that means no vendorcode or payload,
	coreboot time stamps added up to coreboot commit a7d92441 (timestamps:
	You can never have enough of them!) [1].

	Running `coreboot_boottime` in the GRUB command line interface now shows
	descriptions for all time stamps again on the ASRock E350M1.

	[1] http://review.coreboot.org/9608

2015-05-17  Andrei Borzenkov  <arvidjaar@gmail.com>

	bootp: ignore gateway_ip (relay) field.
	From RFC1542:

	   The 'giaddr' field is rather poorly named.  It exists to facilitate
	   the transfer of BOOTREQUEST messages from a client, through BOOTP
	   relay agents, to servers on different networks than the client.
	   Similarly, it facilitates the delivery of BOOTREPLY messages from the
	   servers, through BOOTP relay agents, back to the client.  In no case
	   does it represent a general IP router to be used by the client.  A
	   BOOTP client MUST set the 'giaddr' field to zero (0.0.0.0) in all
	   BOOTREQUEST messages it generates.

	   A BOOTP client MUST NOT interpret the 'giaddr' field of a BOOTREPLY
	   message to be the IP address of an IP router.  A BOOTP client SHOULD
	   completely ignore the contents of the 'giaddr' field in BOOTREPLY
	   messages.

	Leave code ifdef'd out for the time being in case we see regression.

	Suggested by: Rink Springer <rink@rink.nu>
	Closes: 43396

2015-05-17  Andrei Borzenkov  <arvidjaar@gmail.com>

	hostdisk: fix crash with NULL device.map
	grub-macbless calls grub_util_biosdisk_init with NULL device.map.

2015-05-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	zfs: fix integer truncation in zap_lookup
	Size after shift could exceed 16 bits; use grub_unit32_t for result.

	Reported and tested by: Kostya Berger <bergerkos@yahoo.co.uk>
	Closes: 44448

2015-05-13  Andrei Borzenkov  <arvidjaar@gmail.com>

	remove extra newlines in grub_util_* strings
	grub_util_{info,warn,error} already add trailing newlines, so remove
	them from format strings. Also trailing full stops are already added.

2015-05-12  Jan Kara  <jack@suse.cz>

	xfs: Convert inode numbers to cpu endianity immediately after reading
	Currently XFS driver converted inode numbers to native endianity only
	when using them to compute inode position. Although this works, it is
	somewhat confusing. So convert inode numbers when reading them from disk
	structures as every other field.

2015-05-11  Jan Kara  <jack@suse.cz>

	xfs: Fix termination loop for directory iteration
	Directory iteration used wrong position (sizeof wrong structure) for
	termination of iteration inside a directory block. Luckily the position
	ended up being wrong by just 1 byte and directory entries are larger so
	things worked out fine in practice. But fix the problem anyway.

2015-05-08  Andrei Borzenkov  <arvidjaar@gmail.com>

	acpi: do not skip BIOS scan if EBDA length is zero
	EBDA layout is not standardized so we cannot assume first two bytes
	are length. Neither is it required by ACPI standard. HP 8710W is known
	to contain zeroes here.

	Closes: 45002

2015-05-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	Add asm-tests to tarball

2015-05-07  Vladimir Serbinenko  <phcoder@gmail.com>

	util/grub-mkrescue: Fix compilation

2015-05-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	efinet: open Simple Network Protocol exclusively
	EDK2 network stack is based on Managed Network Protocol which is layered
	on top of Simple Management Protocol and does background polling. This
	polling races with grub for received (and probably trasmitted) packets
	which causes either serious slowdown or complete failure to load files.

	Open SNP device exclusively.  This destroys all child MNP instances and
	stops background polling.

	Exclusive open cannot be done when enumerating cards, as it would destroy
	PXE information we need to autoconfigure interface; and it cannot be done
	during autoconfiguration as we need to do it for non-PXE boot as well. So
	move SNP open to card ->open method and add matching ->close to clean up.

	Based on patch from Mark Salter <msalter@redhat.com>

	Also-By: Mark Salter <msalter@redhat.com>
	Closes: 41731

2015-05-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	efinet: skip virtual IPv4 and IPv6 devices when enumerating cards
	EDK2 PXE driver creates two child devices - IPv4 and IPv6 - with
	bound SNP instance. This means we get three cards for every physical
	adapter when enumerating. Not only is this confusing, this may result
	in grub ignoring packets that come in via the "wrong" card.

	Example of device hierarchy is

	 Ctrl[91] PciRoot(0x0)/Pci(0x3,0x0)
	   Ctrl[95] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)
	     Ctrl[B4] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)/IPv4(0.0.0.0)
	     Ctrl[BC] PciRoot(0x0)/Pci(0x3,0x0)/MAC(525400123456,0x1)/IPv6(0000:0000:0000:0000:0000:0000:0000:0000)

	Skip PXE created virtual devices when enumerating cards. Make sure to
	find real card when applying initial autoconfiguration during PXE boot,
	this information is associated with one of child devices.

2015-05-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	efidisk: move device path helpers in core for efinet

	convert to, not from, CPU byte order in DNS receive function

2015-05-07  Andrei Borzenkov  <arvidjaar@gmail.com>

	loader/linux: do not pad initrd with zeroes at the end
	Syslinux memdisk is using initrd image and needs to know uncompressed
	size in advance. For gzip uncompressed size is at the end of compressed
	stream. Grub padded each input file to 4 bytes at the end, which means
	syslinux got wrong size.

	Linux initramfs loader apparently does not care about trailing alignment.
	So change code to align beginning of each file instead which atomatically
	gives us the correct size for single file.

	Reported-By: David Shaw <dshaw@jabberwocky.com>

2015-05-07  Daniel Kiper  <daniel.kiper@oracle.com>

	i386/relocator: Remove unused extern grub_relocator64_rip_addr

2015-05-07  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-install-common: Increase buf size to 8192 as modinfo.sh is bigger.

2015-05-07  Vladimir Serbinenko  <phcoder@gmail.com>

	grub-mkrescue: Recognize -output as an alias of --output.
	This helps us to be in line with xorriso -as mkisofs.

	Suggested by: Thomas Schmitt

2015-05-07  Vladimir Serbinenko  <phcoder@gmail.com>

	linux.c: Ensure that initrd is page-aligned.

	Revert parts accidentally committed 2 commits ago.

2015-05-07  Fu Wei  <fu.wei@linaro.org>

	fdt.h: Add grub_fdt_set_reg64 macro

	arm64: Export useful functions from linux.c

2015-05-04  Andrei Borzenkov  <arvidjaar@gmail.com>

	Revert "efinet: memory leak on module removal"
	This reverts commits 47b2bee3ef0ea60fc3f5bfc37f3784e559385297
	and 8d3c4544ffdd0289a4b0bdeb0cdc6355f801a4b3. It is not safe
	to free allocated cards, dangling pointers main remain. Such
	cleanup requires more changes in net core.

	efinet: cannot free const char * pointer

	efinet: memory leak on module removal

2015-05-03  Andrei Borzenkov  <arvidjaar@gmail.com>

	zfs: add missing NULL check and fix incorrect buffer overwrite
	grub_memset should zero out padding after data end. It is not clear
	why it is needed at all - ZFS block is at least 512 bytes and power
	of two, so it is always multiple of 16 bytes. This grub_memset
	apparently never did anything.

2015-05-03  Toomas Soome  <tsoome@me.com>

	zfs: com.delphix:embedded_data feature support

	zfs: com.delphix:hole_birth feature support
	In the past birth was always zero for holes. This feature started
	to make use of birth for holes as well, so change code to test for
	valid DVA address instead.

2015-04-29  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-mkconfig: use $pkgdatadir in scripts
	Otherwise scripts will source wrong grub-mkconfig_lib.

2015-04-24  Vladimir Serbinenko  <phcoder@gmail.com>

	Remove -V in grub-mkrescue.c
	It clashhes with -V which is alias to -volid.

2015-04-13  Toomas Soome  <tsoome@me.com>

	getroot: include sys/mkdev.h for makedev
	Solaris (like) systems need to include sys/mkdev.h for makedev() function.

2015-04-13  Toomas Soome  <tsoome@me.com>

	core/partmap: rename 'sun' to avoid clash with predefined symbol
	the symbol “sun” is defined macro in solaris derived systems, from
	gcc -dM -E:

	and therefore can not be used as name.

2015-04-12  Paul Menzel  <paulepanter@users.sourceforge.net>

	docs/grub.texi: Fix spelling of cbfstool

2015-04-06  Andrei Borzenkov  <arvidjaar@gmail.com>

	core: avoid NULL derefrence in grub_divmod64s
	It can be called with NULL for third argument.  grub_divmod32* for
	now are called only from within wrappers, so skip check.

	Reported-By: Michael Zimmermann <sigmaepsilon92@gmail.com>

2015-03-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	do not emit cryptomount without crypto UUID

2015-03-28  Sarah Newman  <srn@prgmr.com>

	grub-core/loader/i386/xen.c: Initialized initrd_ctx so we don't free a random pointer from the stack.

2015-03-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	net: trivial grub_cpu_to_XX_compile_time cleanup

2015-03-27  Lunar  <lunar@torproject.org>

	syslinux: Support {vesa,}menu.c32.

2015-03-27  Steve McIntyre  <steve@einval.com>

	Recognize EFI platform even in case of mismatch between Linux and EFI.
	Some x86 systems might be capable of running a 64-bit Linux kernel but
	only use a 32-bit EFI (e.g. Intel Bay Trail systems). It's useful for
	grub-install to be able to recognise such systems, to set the default
	x86 platform correctly.

	To allow grub-install to know the size of the firmware rather than
	just the size of the kernel, there is now an extra EFI sysfs file to
	describe the underlying firmware. Read that if possible, otherwise
	fall back to the kernel type as before.

2015-03-27  Michael Zimmermann  <sigmaepsilon92@gmail.com>

	Add missing initializers to silence suprious warnings.

2015-03-27  Leif Lindholm  <leif.lindholm@linaro.org>

	dl_helper: Cleanup
	Use the new thumb_get_instruction_word/thumb_set_instruction_word
	helpers throughout.

	Style cleanup (missing spaces).

	Move Thumb MOVW/MOVT handlers into Thumb relocation section of file.

2015-03-27  Martin Wilck  <martin.wilck@ts.fujitsu.com>

	efinet: Check for immediate completition.
	This both speeds GRUB up and workarounds unexpected EFI behaviour.

2015-03-27  Vladimir Serbinenko  <phcoder@gmail.com>

	Make Makefile.util.def independent of platform.

2015-03-27  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>

	util/mkimage: Use stable timestamp when generating binaries.

2015-03-27  Vladimir Serbinenko  <phcoder@gmail.com>

	modinfo.sh.in: Add missing config variables.

	Makefile.core.def: Remove obsolete LDADD_KERNEL

	arp, icmp: Fix handling in case of oversized or invalid packets.
	This restrict ARP handling to MAC and IP addresses but in practice we need
	only this case anyway and other cases are very rar if exist at all. It makes
	code much simpler and less error-prone.

2015-03-23  Colin Watson  <cjwatson@ubuntu.com>

	hostfs: Drop unnecessary feature test macros
	_BSD_SOURCE was added to allow the use of DT_DIR, but that was removed
	in e768b77068a0b030a07576852bd0f121c9a077eb.  While adding
	_DEFAULT_SOURCE as well works around problems with current glibc,
	neither is in fact needed nowadays.

2015-03-20  Vladimir Serbinenko  <phcoder@gmail.com>

	compiler-rt-emu: Add missing file.

	emunet: Fix init error checking.
	Otherwise emunet doesn't expose any cards.

	fddboot_test: Add -no-pad to xorriso.

	grub-mkrescue: pass all unrecognized options unchanged to xorriso.

	cacheinfo: Add missing license information.

2015-03-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-fs-tester: add LVM RAID1 support
	LVM miscalculates bitmap size with small extent, so start with 16K as
	for other RAID types.

	Until version 2.02.103 LVM counts metadata segments twice when checking
	available space, reduce segment count by one to account for this bug.

2015-03-19  Andrei Borzenkov  <arvidjaar@gmail.com>

	core: add LVM RAID1 support
	Closes 44534.

2015-03-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-fs-tester: explicitly set segment type for LVM mirror
	LVM mirror defaults to RAID1 today and can be different on different
	systems as set in lvm.conf.

2015-03-15  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-fs-tester: better estimation of filesystem time for LVM/RAID
	Write activity with LVM/RAID can happen after filesystem is unmounted.
	In my testing modification time of loop files was 15 - 20 seconds
	after unmount.  So use time as close to unmount as possible as
	reference instead.

2015-03-06  Vladimir Serbinenko  <phcoder@gmail.com>

	hfsplus: Fix potential access to uninited memory on invalid FS

2015-03-06  Jon McCune  <jonmccune@google.com>

	autogen.sh: Allow overriding the python to be used by setting $PYTHON.
	Some installations have several python versions installed. Allow user
	to choose which one to use by setting $PYTHON.

2015-03-05  Andrei Borzenkov  <arvidjaar@gmail.com>

	update gnulib/argp-help.c to fix garbage in grub-mknetdir --help output
	argp_help attempts to translate empty string, which results in printing
	meta information about translation, like in

	bor@opensuse:~/build/grub> grub2-mknetdir --help
	Использование: grub2-mknetdir [ПАРАМЕТР…]
	Project-Id-Version: grub 2.02-pre2
	Report-Msgid-Bugs-To: bug-grub@gnu.org
	...

	Update gnulib/argp-help.c to the current version which fixes this
	(commit b9bfe78424b871f5b92e5ee9e7d21ef951a6801d).

2015-03-05  Andrey Borzenkov  <arvidjaar@gmail.com>

	update m4/extern-inline.m4 to upstream version to fix compilation on FreeBSD
	In file included from util/grub-mkimage.c:54:0:
	./grub-core/gnulib/argp.h:627:49: error: '__sbistype' is static but
	used in inline function '_option_is_short' which is not static
	[-Werror] cc1: all warnings being treated as errors gmake[2]: ***
	[util/grub_mkimage-grub-mkimage.o] Error 1

	Update m4/extern-inline.m4 to current upstream gnulib version that
	contains fix for this (commit b9bfe78424b871f5b92e5ee9e7d21ef951a6801d).

	Reported-By: Beeblebrox <zaphod@berentweb.com>

2015-03-04  Vladimir Serbinenko  <phcoder@gmail.com>

	syslinux_parse: Fix the case of unknown localboot.
	Reported by: Jordan Uggla

	configure.ac: Fix the name of pciaccess header.

	Fix canonicalize_file_name clash.
	canonicalize_file_name clashed with gnulib function. Additionally
	it was declared in 2 places: emu/misc.h and util/misc.h. Added
	grub_ prefix and removed second declaration.

2015-03-03  Vladimir Serbinenko  <phcoder@gmail.com>

	Remove emu libusb support.
	It's disabled by default and has been broken for a long time.
	As nobody is interested in fixing and maintaining it, remove it.

	configure.ac: Remove unused COND_clang

	Remove libgcc dependency.
	libgcc for boot environment isn't always present and compatible.
	libgcc is often absent if endianness or bit-size at boot is different
	from running OS.
	libgcc may use optimised opcodes that aren't available on boot time.
	So instead of relying on libgcc shipped with the compiler, supply
	the functions in GRUB directly.
	Tests are present to ensure that those replacement functions behave the
	way compiler expects them to.

	types.h: Use __builtin_bswap* with clang.
	clang pretends to be GCC 4.2 but we use __builtin_bswap* only with GCC 4.3+.
	clang support __builtin_bswap*, so use it.

	configure.ac: Set $CPPFLAGS when checking for no_app_regs.
	Fixes compilation for sparc64 with clang.

	Don't continue to query block-size if disk doesn't have it.
	Stops poluting screen with a lot of "block-size: exception -21".

2015-02-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-probe: free temporary variable

2015-02-28  Vladimir Serbinenko  <phcoder@gmail.com>

	exclude.pot: Add new technical strings

	grub-probe: Mark a "[default=]" for translation.

	grub-shell: Add missing --locale-directory.
	Fixes the language tests is no make install was done.

	ntfs_test: Skip is setfattr is unavailable.

2015-02-26  Vladimir Serbinenko  <phcoder@gmail.com>

	emu/cache: Change declaration of __clear_cache to match builtin declaration.
	Fixes compile of arm64-emu.

	arm/dl: Fix handling of nonstandard relocation sizes

	gzio: Optimize by removing division.

	raid6: Optimize by removing division.

	dmraid_nvidia: Fix division by 0 and missing byte-swap.

	crypto: restrict cipher block size to power of 2.
	All current ciphers have blocks which are power of 2 and it's
	unlikely to change. Other block length would be tricky to handle anyway.
	This restriction allows avoiding extra divisions.

	jpeg: Optimise by replacing division with shifts.

	png: Optimize by avoiding divisions.

	Add missing lib/division.c

	fbblit: Optimize by replacing division with additions and shifts.

	bitmap_scale: Optimize by moving division out of the loop.

	minilzo: Skip parts tha we don't need.

2015-02-23  Vladimir Serbinenko  <phcoder@gmail.com>

	mips: Fix soft-float handling.
	Add -msoft-float alongside clang arguments to specify ABI.
	Specify ABI in asm files explicitly.
	This trigers asm warning due to gcc failing to propagate -msoft-float
	but it's tolerable.

	Add missing grub_ prefix in memcpy invocation

	Allow clang compilation for thumb with -mthumb-interwork.
	clang already uses -mthumb-interwork behaviour even thout it doesn't
	support the option.

	arm64: Fix compilation failure.
	Don't supply +nosimd to asm files.
	Otherwise +nosimd coming from flags forbids some of instructions
	used in cache_flush.

	Supply signed division to fix ARM compilation.
	Previously we supplied only unsigned divisions on platforms that need software
	division.
	Yet compiler may itself use a signed division. A typical example would be a
	difference between 2 pointers which involves division by object size.

2015-02-22  Vladimir Serbinenko  <phcoder@gmail.com>

	acpi: Fix unused function warning.

	configure.ac: Add ia64-specific way to disable floats.

	i386/tsc: Fix unused function warning on xen.

2015-02-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Experimental support for clang for sparc64.
	Automatically discover command line options to make clang and
	gcc behave in same way.

	Tested with qemu.

2015-02-22  Vladimir Serbinenko  <phcoder@gmail.com>

	Discover which option provides soft-float on configure stage.
	Deals with clang needing other arguments to stop issuing floating
	instructions than gcc.

2015-02-21  Vladimir Serbinenko  <phcoder@gmail.com>

	mips: Switch to more portable .org
	Binary is unchanged.

	sparc64: Switch to more portable .org.
	Binaries are unchanged.

	kernel-8086: Switch to more portable .org.

	Relax requirements on asm for non-BIOS i386 platforms.
	These platforms don't have a hard limit on size of resulting code16
	code, so we don't care if assembly is bigger than necessarry.

	qemu: Switch to more portable .org
	Binary is checked identical.

	qemu: Fix GateA20 enabling.
	GateA20 code was inactive due to address error.

	qemu: Fix compilation

	Remove realmode.S from coreboot and qemu.
	It's not used there.

	Remove obsolete ADDR32 and DATA32 checks.

	i386: Remove needless ADDR32 prefixes when address is known and fixed.
	Shaves off 6 bytes in lzma_decompress.img.

	i386-pc/boot: Explicitly mark kernel_address[_high] as local.
	Otherwise apple asm might try to make accesses relocatable.

	Change dot assignmnet to more portable .org.
	Binary is unchanged (verified)

	i386: Move from explicit ADDR32/DATA32 prefixes to instruction suffixes.
	Is more portable.
	Binary is unchanged (verified).

	Test which flags make our asm compile.
	Previously we relied on assumption that clang always needs -no-integrated-as
	but it's not always true.

	INSTALL: clarify that clang support is experimental

	zfs/mzap_lookup: Fix argument types

	wildcard: Mark unused argument as such.

	ofdisk: Exclude floppies from scanning.
	It causes similar hang as CD on at least the qemu.

	configure: Add -msoft-float to CCASFLAGS
	Otherwise mismatch between API flags triggers linker failure

	mips/startup_raw: Use more portable .asciz

	Provide __aeabi_mem{cpy,set}
	Fixes ARM compilation

	div_test: Don't try to divide by zero

	INSTALL: Fix names of host flags to match actual behaviour

	Strip .MIPS.abiflags which causes compile failure

2015-02-20  Vladimir Serbinenko  <phcoder@gmail.com>

	configure: Move adding of include options to the very end to avoid subshell.

	configure: Add missing comma.

2015-02-16  Vladimir Serbinenko  <phcoder@gmail.com>

	ext2: Ignore INCOMPAT_MMP.
	It's not really incompatible as long as driver never writes to FS.

	ext2: Support META_BG.
	This fixes bug that system would become unbootable after ext*
	online resize if no resize_inode was created at ext* format time.

2015-02-16  Andrei Borzenkov  <arvidjaar@gmail.com>

	tests: remove hardcoded paths from syslinux_test
	abs_top_srcdir appeared in Autoconf 2.52f. Minimal grub requirement
	is 2.60 so we should be good here.

	build-sys: add syslinux test files to tarball

2015-02-16  Vladimir Serbinenko  <phcoder@gmail.com>

	Add test for syslinux converter

2015-02-16  Vladimir Serbinenko  <phcoder@gmail.com>

	Don't remove initrd= parameter.
	Based on simplified patch by Lunar.

	Reported by: Lunar

2015-02-16  Vladimir Serbinenko  <phcoder@gmail.com>

	syslinux_parse: Always output comments even if no entries are found.

2015-02-15  Andrei Borzenkov  <arvidjaar@gmail.com>

	diskfilter_make_raid: more memory leaks in failure path

2015-02-14  Vladimir Serbinenko  <phcoder@gmail.com>

	disk/lvm: Use zalloc to ensure that segments are initialised to sane value.
	Reported by: EmanueL Czirai.

2015-02-14  Daniel Kiper  <daniel.kiper@oracle.com>

	multiboot2: Fix information request tag size calculation

2015-02-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	diskfilter: fix double free of lv names for mdraid
	Avoid micro-optimization in grub_diskfilter_make_raid and make sure
	name and fullname are independent strings. This avoids need to special
	case it everywhere else.

	Also fix memory leak in failure case in grub_diskfilter_make_raid.

	Closes: 41582

2015-02-14  Andrei Borzenkov  <arvidjaar@gmail.com>

	diskfilter: fix crash in validate_lv for mdraid arrays
	Commit 750f4bacd3262376ced3f837d8dc78f834ca233a put LV validation before
	actual vg assignment. Make grub_diskfilter_make_raid to assign ->vg as
	happens in other cases for consistency. Also clean up redundant code and add
	explicit NULL lv->vg check in validate_lv.

	Also fix segment validation in validate_lv; it became obvious when crash
	was fixed.

	Closes: 44199

2015-02-12  Jiri Slaby  <jslaby@suse.cz>

	util: mkimage, fix gcc5 build failure
	gcc5 reports:
	../util/mkimage.c: In function 'grub_install_get_image_target':
	../util/mkimage.c:954:5: error: loop exit may only be reached after undefined behavior [-Werror=aggressive-loop-optimizations]
	     && j < ARRAY_SIZE (image_targets[i].names); j++)
	     ^
	../util/mkimage.c:953:39: note: possible undefined statement is here
	      for (j = 0; image_targets[i].names[j]
	                                        ^

	Well, let's move the index 'j' test before accesing the array to:
	1) make the loop obvious
	2) make gcc happy

2015-02-03  Leif Lindholm  <leif.lindholm@linaro.org>

	arm: implement additional relocations generated by gcc 4.9 at -O3
	GCC 4.9 also generates R_ARM_THM_MOVW_ABS_NC and R_ARM_THM_MOVT_ABS,
	as an alternative to ABS32.

2015-01-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	setup: fix blocklist size calculation
	Found by: Coverity scan.

	grub-fstest: fix descriptor leak
	Found by: Coverity scan.

2015-01-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	net/pxe: fix error condition
	Test return value of grub_netbuff_reserve(), buf itself cannot be
	NULL here.

	Found by: Coverity scan.

2015-01-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	grub-mkimage: fix potential NULL pointer dereference
	Move fatal check whether symtab_section is NULL before first reference.

	Found by: Coverity scan.

2015-01-30  Andrei Borzenkov  <arvidjaar@gmail.com>

	net/ip: check result of grub_netbuff_push
	Found by: Coverity scan.

	tests: add test command file tests
	This requires access to files in both host and grub image, so
	implementing as separate test unit instead of script test was
	more easy.

	test: consistently use TMPDIR and same name pattern for temp files

	test: fix previous commit - we need to return from subexpression
	( ... ) was processed recursively, we need to return from it. Revert
	this change.

	test: do not stop after first file test or closing bracket
	Closes: 44115

2015-01-28  Leif Lindholm  <leif.lindholm@linaro.org>

	configure.ac: don't use -msoft-float for arm64
	aarch64 toolchains do not support the -msoft-float option added by
	commit 3661261f. Insted, for arm64 use -march=armv8-a+nofp+nosimd.

	Reported-by: Ryan Harkin <ryan.harkin@linaro.org>

2015-01-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	script/execute.c: fix memory leak.
	Make sure to continue loop over array after failure to free
	allocated strings.

	Found by: Coverity scan.

2015-01-28  Andrei Borzenkov  <arvidjaar@gmail.com>

	syslinux_parse: fix memory leak.
	Found by: Coverity scan.

2015-01-27  Andrei Borzenkov  <arvidjaar@gmail.com>

	Change quotes to match overall style in NEWS

	loader/xnu: fix memory leak.
	Foound by: Coverity scan.

	util/grub-probe: fix memory leaks.
	Found by: Coverity scan.

	fs/hfsplus: fix memory leak.
	Found by: Coverity scan.

	fs/zfs/zfscrypt.c: fix indentation.

	fs/zfs/zfscrypt.c: fix memory leaks.
	Found by: Coverity scan.

	commands/parttool: fix memory leak.
	Found by: Coverity scan.

	fs/zfs/zfs.c: fix memory leak.
	Found by: Coverity scan.

	linux/ofpath: fix descriptor leak
	Found by: Coverity scan

	linux/hostdisk: use strncpy instead of strlcpy
	strlcpy is not available on Linux as part of standard libraries.
	It probably is not worth extra configure checks espicially as we
	need to handle missing function anyway.

2015-01-27  Vladimir Serbinenko  <phcoder@gmail.com>

	Document intentional fallthroughs.
	Found by: Coverity scan.

	linux/ofpath: Fix error handling.
	Found by: Coverity Scan.

	linux/hostdisk: Limit strcpy size to buffer size.
	Found by: Coverity scan.

	fs/zfscrypt: Add missing explicit cast.
	Found by: Coverity scan.

	fs/zfs: Fix error handling.
	Found by: Coverity Scan.

2015-01-27  Vladimir Serbinenko  <phcoder@gmail.com>

	fs/{cbfs,cpio}: Remove useless check if mode is NULL.
	Callers already ensure that it's not null.

	Found by: Coverity Scan.

2015-01-27  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/acpi: Use ALIGN_UP rather than manual expression.
	Improves readability and hopefully automatic scanning.

	Found by: Coverity Scan.

2015-01-26  Andrei Borzenkov  <arvidjaar@gmail.com>

	util/setup: fix memory leak.
	Found by: Coverity scan.

	util/mkimage: fix memory leaks.
	Found by: Coverity scan.

	util/grub-mount: fix descriptor leak.
	Found by: Coverity scan.

	util/grub-mkstandalone: fix memory leak.
	Found by: Coverity scan.

	util/grub-install: rearrange code to avoid memory leak.
	Found by: Coverity scan.

	linux/getroot: fix memory leak.
	Found by: Coverity scan.

	util/install: fix memory leak.
	Found by: Coverity scan.

	util/setup: fix memory leak.
	Found by: Coverity scan.

	linux/ofpath: fix various memory leaks.
	Found by: Coverity scan.

	linux/getroot: fix descriptor leak.
	Found by: Coverity scan.

2015-01-26  Vladimir Serbinenko  <phcoder@gmail.com>

	util/misc.c: Check ftello return value.
	Found by: Coverity scan.

	grub-macbless: Fix resource leak.
	Found by: Coverity scan.

	grub-install: Fix memory leak.
	Found by: Coverity scan.

	grub-install-common: Fix sizeof usage.
	Found by: Coverity scan.

	util/getroot: Add missing grub_disk_close.
	Found by: Coverity scan.

	vbe: Fix incorrect register usage.
	Found by: Coverity scan.

	unix/password: Fix file descriptor leak.
	Found by: Coverity scan.

	linux/getroot: Fix error handling.
	Found by: Coverity scan.

	linux/blocklist: Fix memory leak.
	Found by: Coverity scan.

	devmapper/getroot: Fix memory leak.
	Found by: Coverity scan.

	normal/misc: Close device on all pathes.
	Found by: Coverity scan.

	normal/main: Fix error handling.
	Found by: Coverity scan.

	xnu: Add missing error check.
	Found by: Coveriy scan.

	plan9: Add missing grub_device_close.
	Found by: Coverity scan.

	multiboot: Simplify to avoid confusing assignment.
	Found by: Coverity scan.

	bsd: Add missing null-pointer check.
	Found by: Coverity scan.

	lib/syslinux_parse: Add missing error check.
	Found by: Coverity scan.

	lib/syslinux_parse: Fix memory leak.
	Found by: Coveriy scan.

	lib/syslinux_parse: Add missing alloc check.
	Found by: Coverity scan.

	i386/pc/mmap: Fix memset size.
	Found by: Coverity scan.

	gfxmenu/theme_loader: Add missing allos error check.
	Found by: Coverity scan.

	gfxmenu/icon_manager: Fix null pointer dereference.
	Found by: Coverity scan.

	fs/ufs: Add missing error check.
	Found by: Coverity scan.

	configure.ac: Always add -D_FILE_OFFSET_BITS=64.

2015-01-25  Vladimir Serbinenko  <phcoder@gmail.com>

	fs/sfs: Fix error check and add sanity check.
	Found by: Coverity scan.

	fs/reiserfs: Fix sector count overflow.
	Found by: Coverity scan.

	fs/ntfs: Add sizes sanity checks.
	Found by: Coverity scan.

	fs/ntfs: Add missing free.
	Found by: Coverity scan.

2015-01-25  Vladimir Serbinenko  <phcoder@gmail.com>

	fs/minix: Fix sector promotion to 64-bit.
	While on it make GRUB_MINIX_ZONE2SECT into function.

	Found by: Coverity scan

2015-01-25  Vladimir Serbinenko  <phcoder@gmail.com>

	grub_iso9660_read: Explicitly check read_node return value.
	Not really needed as grub_errno is already checked but is nicer.

	Found by: Coverity scan.

2015-01-25  Andrei Borzenkov  <arvidjaar@gmail.com>

	commands/fileXX: Fix remaining memory leak.
	Found by: Coverity Scan.

2015-01-25  Vladimir Serbinenko  <phcoder@gmail.com>

	fs/hfs: Add pointer sanity checks.
	Found by: Coverity scan.

	fs/hfs/hfs_open: Check that mount succeeded.
	Found by: Coverity scan.

	fs/fat: Fix codepath to properly free on error.
	Found by: Coverity scan.

	fs/cpio_common: Add a sanity check on namesize.
	Found by: Coverity scan.

	fs/cbfs: Add missing free.
	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	font: Add missing free.
	Found by: Coverity Scan.

	biosdisk: Add missing cast.
	Found by: Coverity scan.

	disk/geli: Add missing free.
	Found by: Coverity scan.

	disk/geli: Add missing seek success check.
	Found by: Coverity scan.

	disk/diskfilter: Add missing lv presence check.
	Found by: Coverity scan.

	disk/cryptodisk: Add missing error check.
	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	disk/ahci: Fix device_map_range argument.
	Argument is not used on x86, hence it's gone unnoticed.

	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	disk/AFsplitter: check argument validity before doing any allocs.
	This avoids possible memory leaks.

	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/wildcard: Add missing free.
	Found by: Coverity scan.

	commands/verify: Fix sha1 context zeroing-out.
	Current code doesn't zero-out context completely. It's a minor issue
	really as sha1 init already takes care of initing the context.

	commands/tr: Simplify and fix missing parameter test.
	Found by: Coverity scan

	commands/syslinux: Add missing free.
	Found by: Coverity scan.

	commands/parttool: Add missing device close.
	Found by: Coverity scan.

	commands/nativedisk: Add missing device_close.
	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/macbless: Handle device opening errors correctly.
	Wrong variable was checked for errors.

	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/macbless: Fix potential overflow.
	Is a minor concern as no such FS would be created under normal circumstances
	and failure was benign.

	Found by: Coverity scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/macbless: Remove incorrect grub_free.
	Found by: Coverity Scan

	commands/legacycfg: Fix resource leaks.

	zfs: Fix disk-matching logic.
	Reported by: Tim Chase <dweeezil>

	commands/hdparm: Add missing grub_disk_close.
	Found by: Coverity scan.

	gptsync: Add missing device_close.
	Found by: Coverity scan

	commands/fileXX: Fix memory leak.
	Found by: Coverity Scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/file: Change the confusing loop stop condition.
	Old condition was used to zero-out header variable on exit of the loop.
	This is correct but confusing. Replace with in-loop logic.

	Found by: Coverity Scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	commands/acpi: Use ALIGN_UP rather than manual expression.
	Improves readability and hopefully automatic scanning.

	Found by: Coverity Scan.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	uhci: Fix null pointer dereference.
	Found by: Coverity scan.

	Always add -msoft-float to avoid compiler generating float arithmetics.

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	Generate empty ChangeLog if no .git is available.
	When making dist from a git snapshot without repo available make dist would
	fail to find ChangeLog. Generate empty ChangeLog if no ChangeLog is already
	present and repo is not available.

	Reported by: Andrei Borzenkov <arvidjaar@gmail.com>

2015-01-24  Vladimir Serbinenko  <phcoder@gmail.com>

	Makefile.am: Fix Changelog cutoff address.
	gitlog-to-changelog Doesn't generate entries for cutoff day, only
	for days after the cutoff date, adjust by one to compensate.

	efidisk: Return the determined root disk even if partition is unknown.

	util/grub-mkrescue.c: Always include part_msdos and part_gpt on EFI.
	When booted from stick, EFI would use GPT partition and our root
	device detection algortihm depends on GRUB's ability to see the same
	partitions. Hence include msdos and gpt partmap modules on EFI even when
	they're not needed to access root filesystem.

	conf/Makefile.common: Remove unused {LD,C}FLAGS_CPU.

	Autogenerate ChangeLog from git changelog.
	Old ChangeLog is moved to ChangeLog-2015. For all changes starting from
	this one ChangeLog will be generated from gitlog only on explicit make
	invocation and make dist.

2015-01-23  Vladimir Serbinenko  <phcoder@gmail.com>

		* tests/file_filter/file: Really add missing file.

2015-01-23  Andrei Borzenkov  <arvidjaar@gmail.com>

	Mention platform "none" in NEWS

2015-01-23  Andrey Borzenkov  <arvidjaar@gmail.com>

	accept also hdX as alias to native Xen disk name
	To be compatible with legacy pv-grub, sort disks by increasing order of handle
	value. This allows reusing legacy pv-grub menu.lst which is using hdX names.

	Suggested-By: Michael Chang <mchang@suse.com>
	Closes: 44026